diff --git a/.gitignore b/.gitignore index 6931803..d8ea95a 100644 --- a/.gitignore +++ b/.gitignore @@ -19,7 +19,7 @@ latest_proof.json # Env .env -# zkMIPS ELF files +# Ziren ELF files elf program.bin stdin.bin diff --git a/Cargo.lock b/Cargo.lock index b908f74..d42f399 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -34,9 +34,9 @@ dependencies = [ [[package]] name = "adler2" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" +checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" [[package]] name = "aes" @@ -78,13 +78,13 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy-chains" -version = "0.2.0" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7734aecfc58a597dde036e4c5cace2ae43e2f8bf3d406b022a1ef34da178dd49" +checksum = "5674914c2cfdb866c21cb0c09d82374ee39a1395cf512e7515f4c014083b3fff" dependencies = [ "alloy-primitives", "alloy-rlp", - "num_enum 0.7.3", + "num_enum 0.7.4", "serde", "strum 0.27.1", ] @@ -95,10 +95,10 @@ version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2179ba839ac532f50279f5da2a6c5047f791f03f6f808b4dfab11327b97902f" dependencies = [ - "alloy-eips", + "alloy-eips 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-primitives", "alloy-rlp", - "alloy-serde", + "alloy-serde 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-trie", "auto_impl", "c-kzg", @@ -112,17 +112,53 @@ dependencies = [ "thiserror 2.0.12", ] +[[package]] +name = "alloy-consensus" +version = "0.14.0" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" +dependencies = [ + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-primitives", + "alloy-rlp", + "alloy-serde 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-trie", + "auto_impl", + "bytes", + "c-kzg", + "derive_more 2.0.1", + "either", + "k256", + "once_cell", + "rand 0.8.5", + "serde", + "serde_with", + "thiserror 2.0.12", +] + [[package]] name = "alloy-consensus-any" version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aec6f67bdc62aa277e0ec13c1b1fb396c8a62b65c8e9bd8c1d3583cc6d1a8dd3" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-eips 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-primitives", + "alloy-rlp", + "alloy-serde 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", +] + +[[package]] +name = "alloy-consensus-any" +version = "0.14.0" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" +dependencies = [ + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-rlp", - "alloy-serde", + "alloy-serde 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "serde", ] @@ -152,9 +188,9 @@ dependencies = [ [[package]] name = "alloy-eip7702" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "804cefe429015b4244966c006d25bda5545fa9db5990e9c9079faf255052f50a" +checksum = "9d4769c6ffddca380b0070d71c8b7f30bed375543fe76bb2f74ec0acf4b7cd16" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -175,7 +211,26 @@ dependencies = [ "alloy-eip7702", "alloy-primitives", "alloy-rlp", - "alloy-serde", + "alloy-serde 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "auto_impl", + "c-kzg", + "derive_more 2.0.1", + "either", + "serde", + "sha2", +] + +[[package]] +name = "alloy-eips" +version = "0.14.0" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" +dependencies = [ + "alloy-eip2124", + "alloy-eip2930", + "alloy-eip7702", + "alloy-primitives", + "alloy-rlp", + "alloy-serde 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "auto_impl", "c-kzg", "derive_more 2.0.1", @@ -187,10 +242,10 @@ dependencies = [ [[package]] name = "alloy-evm" version = "0.4.0" -source = "git+https://github.com/zkMIPS-patches/evm?branch=patch-0.4.0#389ca65d297f9f23822b06e93668f0962e7497f5" +source = "git+https://github.com/ziren-patches/evm?branch=patch-0.4.0-goat#904a73c7546ceb8c08e3c9678747dff267fbc10b" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-hardforks", "alloy-primitives", "alloy-sol-types", @@ -205,21 +260,20 @@ dependencies = [ [[package]] name = "alloy-genesis" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dfec8348d97bd624901c6a4b22bb4c24df8a3128fc3d5e42d24f7b79dfa8588" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ - "alloy-eips", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", - "alloy-serde", + "alloy-serde 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-trie", "serde", ] [[package]] name = "alloy-hardforks" -version = "0.2.0" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7d3b2243e2adfaea41da41982f91ecab8083fa51b240d0427955d709f65b1b4" +checksum = "4ce138b29a2f8e7ed97c064af8359dfa6559c12cba5e821ae4eb93081a56557e" dependencies = [ "alloy-chains", "alloy-eip2124", @@ -230,9 +284,9 @@ dependencies = [ [[package]] name = "alloy-json-abi" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0068ae277f5ee3153a95eaea8ff10e188ed8ccde9b7f9926305415a2c0ab2442" +checksum = "15516116086325c157c18261d768a20677f0f699348000ed391d4ad0dcb82530" dependencies = [ "alloy-primitives", "alloy-sol-type-parser", @@ -254,22 +308,60 @@ dependencies = [ "tracing", ] +[[package]] +name = "alloy-json-rpc" +version = "0.14.0" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" +dependencies = [ + "alloy-primitives", + "alloy-sol-types", + "serde", + "serde_json", + "thiserror 2.0.12", + "tracing", +] + [[package]] name = "alloy-network" version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0be3aa020a6d3aa7601185b4c1a7d6f3a5228cb5424352db63064b29a455c891" dependencies = [ - "alloy-consensus", - "alloy-consensus-any", - "alloy-eips", - "alloy-json-rpc", - "alloy-network-primitives", + "alloy-consensus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-consensus-any 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-eips 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-json-rpc 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-network-primitives 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-primitives", - "alloy-rpc-types-any", - "alloy-rpc-types-eth", - "alloy-serde", - "alloy-signer", + "alloy-rpc-types-any 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-rpc-types-eth 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-serde 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-signer 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-sol-types", + "async-trait", + "auto_impl", + "derive_more 2.0.1", + "futures-utils-wasm", + "serde", + "serde_json", + "thiserror 2.0.12", +] + +[[package]] +name = "alloy-network" +version = "0.14.0" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" +dependencies = [ + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-consensus-any 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-json-rpc 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-network-primitives 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-primitives", + "alloy-rpc-types-any 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-rpc-types-eth 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-serde 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-signer 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-sol-types", "async-trait", "auto_impl", @@ -286,20 +378,32 @@ version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "498f2ee2eef38a6db0fc810c7bf7daebdf5f2fa8d04adb8bd53e54e91ddbdea3" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-eips 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-primitives", - "alloy-serde", + "alloy-serde 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", +] + +[[package]] +name = "alloy-network-primitives" +version = "0.14.0" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" +dependencies = [ + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-primitives", + "alloy-serde 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "serde", ] [[package]] name = "alloy-op-evm" version = "0.4.0" -source = "git+https://github.com/zkMIPS-patches/evm?branch=patch-0.4.0#389ca65d297f9f23822b06e93668f0962e7497f5" +source = "git+https://github.com/ziren-patches/evm?branch=patch-0.4.0-goat#904a73c7546ceb8c08e3c9678747dff267fbc10b" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-evm", "alloy-op-hardforks", "alloy-primitives", @@ -311,18 +415,20 @@ dependencies = [ [[package]] name = "alloy-op-hardforks" -version = "0.2.0" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04a45f2af91a348e5d22dbb3589d821d2e83d2e65b54c14c3f9e8e9c6903fc09" +checksum = "4a9a510692bef4871797062ca09ec7873c45dc68c7f3f72291165320f53606a3" dependencies = [ + "alloy-chains", "alloy-hardforks", "auto_impl", ] [[package]] name = "alloy-primitives" -version = "1.1.0" -source = "git+https://github.com/zkMIPS-patches/core.git?branch=patch-alloy-primitives-1.1.0#b49b22a5dee69f8d032a6b61984855bc41af7a81" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6177ed26655d4e84e00b65cb494d4e0b8830e7cae7ef5d63087d445a2600fb55" dependencies = [ "alloy-rlp", "bytes", @@ -330,8 +436,8 @@ dependencies = [ "const-hex", "derive_more 2.0.1", "foldhash", - "hashbrown 0.15.3", - "indexmap 2.9.0", + "hashbrown 0.15.4", + "indexmap 2.10.0", "itoa", "k256", "keccak-asm", @@ -343,26 +449,24 @@ dependencies = [ "serde", "sha3", "tiny-keccak", - "zkm-zkvm", ] [[package]] name = "alloy-provider" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6ba76d476f475668925f858cc4db51781f12abdaa4e0274eb57a09f574e869" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-chains", - "alloy-consensus", - "alloy-eips", - "alloy-json-rpc", - "alloy-network", - "alloy-network-primitives", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-json-rpc 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-network 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-network-primitives 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-pubsub", "alloy-rpc-client", - "alloy-rpc-types-eth", - "alloy-signer", + "alloy-rpc-types-eth 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-signer 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-sol-types", "alloy-transport", "alloy-transport-http", @@ -375,9 +479,9 @@ dependencies = [ "futures", "futures-utils-wasm", "lru 0.13.0", - "parking_lot 0.12.3", + "parking_lot 0.12.4", "pin-project", - "reqwest 0.12.15", + "reqwest 0.12.22", "serde", "serde_json", "thiserror 2.0.12", @@ -390,15 +494,14 @@ dependencies = [ [[package]] name = "alloy-pubsub" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04135d2fd7fa1fba3afe9f79ec2967259dbc0948e02fa0cd0e33a4a812e2cb0a" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ - "alloy-json-rpc", + "alloy-json-rpc 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-transport", "bimap", "futures", - "parking_lot 0.12.3", + "parking_lot 0.12.4", "serde", "serde_json", "tokio", @@ -410,9 +513,9 @@ dependencies = [ [[package]] name = "alloy-rlp" -version = "0.3.11" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6c1d995bff8d011f7cd6c81820d51825e6e06d6db73914c1630ecf544d83d6" +checksum = "5f70d83b765fdc080dbcd4f4db70d8d23fe4761f2f02ebfa9146b833900634b4" dependencies = [ "alloy-rlp-derive", "arrayvec", @@ -421,22 +524,21 @@ dependencies = [ [[package]] name = "alloy-rlp-derive" -version = "0.3.11" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a40e1ef334153322fd878d07e86af7a529bcb86b2439525920a88eba87bcf943" +checksum = "64b728d511962dda67c1bc7ea7c03736ec275ed2cf4c35d9585298ac9ccf3b73" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "alloy-rpc-client" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d6a6985b48a536b47aa0aece56e6a0f49240ce5d33a7f0c94f1b312eda79aa1" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ - "alloy-json-rpc", + "alloy-json-rpc 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-pubsub", "alloy-transport", @@ -445,7 +547,7 @@ dependencies = [ "async-stream", "futures", "pin-project", - "reqwest 0.12.15", + "reqwest 0.12.22", "serde", "serde_json", "tokio", @@ -460,12 +562,11 @@ dependencies = [ [[package]] name = "alloy-rpc-types" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bf27873220877cb15125eb6eec2f86c6e9b41473aca85844bd3d9d755bfc0a0" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-primitives", - "alloy-rpc-types-eth", - "alloy-serde", + "alloy-rpc-types-eth 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-serde 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "serde", ] @@ -475,19 +576,28 @@ version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d1a40595b927dfb07218459037837dbc8de8500a26024bb6ff0548dd2ccc13e0" dependencies = [ - "alloy-consensus-any", - "alloy-rpc-types-eth", - "alloy-serde", + "alloy-consensus-any 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-rpc-types-eth 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-serde 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "alloy-rpc-types-any" +version = "0.14.0" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" +dependencies = [ + "alloy-consensus-any 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-rpc-types-eth 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-serde 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", ] [[package]] name = "alloy-rpc-types-engine" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4235d79af20fe5583ca26096258fe9307571a345745c433cfd8c91b41aa2611e" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-rlp", "derive_more 2.0.1", @@ -500,13 +610,32 @@ version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2a9f64e0f69cfb6029e2a044519a1bdd44ce9fc334d5315a7b9837f7a6748e5" dependencies = [ - "alloy-consensus", - "alloy-consensus-any", - "alloy-eips", - "alloy-network-primitives", + "alloy-consensus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-consensus-any 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-eips 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-network-primitives 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-primitives", "alloy-rlp", - "alloy-serde", + "alloy-serde 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-sol-types", + "itertools 0.14.0", + "serde", + "serde_json", + "thiserror 2.0.12", +] + +[[package]] +name = "alloy-rpc-types-eth" +version = "0.14.0" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" +dependencies = [ + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-consensus-any 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-network-primitives 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-primitives", + "alloy-rlp", + "alloy-serde 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-sol-types", "itertools 0.14.0", "serde", @@ -525,6 +654,16 @@ dependencies = [ "serde_json", ] +[[package]] +name = "alloy-serde" +version = "0.14.0" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" +dependencies = [ + "alloy-primitives", + "serde", + "serde_json", +] + [[package]] name = "alloy-signer" version = "0.14.0" @@ -540,16 +679,30 @@ dependencies = [ "thiserror 2.0.12", ] +[[package]] +name = "alloy-signer" +version = "0.14.0" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" +dependencies = [ + "alloy-primitives", + "async-trait", + "auto_impl", + "either", + "elliptic-curve", + "k256", + "thiserror 2.0.12", +] + [[package]] name = "alloy-signer-local" version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a00f0f07862bd8f6bc66c953660693c5903062c2c9d308485b2a6eee411089e7" dependencies = [ - "alloy-consensus", - "alloy-network", + "alloy-consensus 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-network 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-primitives", - "alloy-signer", + "alloy-signer 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "async-trait", "k256", "rand 0.8.5", @@ -558,41 +711,41 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d3ef8e0d622453d969ba3cded54cf6800efdc85cb929fe22c5bdf8335666757" +checksum = "a14f21d053aea4c6630687c2f4ad614bed4c81e14737a9b904798b24f30ea849" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "alloy-sol-macro-expander" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0e84bd0693c69a8fbe3ec0008465e029c6293494df7cb07580bf4a33eff52e1" +checksum = "34d99282e7c9ef14eb62727981a985a01869e586d1dec729d3bb33679094c100" dependencies = [ "alloy-sol-macro-input", "const-hex", "heck 0.5.0", - "indexmap 2.9.0", + "indexmap 2.10.0", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3de663412dadf9b64f4f92f507f78deebcc92339d12cf15f88ded65d41c7935" +checksum = "eda029f955b78e493360ee1d7bd11e1ab9f2a220a5715449babc79d6d0a01105" dependencies = [ "const-hex", "dunce", @@ -600,45 +753,43 @@ dependencies = [ "macro-string", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "syn-solidity", ] [[package]] name = "alloy-sol-type-parser" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "251273c5aa1abb590852f795c938730fa641832fc8fa77b5478ed1bf11b6097e" +checksum = "10db1bd7baa35bc8d4a1b07efbf734e73e5ba09f2580fb8cee3483a36087ceb2" dependencies = [ "serde", - "winnow 0.7.10", + "winnow 0.7.11", ] [[package]] name = "alloy-sol-types" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5460a975434ae594fe2b91586253c1beb404353b78f0a55bf124abcd79557b15" +checksum = "58377025a47d8b8426b3e4846a251f2c1991033b27f517aade368146f6ab1dfe" dependencies = [ "alloy-json-abi", "alloy-primitives", "alloy-sol-macro", - "const-hex", "serde", ] [[package]] name = "alloy-transport" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e1f1a55f9ff9a48aa0b4a8c616803754620010fbb266edae2f4548f4304373b" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ - "alloy-json-rpc", + "alloy-json-rpc 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "base64 0.22.1", "derive_more 2.0.1", "futures", "futures-utils-wasm", - "parking_lot 0.12.3", + "parking_lot 0.12.4", "serde", "serde_json", "thiserror 2.0.12", @@ -652,12 +803,11 @@ dependencies = [ [[package]] name = "alloy-transport-http" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "171b3d8824b6697d6c8325373ec410d230b6c59ce552edfbfabe4e7b8a26aac3" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ - "alloy-json-rpc", + "alloy-json-rpc 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-transport", - "reqwest 0.12.15", + "reqwest 0.12.22", "serde_json", "tower 0.5.2", "tracing", @@ -667,14 +817,13 @@ dependencies = [ [[package]] name = "alloy-transport-ws" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdde5b241745076bcbf2fcad818f2c42203bd2c5f4b50ea43b628ccbd2147ad6" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-pubsub", "alloy-transport", "futures", "http 1.3.1", - "rustls 0.23.27", + "rustls 0.23.28", "serde_json", "tokio", "tokio-tungstenite 0.26.2", @@ -724,9 +873,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.18" +version = "0.6.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" +checksum = "301af1932e46185686725e0fad2f8f2aa7da69dd70bf6ecc44d6b703844a3933" dependencies = [ "anstyle", "anstyle-parse", @@ -739,36 +888,36 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.10" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" +checksum = "862ed96ca487e809f1c8e5a8447f6ee2cf102f846893800b20cebdf541fc6bbd" [[package]] name = "anstyle-parse" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" +checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.1.2" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" +checksum = "6c8bdeb6047d8983be085bab0ba1472e6dc604e7041dbf6fcd5e71523014fae9" dependencies = [ "windows-sys 0.59.0", ] [[package]] name = "anstyle-wincon" -version = "3.0.7" +version = "3.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e" +checksum = "403f75924867bb1033c59fbf0797484329750cfbe3c4325cd33127941fabc882" dependencies = [ "anstyle", - "once_cell", + "once_cell_polyfill", "windows-sys 0.59.0", ] @@ -814,7 +963,7 @@ dependencies = [ "ark-std 0.5.0", "educe", "fnv", - "hashbrown 0.15.3", + "hashbrown 0.15.4", "itertools 0.13.0", "num-bigint 0.4.6", "num-integer", @@ -907,7 +1056,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60" dependencies = [ "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -945,7 +1094,7 @@ dependencies = [ "num-traits", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -960,7 +1109,7 @@ dependencies = [ "ark-std 0.5.0", "educe", "fnv", - "hashbrown 0.15.3", + "hashbrown 0.15.4", ] [[package]] @@ -1005,7 +1154,7 @@ checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -1081,7 +1230,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -1092,7 +1241,7 @@ checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -1130,14 +1279,14 @@ checksum = "ffdcb70bdbc4d478427380519163274ac86e52916e10f0a8889adf0f96d3fee7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "autocfg" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" +checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] name = "axum" @@ -1281,9 +1430,9 @@ checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] name = "base64ct" -version = "1.7.3" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89e25b6adfb930f02d1981565a6e5d9c547ac15a96606256d3b59040e5cd4ca3" +checksum = "55248b47b0caf0546f7988906588779981c43bb1bc9d0c44087278f80cdb44ba" [[package]] name = "bech32" @@ -1312,18 +1461,18 @@ version = "0.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", "cexpr", "clang-sys", "itertools 0.13.0", "log", - "prettyplease 0.2.32", + "prettyplease 0.2.35", "proc-macro2", "quote", "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -1380,9 +1529,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.9.0" +version = "2.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" +checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967" dependencies = [ "serde", ] @@ -1445,7 +1594,7 @@ dependencies = [ [[package]] name = "bls12_381" version = "0.8.0" -source = "git+https://github.com/zkMIPS-patches/bls12_381?branch=patch-0.8.0#7027ea471e5b5a01053ceee2d0e076241a241c2e" +source = "git+https://github.com/ziren-patches/bls12_381?branch=patch-0.8.0#6c60e227e78dd331a6052774e7c50d157d5f3965" dependencies = [ "cfg-if", "ff 0.13.1", @@ -1453,14 +1602,14 @@ dependencies = [ "pairing 0.23.0", "rand_core 0.6.4", "subtle", - "zkm-lib", + "zkm-lib 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", ] [[package]] name = "blst" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47c79a94619fade3c0b887670333513a67ac28a6a7e653eb260bf0d4103db38d" +checksum = "4fd49896f12ac9b6dcd7a5998466b9b58263a695a3dd1ecc1aaca2e12a90b080" dependencies = [ "cc", "glob", @@ -1480,9 +1629,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.17.0" +version = "3.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" +checksum = "46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43" [[package]] name = "byte-slice-cast" @@ -1492,9 +1641,9 @@ checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" [[package]] name = "bytemuck" -version = "1.23.0" +version = "1.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9134a6ef01ce4b366b50689c94f82c14bc72bc5d0386829828a2e2752ef7958c" +checksum = "5c76a5792e44e4abe34d3abf15636779261d45a7450612059293d1d2cfc63422" [[package]] name = "byteorder" @@ -1563,9 +1712,9 @@ dependencies = [ [[package]] name = "camino" -version = "1.1.9" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b96ec4966b5813e2c0507c1f86115c8c5abaadc3980879c3424042a02fd1ad3" +checksum = "0da45bc31171d8d6960122e222a67740df867c1dd53b4d51caa297084c185cab" dependencies = [ "serde", ] @@ -1595,9 +1744,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.22" +version = "1.2.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32db95edf998450acc7881c932f94cd9b05c87b4b2599e8bab064753da4acfd1" +checksum = "5c1599538de2394445747c8cf7935946e3cc27e9625f889d979bfb2aaf569362" dependencies = [ "jobserver", "libc", @@ -1615,9 +1764,9 @@ dependencies = [ [[package]] name = "cfg-if" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +checksum = "9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268" [[package]] name = "cfg_aliases" @@ -1663,9 +1812,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.38" +version = "4.5.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed93b9805f8ba930df42c2590f05453d5ec36cbb85d018868a5b24d31f6ac000" +checksum = "40b6887a1d8685cebccf115538db5c0efe625ccac9696ad45c409d96566e910f" dependencies = [ "clap_builder", "clap_derive", @@ -1673,9 +1822,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.38" +version = "4.5.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "379026ff283facf611b0ea629334361c4211d1b12ee01024eec1591133b04120" +checksum = "e0c66c08ce9f0c698cbce5c0279d0bb6ac936d8674174fe48f736533b964f59e" dependencies = [ "anstream", "anstyle", @@ -1685,21 +1834,21 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.32" +version = "4.5.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09176aae279615badda0765c0c0b3f6ed53f4709118af73cf4655d85d1530cd7" +checksum = "d2c7947ae4cc3d851207c1adb5b5e260ff0cca11446b1d6d1423788e442257ce" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "clap_lex" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" +checksum = "b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675" [[package]] name = "codepage" @@ -1764,9 +1913,9 @@ dependencies = [ [[package]] name = "colorchoice" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" +checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" [[package]] name = "console" @@ -1783,9 +1932,9 @@ dependencies = [ [[package]] name = "const-hex" -version = "1.14.0" +version = "1.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b0485bab839b018a8f1723fc5391819fea5f8f0f32288ef8a735fd096b6160c" +checksum = "83e22e0ed40b96a48d3db274f72fd365bd78f67af39b6bbd47e8a15e1c6207ff" dependencies = [ "cfg-if", "cpufeatures", @@ -1932,9 +2081,9 @@ checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" [[package]] name = "crunchy" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" +checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" [[package]] name = "crypto-bigint" @@ -2011,7 +2160,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2035,7 +2184,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2046,7 +2195,7 @@ checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ "darling_core", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2060,7 +2209,7 @@ dependencies = [ "hashbrown 0.14.5", "lock_api", "once_cell", - "parking_lot_core 0.9.10", + "parking_lot_core 0.9.11", ] [[package]] @@ -2181,13 +2330,13 @@ dependencies = [ [[package]] name = "derive-where" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e73f2692d4bd3cac41dca28934a39894200c9fabf49586d77d0e5954af1d7902" +checksum = "510c292c8cf384b1a340b816a9a6cf2599eb8f566a44949024af88418000c50b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2216,7 +2365,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2228,7 +2377,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "unicode-xid", ] @@ -2303,7 +2452,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2345,17 +2494,30 @@ checksum = "1c7a8fb8a9fbf66c1f703fe16184d10ca0ee9d23be5b4436400408ba54a95005" [[package]] name = "ecdsa" version = "0.16.9" -source = "git+https://github.com/zkMIPS-patches/signatures.git?branch=patch-ecdsa-0.16.9#fed1f3bbd4207450cebcc6d601c226f2cccccb3b" +source = "git+https://github.com/ziren-patches/signatures.git?branch=patch-ecdsa-0.16.9#fed1f3bbd4207450cebcc6d601c226f2cccccb3b" dependencies = [ "der", "digest 0.10.7", "elliptic-curve", - "rfc6979", + "rfc6979 0.4.0 (git+https://github.com/ziren-patches/signatures.git?branch=patch-ecdsa-0.16.9)", "serdect", "signature", "spki", ] +[[package]] +name = "ecdsa" +version = "0.16.9" +source = "git+https://github.com/zkMIPS-patches/signatures.git?branch=patch-ecdsa-0.16.9#fed1f3bbd4207450cebcc6d601c226f2cccccb3b" +dependencies = [ + "der", + "digest 0.10.7", + "elliptic-curve", + "rfc6979 0.4.0 (git+https://github.com/zkMIPS-patches/signatures.git?branch=patch-ecdsa-0.16.9)", + "signature", + "spki", +] + [[package]] name = "educe" version = "0.6.0" @@ -2365,7 +2527,7 @@ dependencies = [ "enum-ordinalize", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2456,7 +2618,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2477,7 +2639,7 @@ checksum = "f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2497,7 +2659,7 @@ checksum = "0d28318a75d4aead5c4db25382e8ef717932d0346600cacae6357eb5941bc5ff" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2508,7 +2670,7 @@ checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2542,12 +2704,12 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" -version = "0.3.11" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "976dd42dc7e85965fe702eb8164f21f450704bdde31faefd6471dba214cb594e" +checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad" dependencies = [ "libc", - "windows-sys 0.59.0", + "windows-sys 0.60.2", ] [[package]] @@ -2590,7 +2752,7 @@ dependencies = [ "host-executor", "primitives", "provider", - "reqwest 0.12.15", + "reqwest 0.12.22", "reqwest-middleware", "reqwest-retry", "serde", @@ -2711,14 +2873,14 @@ dependencies = [ "ethers-core", "ethers-etherscan", "eyre", - "prettyplease 0.2.32", + "prettyplease 0.2.35", "proc-macro2", "quote", "regex", "reqwest 0.11.27", "serde", "serde_json", - "syn 2.0.101", + "syn 2.0.104", "toml", "walkdir", ] @@ -2736,7 +2898,7 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2754,7 +2916,7 @@ dependencies = [ "ethabi", "generic-array 0.14.7", "k256", - "num_enum 0.7.3", + "num_enum 0.7.4", "once_cell", "open-fastrlp", "rand 0.8.5", @@ -2762,7 +2924,7 @@ dependencies = [ "serde", "serde_json", "strum 0.26.3", - "syn 2.0.101", + "syn 2.0.104", "tempfile", "thiserror 1.0.69", "tiny-keccak", @@ -3003,9 +3165,9 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" [[package]] name = "flate2" -version = "1.1.1" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ced92e76e966ca2fd84c8f7aa01a4aea65b0eb6648d72f7c8f3e2764a67fece" +checksum = "4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d" dependencies = [ "crc32fast", "miniz_oxide", @@ -3129,7 +3291,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -3223,7 +3385,7 @@ dependencies = [ "cfg-if", "js-sys", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi 0.11.1+wasi-snapshot-preview1", "wasm-bindgen", ] @@ -3253,7 +3415,7 @@ version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b903b73e45dc0c6c596f2d37eccece7c1c8bb6e4407b001096387c63d0d93724" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", "libc", "libgit2-sys", "log", @@ -3305,9 +3467,9 @@ dependencies = [ name = "guest-executor" version = "0.1.0" dependencies = [ - "alloy-consensus", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-evm", - "alloy-network", + "alloy-network 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-rpc-types", "bincode", @@ -3350,7 +3512,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.9.0", + "indexmap 2.10.0", "slab", "tokio", "tokio-util", @@ -3359,9 +3521,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.10" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9421a676d1b147b16b82c9225157dc629087ef8ec4d5e2960f9437a90dac0a5" +checksum = "17da50a276f1e01e0ba6c029e47b7100754904ee8a278f886546e98575380785" dependencies = [ "atomic-waker", "bytes", @@ -3369,7 +3531,7 @@ dependencies = [ "futures-core", "futures-sink", "http 1.3.1", - "indexmap 2.9.0", + "indexmap 2.10.0", "slab", "tokio", "tokio-util", @@ -3462,9 +3624,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.3" +version = "0.15.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3" +checksum = "5971ac85611da7067dbfcabef3c70ebb5606018acd9e2a3903a0da507521e0d5" dependencies = [ "allocator-api2", "equivalent", @@ -3495,9 +3657,9 @@ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" [[package]] name = "hermit-abi" -version = "0.3.9" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" +checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" [[package]] name = "hex" @@ -3559,7 +3721,7 @@ dependencies = [ "ipconfig", "lru-cache", "once_cell", - "parking_lot 0.12.3", + "parking_lot 0.12.4", "rand 0.8.5", "resolv-conf", "smallvec", @@ -3600,8 +3762,8 @@ name = "host" version = "0.1.0" dependencies = [ "alloy-chains", - "alloy-consensus", - "alloy-network", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-network 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-provider", "clap", @@ -3628,9 +3790,10 @@ name = "host-executor" version = "0.1.0" dependencies = [ "alloy-chains", - "alloy-consensus", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-evm", - "alloy-network", + "alloy-network 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-provider", "alloy-rpc-types", @@ -3645,7 +3808,7 @@ dependencies = [ "mpt", "op-alloy-network", "primitives", - "reqwest 0.12.15", + "reqwest 0.12.22", "reth-chainspec", "reth-errors", "reth-ethereum-primitives", @@ -3775,7 +3938,7 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "h2 0.4.10", + "h2 0.4.11", "http 1.3.1", "http-body 1.0.1", "httparse", @@ -3803,20 +3966,19 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.27.5" +version = "0.27.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d191583f3da1305256f22463b9bb0471acad48a4e534a5218b9963e9c1f59b2" +checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58" dependencies = [ - "futures-util", "http 1.3.1", "hyper 1.6.0", "hyper-util", - "rustls 0.23.27", + "rustls 0.23.28", "rustls-pki-types", "tokio", "tokio-rustls 0.26.2", "tower-service", - "webpki-roots 0.26.11", + "webpki-roots 1.0.1", ] [[package]] @@ -3849,22 +4011,28 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.11" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "497bbc33a26fdd4af9ed9c70d63f61cf56a938375fbb32df34db9b1cd6d643f2" +checksum = "dc2fdfdbff08affe55bb779f33b053aa1fe5dd5b54c257343c17edfa55711bdb" dependencies = [ + "base64 0.22.1", "bytes", "futures-channel", + "futures-core", "futures-util", "http 1.3.1", "http-body 1.0.1", "hyper 1.6.0", + "ipnet", "libc", + "percent-encoding", "pin-project-lite", "socket2", + "system-configuration 0.6.1", "tokio", "tower-service", "tracing", + "windows-registry", ] [[package]] @@ -3879,7 +4047,7 @@ dependencies = [ "js-sys", "log", "wasm-bindgen", - "windows-core 0.61.0", + "windows-core 0.61.2", ] [[package]] @@ -3940,9 +4108,9 @@ checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3" [[package]] name = "icu_properties" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2549ca8c7241c82f59c80ba2a6f415d931c5b58d24fb8412caa1a1f02c49139a" +checksum = "016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b" dependencies = [ "displaydoc", "icu_collections", @@ -3956,9 +4124,9 @@ dependencies = [ [[package]] name = "icu_properties_data" -version = "2.0.0" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8197e866e47b68f8f7d95249e172903bec06004b18b2937f1095d40a0c57de04" +checksum = "298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632" [[package]] name = "icu_provider" @@ -4039,7 +4207,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -4061,12 +4229,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.9.0" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" +checksum = "fe4cd85333e22411419a0bcae1297d25e58c9443848b11dc6a86fefe8c78a661" dependencies = [ "equivalent", - "hashbrown 0.15.3", + "hashbrown 0.15.4", "serde", ] @@ -4104,6 +4272,17 @@ dependencies = [ "web-sys", ] +[[package]] +name = "io-uring" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b86e202f00093dcba4275d4636b93ef9dd75d025ae560d2521b45ea28ab49013" +dependencies = [ + "bitflags 2.9.1", + "cfg-if", + "libc", +] + [[package]] name = "ipconfig" version = "0.3.2" @@ -4122,6 +4301,16 @@ version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" +[[package]] +name = "iri-string" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbc5ebe9c3a1a7a5127f920a418f7585e9e758e911d0466ed004f393b0e380b2" +dependencies = [ + "memchr", + "serde", +] + [[package]] name = "is_terminal_polyfill" version = "1.70.1" @@ -4172,9 +4361,9 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "jiff" -version = "0.2.13" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f02000660d30638906021176af16b17498bd0d12813dbfe7b276d8bc7f3c0806" +checksum = "be1f93b8b1eb69c77f24bbb0afdf66f54b632ee39af40ca21c4365a1d7347e49" dependencies = [ "jiff-static", "log", @@ -4185,13 +4374,13 @@ dependencies = [ [[package]] name = "jiff-static" -version = "0.2.13" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3c30758ddd7188629c6713fc45d1188af4f44c90582311d0c8d8c9907f60c48" +checksum = "03343451ff899767262ec32146f6d559dd759fdadf42ff0e227c7c48f72594b4" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -4245,17 +4434,17 @@ dependencies = [ [[package]] name = "k256" version = "0.13.4" -source = "git+https://github.com/zkMIPS-patches/elliptic-curves?branch=patch-k256-0.13.4#f46426bf9d29dc1d96cc57d1a6a6f01f7100381b" +source = "git+https://github.com/ziren-patches/elliptic-curves?branch=patch-k256-0.13.4#df8b26f5c314447be7eb192811e41e3704a2a6b7" dependencies = [ "cfg-if", - "ecdsa", + "ecdsa 0.16.9 (git+https://github.com/ziren-patches/signatures.git?branch=patch-ecdsa-0.16.9)", "elliptic-curve", "hex", "once_cell", "serdect", "sha2", "signature", - "zkm-lib", + "zkm-lib 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", ] [[package]] @@ -4280,7 +4469,7 @@ dependencies = [ [[package]] name = "kzg-rs" version = "0.2.6" -source = "git+https://github.com/zkMIPS-patches/kzg-rs?branch=zkMIPS#05eb129bbc2a1b8c78a9d335e92dfeabb6484700" +source = "git+https://github.com/ziren-patches/kzg-rs?branch=ziren#4cd5e3086a49dc1e94ffbd63ee4a7a9b2e342faa" dependencies = [ "bls12_381 0.8.0", "ff 0.13.1", @@ -4331,9 +4520,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.172" +version = "0.2.174" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" +checksum = "1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776" [[package]] name = "libgit2-sys" @@ -4349,12 +4538,12 @@ dependencies = [ [[package]] name = "libloading" -version = "0.8.7" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a793df0d7afeac54f95b471d3af7f0d4fb975699f972341a4b76988d49cdf0c" +checksum = "07033963ba89ebaf1584d767badaa2e8fcec21aedea6b8c0346d487d49c28667" dependencies = [ "cfg-if", - "windows-targets 0.53.0", + "windows-targets 0.53.2", ] [[package]] @@ -4365,11 +4554,11 @@ checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" [[package]] name = "libredox" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" +checksum = "1580801010e535496706ba011c15f8532df6b42297d2e471fec38ceadd8c0638" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", "libc", ] @@ -4414,9 +4603,9 @@ checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" [[package]] name = "lock_api" -version = "0.4.12" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +checksum = "96936507f153605bddfcda068dd804796c84324ed2510809e5b2a624c81da765" dependencies = [ "autocfg", "scopeguard", @@ -4434,7 +4623,7 @@ version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" dependencies = [ - "hashbrown 0.15.3", + "hashbrown 0.15.4", ] [[package]] @@ -4443,7 +4632,7 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "227748d55f2f0ab4735d87fd623798cb6b664512fe979705f829c9f81c934465" dependencies = [ - "hashbrown 0.15.3", + "hashbrown 0.15.4", ] [[package]] @@ -4469,7 +4658,7 @@ checksum = "1b27834086c65ec3f9387b096d66e99f221cf081c2b738042aa252bcd41204e3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -4518,9 +4707,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.7.4" +version = "2.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" [[package]] name = "memuse" @@ -4547,7 +4736,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -4564,22 +4753,22 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.8.8" +version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a" +checksum = "1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316" dependencies = [ "adler2", ] [[package]] name = "mio" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" +checksum = "78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c" dependencies = [ "libc", - "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.52.0", + "wasi 0.11.1+wasi-snapshot-preview1", + "windows-sys 0.59.0", ] [[package]] @@ -4790,9 +4979,9 @@ dependencies = [ [[package]] name = "num_cpus" -version = "1.16.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +checksum = "91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b" dependencies = [ "hermit-abi", "libc", @@ -4809,11 +4998,12 @@ dependencies = [ [[package]] name = "num_enum" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" +checksum = "a973b4e44ce6cad84ce69d797acf9a044532e4184c4f267913d1b546a0727b7a" dependencies = [ - "num_enum_derive 0.7.3", + "num_enum_derive 0.7.4", + "rustversion", ] [[package]] @@ -4830,14 +5020,14 @@ dependencies = [ [[package]] name = "num_enum_derive" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" +checksum = "77e878c846a8abae00dd069496dbe8751b16ac1c3d6bd2a7283a938e8228f90d" dependencies = [ "proc-macro-crate 3.3.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -4899,17 +5089,22 @@ dependencies = [ "portable-atomic", ] +[[package]] +name = "once_cell_polyfill" +version = "1.70.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" + [[package]] name = "op-alloy-consensus" version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a09198717ebb22b201442c12a306a62de4a5d9535993b975c6bc0e5a919e2b1" +source = "git+https://github.com/ziren-patches/op-alloy?branch=patch-0.13.0-goat#2f69f7e6c03e4fee2ae34f254b3f22c9045361df" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-rlp", - "alloy-serde", + "alloy-serde 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "derive_more 2.0.1", "serde", "serde_with", @@ -4919,14 +5114,13 @@ dependencies = [ [[package]] name = "op-alloy-network" version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a244918cb04caafab5d53f1d78ec684295cac83e1966b4ae874220d7f070d6fe" +source = "git+https://github.com/ziren-patches/op-alloy?branch=patch-0.13.0-goat#2f69f7e6c03e4fee2ae34f254b3f22c9045361df" dependencies = [ - "alloy-consensus", - "alloy-network", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-network 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", - "alloy-rpc-types-eth", - "alloy-signer", + "alloy-rpc-types-eth 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-signer 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "op-alloy-consensus", "op-alloy-rpc-types", ] @@ -4934,15 +5128,14 @@ dependencies = [ [[package]] name = "op-alloy-rpc-types" version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f410c4bd213df7c4963828b45a1e201d119b5c223d12468ad8e393e655167eee" +source = "git+https://github.com/ziren-patches/op-alloy?branch=patch-0.13.0-goat#2f69f7e6c03e4fee2ae34f254b3f22c9045361df" dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-network-primitives", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-network-primitives 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", - "alloy-rpc-types-eth", - "alloy-serde", + "alloy-rpc-types-eth 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-serde 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "derive_more 2.0.1", "op-alloy-consensus", "serde", @@ -4952,7 +5145,7 @@ dependencies = [ [[package]] name = "op-revm" version = "3.0.1" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "auto_impl", "once_cell", @@ -4987,11 +5180,11 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.72" +version = "0.10.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fedfea7d58a1f73118430a55da6a286e7b044961736ce96a16a17068ea25e5da" +checksum = "8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", "cfg-if", "foreign-types", "libc", @@ -5008,7 +5201,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -5019,9 +5212,9 @@ checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" [[package]] name = "openssl-sys" -version = "0.9.108" +version = "0.9.109" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e145e1651e858e820e4860f7b9c5e169bc1d8ce1c86043be79fa7b7634821847" +checksum = "90096e2e47630d78b7d1c20952dc621f957103f8bc2c8359ec81290d75238571" dependencies = [ "cc", "libc", @@ -5044,20 +5237,20 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" [[package]] name = "p256" version = "0.13.2" -source = "git+https://github.com/zkMIPS-patches/elliptic-curves?branch=patch-p256-0.13.2#3bf31f9f01f874dee004e162d574e1c04376e7db" +source = "git+https://github.com/ziren-patches/elliptic-curves?branch=patch-p256-0.13.2#26d6bc595c7f685a3c1b2896dbd2d5788d989184" dependencies = [ - "ecdsa", + "ecdsa 0.16.9 (git+https://github.com/zkMIPS-patches/signatures.git?branch=patch-ecdsa-0.16.9)", "elliptic-curve", "hex", "primeorder", "sha2", - "zkm-lib", + "zkm-lib 1.1.0 (git+https://github.com/zkMIPS/zkMIPS)", ] [[package]] name = "p3-air" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "p3-field", "p3-matrix", @@ -5066,7 +5259,7 @@ dependencies = [ [[package]] name = "p3-bn254-fr" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "ff 0.13.1", "halo2curves", @@ -5081,7 +5274,7 @@ dependencies = [ [[package]] name = "p3-challenger" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "p3-field", "p3-maybe-rayon", @@ -5094,7 +5287,7 @@ dependencies = [ [[package]] name = "p3-circle" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-challenger", @@ -5112,7 +5305,7 @@ dependencies = [ [[package]] name = "p3-commit" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-challenger", @@ -5126,7 +5319,7 @@ dependencies = [ [[package]] name = "p3-dft" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-field", @@ -5139,7 +5332,7 @@ dependencies = [ [[package]] name = "p3-field" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "num-bigint 0.4.6", @@ -5156,7 +5349,7 @@ dependencies = [ [[package]] name = "p3-fri" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-challenger", @@ -5175,7 +5368,7 @@ dependencies = [ [[package]] name = "p3-interpolation" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "p3-field", "p3-matrix", @@ -5186,7 +5379,7 @@ dependencies = [ [[package]] name = "p3-keccak" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-field", @@ -5198,7 +5391,7 @@ dependencies = [ [[package]] name = "p3-keccak-air" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "p3-air", "p3-field", @@ -5211,7 +5404,7 @@ dependencies = [ [[package]] name = "p3-koala-bear" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "p3-field", "p3-mds", @@ -5225,7 +5418,7 @@ dependencies = [ [[package]] name = "p3-matrix" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-field", @@ -5240,7 +5433,7 @@ dependencies = [ [[package]] name = "p3-maybe-rayon" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "rayon", ] @@ -5248,7 +5441,7 @@ dependencies = [ [[package]] name = "p3-mds" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-dft", @@ -5262,7 +5455,7 @@ dependencies = [ [[package]] name = "p3-merkle-tree" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-commit", @@ -5279,7 +5472,7 @@ dependencies = [ [[package]] name = "p3-mersenne-31" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "num-bigint 0.4.6", @@ -5298,7 +5491,7 @@ dependencies = [ [[package]] name = "p3-monty-31" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "num-bigint 0.4.6", @@ -5320,7 +5513,7 @@ dependencies = [ [[package]] name = "p3-poseidon2" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "gcd", "p3-field", @@ -5333,7 +5526,7 @@ dependencies = [ [[package]] name = "p3-symmetric" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-field", @@ -5343,7 +5536,7 @@ dependencies = [ [[package]] name = "p3-uni-stark" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-air", @@ -5361,7 +5554,7 @@ dependencies = [ [[package]] name = "p3-util" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "lock_api", "serde", @@ -5387,9 +5580,9 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "3.7.4" +version = "3.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9fde3d0718baf5bc92f577d652001da0f8d54cd03a7974e118d04fc888dc23d" +checksum = "799781ae679d79a948e13d4824a40970bfa500058d245760dd857301059810fa" dependencies = [ "arrayvec", "bitvec", @@ -5403,14 +5596,14 @@ dependencies = [ [[package]] name = "parity-scale-codec-derive" -version = "3.7.4" +version = "3.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581c837bb6b9541ce7faa9377c20616e4fb7650f6b0f68bc93c827ee504fb7b3" +checksum = "34b4653168b563151153c9e4c08ebed57fb8262bebfa79711552fa983c623e7a" dependencies = [ "proc-macro-crate 3.3.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -5426,12 +5619,12 @@ dependencies = [ [[package]] name = "parking_lot" -version = "0.12.3" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" +checksum = "70d58bf43669b5795d1576d0641cfb6fbb2057bf629506267a92807158584a13" dependencies = [ "lock_api", - "parking_lot_core 0.9.10", + "parking_lot_core 0.9.11", ] [[package]] @@ -5450,13 +5643,13 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.10" +version = "0.9.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" +checksum = "bc838d2a56b5b1a6c25f55575dfc605fabb63bb2365f6c2353ef9159aa69e4a5" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.5.12", + "redox_syscall 0.5.13", "smallvec", "windows-targets 0.52.6", ] @@ -5564,9 +5757,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pest" -version = "2.8.0" +version = "2.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "198db74531d58c70a361c42201efde7e2591e976d518caf7662a47dc5720e7b6" +checksum = "1db05f56d34358a8b1066f67cbb203ee3e7ed2ba674a6263a1d5ec6db2204323" dependencies = [ "memchr", "thiserror 2.0.12", @@ -5580,7 +5773,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset", - "indexmap 2.9.0", + "indexmap 2.10.0", ] [[package]] @@ -5624,7 +5817,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -5653,7 +5846,7 @@ checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -5686,9 +5879,9 @@ checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" [[package]] name = "portable-atomic" -version = "1.11.0" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" +checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" [[package]] name = "portable-atomic-util" @@ -5741,18 +5934,18 @@ dependencies = [ [[package]] name = "prettyplease" -version = "0.2.32" +version = "0.2.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "664ec5419c51e34154eec046ebcba56312d5a2fc3b09a06da188e1ad21afadf6" +checksum = "061c1221631e079b26479d25bbf2275bfe5917ae8419cd7e34f13bfc2aa7539a" dependencies = [ "proc-macro2", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "primeorder" version = "0.13.1" -source = "git+https://github.com/zkMIPS-patches/elliptic-curves?branch=patch-p256-0.13.2#3bf31f9f01f874dee004e162d574e1c04376e7db" +source = "git+https://github.com/ziren-patches/elliptic-curves?branch=patch-p256-0.13.2#26d6bc595c7f685a3c1b2896dbd2d5788d989184" dependencies = [ "elliptic-curve", ] @@ -5803,7 +5996,7 @@ version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" dependencies = [ - "toml_edit 0.22.26", + "toml_edit 0.22.27", ] [[package]] @@ -5825,7 +6018,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -5839,17 +6032,17 @@ dependencies = [ [[package]] name = "proptest" -version = "1.6.0" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" +checksum = "6fcdab19deb5195a31cf7726a210015ff1496ba1464fd42cb4f537b8b01b471f" dependencies = [ "bit-set 0.8.0", "bit-vec 0.8.0", - "bitflags 2.9.0", + "bitflags 2.9.1", "lazy_static", "num-traits", - "rand 0.8.5", - "rand_chacha 0.3.1", + "rand 0.9.1", + "rand_chacha 0.9.0", "rand_xorshift", "regex-syntax 0.8.5", "rusty-fork", @@ -5922,7 +6115,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -5938,7 +6131,7 @@ dependencies = [ name = "provider" version = "0.1.0" dependencies = [ - "alloy-json-rpc", + "alloy-json-rpc 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-provider", "alloy-rpc-client", "alloy-transport", @@ -5973,7 +6166,7 @@ dependencies = [ "quinn-proto", "quinn-udp", "rustc-hash 2.1.1", - "rustls 0.23.27", + "rustls 0.23.28", "socket2", "thiserror 2.0.12", "tokio", @@ -5993,7 +6186,7 @@ dependencies = [ "rand 0.9.1", "ring 0.17.14", "rustc-hash 2.1.1", - "rustls 0.23.27", + "rustls 0.23.28", "rustls-pki-types", "slab", "thiserror 2.0.12", @@ -6004,9 +6197,9 @@ dependencies = [ [[package]] name = "quinn-udp" -version = "0.5.12" +version = "0.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee4e529991f949c5e25755532370b8af5d114acae52326361d68d47af64aa842" +checksum = "fcebb1209ee276352ef14ff8732e24cc2b02bbac986cd74a4c81bcb2f9881970" dependencies = [ "cfg_aliases", "libc", @@ -6027,9 +6220,9 @@ dependencies = [ [[package]] name = "r-efi" -version = "5.2.0" +version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" [[package]] name = "radium" @@ -6101,11 +6294,11 @@ dependencies = [ [[package]] name = "rand_xorshift" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" +checksum = "513962919efc330f829edb2535844d1b912b0fbe2ca165d613e4e8788bb05a5a" dependencies = [ - "rand_core 0.6.4", + "rand_core 0.9.3", ] [[package]] @@ -6148,11 +6341,11 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.12" +version = "0.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "928fca9cf2aa042393a8325b9ead81d2f0df4cb12e1e24cef072922ccd99c5af" +checksum = "0d04b7d0ee6b4a0207a0a7adb104d23ecb0b47d6beae7152d0fa34b692b29fd6" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", ] [[package]] @@ -6166,6 +6359,26 @@ dependencies = [ "thiserror 1.0.69", ] +[[package]] +name = "ref-cast" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a0ae411dbe946a674d89546582cea4ba2bb8defac896622d6496f14c23ba5cf" +dependencies = [ + "ref-cast-impl", +] + +[[package]] +name = "ref-cast-impl" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1165225c21bff1f3bbce98f5a1f889949bc902d3575308cc7b0de30b4f6d27c7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + [[package]] name = "regex" version = "1.11.1" @@ -6235,7 +6448,7 @@ dependencies = [ "percent-encoding", "pin-project-lite", "rustls 0.21.12", - "rustls-pemfile 1.0.4", + "rustls-pemfile", "serde", "serde_json", "serde_urlencoded", @@ -6256,51 +6469,46 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.15" +version = "0.12.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d19c46a6fdd48bc4dab94b6103fccc55d34c67cc0ad04653aad4ea2a07cd7bbb" +checksum = "cbc931937e6ca3a06e3b6c0aa7841849b160a90351d6ab467a8b9b9959767531" dependencies = [ "base64 0.22.1", "bytes", "encoding_rs", "futures-core", - "futures-util", - "h2 0.4.10", + "h2 0.4.11", "http 1.3.1", "http-body 1.0.1", "http-body-util", "hyper 1.6.0", - "hyper-rustls 0.27.5", + "hyper-rustls 0.27.7", "hyper-tls", "hyper-util", - "ipnet", "js-sys", "log", "mime", "native-tls", - "once_cell", "percent-encoding", "pin-project-lite", "quinn", - "rustls 0.23.27", - "rustls-pemfile 2.2.0", + "rustls 0.23.28", "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", "sync_wrapper 1.0.2", - "system-configuration 0.6.1", "tokio", "tokio-native-tls", "tokio-rustls 0.26.2", "tower 0.5.2", + "tower-http", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", - "webpki-roots 0.26.11", - "windows-registry", + "webpki-roots 1.0.1", ] [[package]] @@ -6312,7 +6520,7 @@ dependencies = [ "anyhow", "async-trait", "http 1.3.1", - "reqwest 0.12.15", + "reqwest 0.12.22", "serde", "thiserror 1.0.69", "tower-service", @@ -6331,7 +6539,7 @@ dependencies = [ "http 1.3.1", "hyper 1.6.0", "parking_lot 0.11.2", - "reqwest 0.12.15", + "reqwest 0.12.22", "reqwest-middleware", "retry-policies", "tokio", @@ -6341,18 +6549,18 @@ dependencies = [ [[package]] name = "resolv-conf" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc7c8f7f733062b66dc1c63f9db168ac0b97a9210e247fa90fdc9ad08f51b302" +checksum = "95325155c684b1c89f7765e30bc1c42e4a6da51ca513615660cb8a62ef9a88e3" [[package]] name = "reth-chainspec" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-chains", - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-evm", "alloy-genesis", "alloy-primitives", @@ -6368,10 +6576,10 @@ dependencies = [ [[package]] name = "reth-codecs" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-genesis", "alloy-primitives", "alloy-trie", @@ -6386,20 +6594,20 @@ dependencies = [ [[package]] name = "reth-codecs-derive" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "reth-consensus" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "auto_impl", "reth-execution-types", @@ -6410,10 +6618,10 @@ dependencies = [ [[package]] name = "reth-consensus-common" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "reth-chainspec", "reth-consensus", "reth-primitives-traits", @@ -6422,9 +6630,9 @@ dependencies = [ [[package]] name = "reth-db-models" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-eips", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "reth-primitives-traits", ] @@ -6432,7 +6640,7 @@ dependencies = [ [[package]] name = "reth-errors" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "reth-consensus", "reth-execution-errors", @@ -6444,10 +6652,10 @@ dependencies = [ [[package]] name = "reth-ethereum-consensus" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "reth-chainspec", "reth-consensus", @@ -6460,7 +6668,7 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-eip2124", "alloy-hardforks", @@ -6472,14 +6680,14 @@ dependencies = [ [[package]] name = "reth-ethereum-primitives" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-evm", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types-eth", + "alloy-rpc-types-eth 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "derive_more 2.0.1", "rand 0.8.5", "reth-codecs", @@ -6493,10 +6701,10 @@ dependencies = [ [[package]] name = "reth-evm" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-evm", "alloy-primitives", "auto_impl", @@ -6510,15 +6718,16 @@ dependencies = [ "reth-storage-errors", "reth-trie-common", "revm", + "revm-database", ] [[package]] name = "reth-evm-ethereum" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-evm", "alloy-primitives", "reth-chainspec", @@ -6533,7 +6742,7 @@ dependencies = [ [[package]] name = "reth-execution-errors" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-evm", "alloy-primitives", @@ -6546,10 +6755,10 @@ dependencies = [ [[package]] name = "reth-execution-types" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-evm", "alloy-primitives", "derive_more 2.0.1", @@ -6562,7 +6771,7 @@ dependencies = [ [[package]] name = "reth-fs-util" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "serde", "serde_json", @@ -6572,7 +6781,7 @@ dependencies = [ [[package]] name = "reth-metrics" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "metrics", "metrics-derive", @@ -6581,7 +6790,7 @@ dependencies = [ [[package]] name = "reth-network-peers" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -6593,11 +6802,11 @@ dependencies = [ [[package]] name = "reth-optimism-chainspec" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-chains", - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-genesis", "alloy-hardforks", "alloy-primitives", @@ -6615,10 +6824,10 @@ dependencies = [ [[package]] name = "reth-optimism-consensus" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-trie", "op-alloy-consensus", @@ -6640,10 +6849,10 @@ dependencies = [ [[package]] name = "reth-optimism-evm" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-evm", "alloy-op-evm", "alloy-primitives", @@ -6665,7 +6874,7 @@ dependencies = [ [[package]] name = "reth-optimism-forks" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-op-hardforks", "alloy-primitives", @@ -6676,14 +6885,14 @@ dependencies = [ [[package]] name = "reth-optimism-primitives" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-evm", "alloy-primitives", "alloy-rlp", - "alloy-rpc-types-eth", + "alloy-rpc-types-eth 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "bytes", "derive_more 2.0.1", "op-alloy-consensus", @@ -6700,10 +6909,10 @@ dependencies = [ [[package]] name = "reth-primitives-traits" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-genesis", "alloy-primitives", "alloy-rlp", @@ -6727,7 +6936,7 @@ dependencies = [ [[package]] name = "reth-prune-types" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-primitives", "derive_more 2.0.1", @@ -6737,7 +6946,7 @@ dependencies = [ [[package]] name = "reth-stages-types" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-primitives", "reth-trie-common", @@ -6746,7 +6955,7 @@ dependencies = [ [[package]] name = "reth-static-file-types" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-primitives", "derive_more 2.0.1", @@ -6757,10 +6966,10 @@ dependencies = [ [[package]] name = "reth-storage-api" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-rpc-types-engine", "auto_impl", @@ -6779,9 +6988,9 @@ dependencies = [ [[package]] name = "reth-storage-errors" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-eips", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-rlp", "derive_more 2.0.1", @@ -6795,7 +7004,7 @@ dependencies = [ [[package]] name = "reth-tracing" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "clap", "eyre", @@ -6810,10 +7019,10 @@ dependencies = [ [[package]] name = "reth-trie" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", - "alloy-eips", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-rlp", "alloy-trie", @@ -6832,9 +7041,9 @@ dependencies = [ [[package]] name = "reth-trie-common" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ - "alloy-consensus", + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-primitives", "alloy-rlp", "alloy-trie", @@ -6849,7 +7058,7 @@ dependencies = [ [[package]] name = "reth-trie-sparse" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -6866,7 +7075,7 @@ dependencies = [ [[package]] name = "reth-zstd-compressors" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "zstd 0.13.3", ] @@ -6883,7 +7092,7 @@ dependencies = [ [[package]] name = "revm" version = "22.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "revm-bytecode", "revm-context", @@ -6901,7 +7110,7 @@ dependencies = [ [[package]] name = "revm-bytecode" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "bitvec", "phf", @@ -6912,8 +7121,9 @@ dependencies = [ [[package]] name = "revm-context" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "cfg-if", "derive-where", "revm-bytecode", @@ -6927,8 +7137,9 @@ dependencies = [ [[package]] name = "revm-context-interface" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ + "alloy-consensus 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "alloy-eip2930", "alloy-eip7702", "auto_impl", @@ -6941,9 +7152,9 @@ dependencies = [ [[package]] name = "revm-database" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ - "alloy-eips", + "alloy-eips 0.14.0 (git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat)", "revm-bytecode", "revm-database-interface", "revm-primitives", @@ -6954,7 +7165,7 @@ dependencies = [ [[package]] name = "revm-database-interface" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "auto_impl", "revm-primitives", @@ -6965,7 +7176,7 @@ dependencies = [ [[package]] name = "revm-handler" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "auto_impl", "revm-bytecode", @@ -6982,7 +7193,7 @@ dependencies = [ [[package]] name = "revm-inspector" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "auto_impl", "revm-context", @@ -6997,7 +7208,7 @@ dependencies = [ [[package]] name = "revm-interpreter" version = "18.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "revm-bytecode", "revm-context-interface", @@ -7008,7 +7219,7 @@ dependencies = [ [[package]] name = "revm-precompile" version = "19.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "ark-bls12-381", "ark-bn254", @@ -7029,7 +7240,7 @@ dependencies = [ [[package]] name = "revm-primitives" version = "18.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "alloy-primitives", "enumn", @@ -7039,14 +7250,23 @@ dependencies = [ [[package]] name = "revm-state" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", "revm-bytecode", "revm-primitives", "serde", ] +[[package]] +name = "rfc6979" +version = "0.4.0" +source = "git+https://github.com/ziren-patches/signatures.git?branch=patch-ecdsa-0.16.9#fed1f3bbd4207450cebcc6d601c226f2cccccb3b" +dependencies = [ + "hmac", + "subtle", +] + [[package]] name = "rfc6979" version = "0.4.0" @@ -7154,9 +7374,9 @@ dependencies = [ [[package]] name = "ruint" -version = "1.14.0" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78a46eb779843b2c4f21fac5773e25d6d5b7c8f0922876c91541790d2ca27eef" +checksum = "11256b5fe8c68f56ac6f39ef0720e592f33d2367a4782740d9c9142e889c7fb4" dependencies = [ "alloy-rlp", "ark-ff 0.3.0", @@ -7187,9 +7407,9 @@ checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" [[package]] name = "rustc-demangle" -version = "0.1.24" +version = "0.1.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" +checksum = "989e6739f80c4ad5b13e0fd7fe89531180375b18520cc8c82080e4dc4035b84f" [[package]] name = "rustc-hash" @@ -7233,7 +7453,7 @@ version = "0.38.44" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", "errno", "libc", "linux-raw-sys 0.4.15", @@ -7246,7 +7466,7 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c71e83d6afe7ff64890ec6b71d6a69bb8a610ab78ce364b3352876bb4c801266" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", "errno", "libc", "linux-raw-sys 0.9.4", @@ -7279,9 +7499,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.27" +version = "0.23.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "730944ca083c1c233a75c09f199e973ca499344a2b7ba9e755c457e86fb4a321" +checksum = "7160e3e10bf4535308537f3c4e1641468cd0e485175d6163087c0393c7d46643" dependencies = [ "once_cell", "ring 0.17.14", @@ -7298,7 +7518,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" dependencies = [ "openssl-probe", - "rustls-pemfile 1.0.4", + "rustls-pemfile", "schannel", "security-framework", ] @@ -7312,15 +7532,6 @@ dependencies = [ "base64 0.21.7", ] -[[package]] -name = "rustls-pemfile" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" -dependencies = [ - "rustls-pki-types", -] - [[package]] name = "rustls-pki-types" version = "1.12.0" @@ -7354,9 +7565,9 @@ dependencies = [ [[package]] name = "rustversion" -version = "1.0.20" +version = "1.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" +checksum = "8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d" [[package]] name = "rusty-fork" @@ -7415,7 +7626,7 @@ dependencies = [ "proc-macro-crate 3.3.0", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -7436,6 +7647,30 @@ dependencies = [ "windows-sys 0.59.0", ] +[[package]] +name = "schemars" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd191f9397d57d581cddd31014772520aa448f65ef991055d7f61582c65165f" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + +[[package]] +name = "schemars" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82d20c4491bc164fa2f6c5d44565947a52ad80b9505d8e36f8d54c27c739fcd0" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + [[package]] name = "scopeguard" version = "1.2.0" @@ -7512,7 +7747,7 @@ version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", "core-foundation", "core-foundation-sys", "libc", @@ -7603,7 +7838,7 @@ checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -7630,9 +7865,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.8" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" +checksum = "bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3" dependencies = [ "serde", ] @@ -7651,15 +7886,17 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.12.0" +version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa" +checksum = "f2c45cd61fefa9db6f254525d46e392b852e0e61d9a1fd36e5bd183450a556d5" dependencies = [ "base64 0.22.1", "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.9.0", + "indexmap 2.10.0", + "schemars 0.9.0", + "schemars 1.0.4", "serde", "serde_derive", "serde_json", @@ -7669,14 +7906,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.12.0" +version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d00caa5193a3c8362ac2b73be6b9e768aa5a4b2f721d8f4b339600c3cb51f8e" +checksum = "de90945e6565ce0d9a25098082ed4ee4002e047cb59892c318d66821e14bb30f" dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -7710,7 +7947,7 @@ dependencies = [ "futures", "log", "once_cell", - "parking_lot 0.12.3", + "parking_lot 0.12.4", "scc", "serial_test_derive", ] @@ -7723,7 +7960,7 @@ checksum = "5d69265a08751de7844521fd15003ae0a888e035773ba05695c5c759a6f89eef" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -7740,7 +7977,7 @@ dependencies = [ [[package]] name = "sha2" version = "0.10.8" -source = "git+https://github.com/zkMIPS-patches/RustCrypto-hashes?branch=patch-sha2-0.10.8#62d9223ba171ef6d5b637b275c4b982f56d0a949" +source = "git+https://github.com/ziren-patches/RustCrypto-hashes?branch=patch-sha2-0.10.8#62d9223ba171ef6d5b637b275c4b982f56d0a949" dependencies = [ "cfg-if", "cpufeatures", @@ -7827,18 +8064,15 @@ checksum = "9fed904c7fb2856d868b92464fc8fa597fce366edea1a9cbfaa8cb5fe080bd6d" [[package]] name = "slab" -version = "0.4.9" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] +checksum = "04dc19736151f35336d325007ac991178d504a119863a2fcb3758cdb5e52c50d" [[package]] name = "smallvec" -version = "1.15.0" +version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" +checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" dependencies = [ "serde", ] @@ -7855,9 +8089,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.5.9" +version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f5fd57c80058a56cf5c777ab8a126398ece8e442983605d280a44ce79d0edef" +checksum = "e22376abed350d73dd1cd119b57ffccad95b4e585a7cda43e286245ce23c0678" dependencies = [ "libc", "windows-sys 0.52.0", @@ -7924,7 +8158,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bf776ba3fa74f83bf4b63c3dcbbf82173db2632ed8452cb2d891d33f459de70f" dependencies = [ "new_debug_unreachable", - "parking_lot 0.12.3", + "parking_lot 0.12.4", "phf_shared", "precomputed-hash", ] @@ -7969,7 +8203,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -7982,7 +8216,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -8024,9 +8258,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.101" +version = "2.0.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf" +checksum = "17b6f705963418cdb9927482fa304bc562ece2fdd4f616084c50b7023b435a40" dependencies = [ "proc-macro2", "quote", @@ -8035,14 +8269,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d0f0d4760f4c2a0823063b2c70e97aa2ad185f57be195172ccc0e23c4b787c4" +checksum = "b9ac494e7266fcdd2ad80bf4375d55d27a117ea5c866c26d0e97fe5b3caeeb75" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -8068,7 +8302,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -8103,7 +8337,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", "core-foundation", "system-configuration-sys 0.6.0", ] @@ -8158,14 +8392,6 @@ dependencies = [ "winapi", ] -[[package]] -name = "test-artifacts" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" -dependencies = [ - "zkm-build", -] - [[package]] name = "thiserror" version = "1.0.69" @@ -8192,7 +8418,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -8203,7 +8429,7 @@ checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -8214,12 +8440,11 @@ checksum = "3bf63baf9f5039dadc247375c29eb13706706cfde997d0330d05aa63a77d8820" [[package]] name = "thread_local" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" +checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185" dependencies = [ "cfg-if", - "once_cell", ] [[package]] @@ -8300,16 +8525,18 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.45.0" +version = "1.46.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2513ca694ef9ede0fb23fe71a4ee4107cb102b9dc1930f6d0fd77aae068ae165" +checksum = "0cc3a2344dafbe23a245241fe8b09735b521110d30fcefbbd5feb1797ca35d17" dependencies = [ "backtrace", "bytes", + "io-uring", "libc", "mio", "pin-project-lite", "signal-hook-registry", + "slab", "socket2", "tokio-macros", "windows-sys 0.52.0", @@ -8333,7 +8560,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -8373,7 +8600,7 @@ version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b" dependencies = [ - "rustls 0.23.27", + "rustls 0.23.28", "tokio", ] @@ -8412,7 +8639,7 @@ checksum = "7a9daff607c6d2bf6c16fd681ccb7eecc83e4e2cdc1ca067ffaadfca5de7f084" dependencies = [ "futures-util", "log", - "rustls 0.23.27", + "rustls 0.23.28", "rustls-pki-types", "tokio", "tokio-rustls 0.26.2", @@ -8435,21 +8662,21 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.22" +version = "0.8.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05ae329d1f08c4d17a59bed7ff5b5a769d062e64a62d34a3261b219e62cd5aae" +checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362" dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.26", + "toml_edit 0.22.27", ] [[package]] name = "toml_datetime" -version = "0.6.9" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3" +checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" dependencies = [ "serde", ] @@ -8460,30 +8687,30 @@ version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap 2.9.0", + "indexmap 2.10.0", "toml_datetime", "winnow 0.5.40", ] [[package]] name = "toml_edit" -version = "0.22.26" +version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "310068873db2c5b3e7659d2cc35d21855dbafa50d1ce336397c666e3cb08137e" +checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ - "indexmap 2.9.0", + "indexmap 2.10.0", "serde", "serde_spanned", "toml_datetime", "toml_write", - "winnow 0.7.10", + "winnow 0.7.11", ] [[package]] name = "toml_write" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfb942dfe1d8e29a7ee7fcbde5bd2b9a25fb89aa70caea2eba3bee836ff41076" +checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" [[package]] name = "tonic" @@ -8508,7 +8735,7 @@ dependencies = [ "prost 0.11.9", "prost-derive 0.11.9", "rustls-native-certs", - "rustls-pemfile 1.0.4", + "rustls-pemfile", "tokio", "tokio-rustls 0.23.4", "tokio-stream", @@ -8569,6 +8796,24 @@ dependencies = [ "tracing", ] +[[package]] +name = "tower-http" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2" +dependencies = [ + "bitflags 2.9.1", + "bytes", + "futures-util", + "http 1.3.1", + "http-body 1.0.1", + "iri-string", + "pin-project-lite", + "tower 0.5.2", + "tower-layer", + "tower-service", +] + [[package]] name = "tower-layer" version = "0.3.3" @@ -8607,20 +8852,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.28" +version = "0.1.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" +checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "tracing-core" -version = "0.1.33" +version = "0.1.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" +checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678" dependencies = [ "once_cell", "valuable", @@ -8764,7 +9009,7 @@ dependencies = [ "httparse", "log", "rand 0.9.1", - "rustls 0.23.27", + "rustls 0.23.28", "rustls-pki-types", "sha1", "thiserror 2.0.12", @@ -8784,7 +9029,7 @@ dependencies = [ "http-body-util", "hyper 1.6.0", "prost 0.13.5", - "reqwest 0.12.15", + "reqwest 0.12.22", "serde", "serde_json", "thiserror 1.0.69", @@ -8837,9 +9082,9 @@ checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" [[package]] name = "unicode-width" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fc81956842c57dac11422a97c3b8195a1ff727f06e85c84ed2e8aa277c9a0fd" +checksum = "4a1a07cc7db3810833284e8d372ccdc6da29741639ecc70c9ec107df0fa6154c" [[package]] name = "unicode-xid" @@ -8910,24 +9155,26 @@ dependencies = [ [[package]] name = "uuid" -version = "1.16.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "458f7a779bf54acc9f347480ac654f68407d3aab21269a6e3c9f922acd9e2da9" +checksum = "3cf4199d1e5d15ddd86a694e4d0dffa9c323ce759fea589f00fef9d81cc1931d" dependencies = [ "getrandom 0.3.3", + "js-sys", "rand 0.9.1", "uuid-macro-internal", + "wasm-bindgen", ] [[package]] name = "uuid-macro-internal" -version = "1.16.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72dcd78c4f979627a754f5522cea6e6a25e55139056535fe6e69c506cd64a862" +checksum = "26b682e8c381995ea03130e381928e0e005b7c9eb483c6c8682f50e07b33c2b7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -9000,9 +9247,9 @@ dependencies = [ [[package]] name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" +version = "0.11.1+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "wasi" @@ -9035,7 +9282,7 @@ dependencies = [ "log", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "wasm-bindgen-shared", ] @@ -9070,7 +9317,7 @@ checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -9114,13 +9361,13 @@ dependencies = [ [[package]] name = "wasmtimer" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0048ad49a55b9deb3953841fa1fc5858f0efbcb7a18868c899a360269fac1b23" +checksum = "d8d49b5d6c64e8558d9b1b065014426f35c18de636895d24893dbbd329743446" dependencies = [ "futures", "js-sys", - "parking_lot 0.12.3", + "parking_lot 0.12.4", "pin-utils", "slab", "wasm-bindgen", @@ -9168,14 +9415,14 @@ version = "0.26.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "521bc38abb08001b01866da9f51eb7c5d647a19260e00054a8c7fd5f9e57f7a9" dependencies = [ - "webpki-roots 1.0.0", + "webpki-roots 1.0.1", ] [[package]] name = "webpki-roots" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2853738d1cc4f2da3a225c18ec6c3721abb31961096e9dbf5ab35fa88b19cfdb" +checksum = "8782dd5a41a24eed3a4f40b606249b3e236ca61adf1f25ea4d45c73de122b502" dependencies = [ "rustls-pki-types", ] @@ -9250,15 +9497,15 @@ dependencies = [ [[package]] name = "windows-core" -version = "0.61.0" +version = "0.61.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4763c1de310c86d75a878046489e2e5ba02c649d185f21c67d4cf8a56d098980" +checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" dependencies = [ "windows-implement", "windows-interface", "windows-link", "windows-result", - "windows-strings 0.4.0", + "windows-strings", ] [[package]] @@ -9269,7 +9516,7 @@ checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -9280,49 +9527,40 @@ checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "windows-link" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76840935b766e1b0a05c0066835fb9ec80071d4c09a16f6bd5f7e655e3c14c38" +checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" [[package]] name = "windows-registry" -version = "0.4.0" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4286ad90ddb45071efd1a66dfa43eb02dd0dfbae1545ad6cc3c51cf34d7e8ba3" +checksum = "5b8a9ed28765efc97bbc954883f4e6796c33a06546ebafacbabee9696967499e" dependencies = [ + "windows-link", "windows-result", - "windows-strings 0.3.1", - "windows-targets 0.53.0", + "windows-strings", ] [[package]] name = "windows-result" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c64fd11a4fd95df68efcfee5f44a294fe71b8bc6a91993e2791938abcc712252" -dependencies = [ - "windows-link", -] - -[[package]] -name = "windows-strings" -version = "0.3.1" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87fa48cc5d406560701792be122a10132491cff9d0aeb23583cc2dcafc847319" +checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" dependencies = [ "windows-link", ] [[package]] name = "windows-strings" -version = "0.4.0" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a2ba9642430ee452d5a7aa78d72907ebe8cfda358e8cb7918a2050581322f97" +checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" dependencies = [ "windows-link", ] @@ -9354,6 +9592,15 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-sys" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" +dependencies = [ + "windows-targets 0.53.2", +] + [[package]] name = "windows-targets" version = "0.48.5" @@ -9387,9 +9634,9 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.53.0" +version = "0.53.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1e4c7e8ceaaf9cb7d7507c974735728ab453b67ef8f18febdd7c11fe59dca8b" +checksum = "c66f69fcc9ce11da9966ddb31a40968cad001c5bedeb5c2b82ede4253ab48aef" dependencies = [ "windows_aarch64_gnullvm 0.53.0", "windows_aarch64_msvc 0.53.0", @@ -9550,9 +9797,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.7.10" +version = "0.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06928c8748d81b05c9be96aad92e1b6ff01833332f281e8cfca3be4b35fc9ec" +checksum = "74c7b26e3480b707944fc872477815d29a8e429d2f93a1ce000f5fa84a15cbcd" dependencies = [ "memchr", ] @@ -9573,7 +9820,7 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" dependencies = [ - "bitflags 2.9.0", + "bitflags 2.9.1", ] [[package]] @@ -9596,9 +9843,9 @@ checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb" [[package]] name = "ws_stream_wasm" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7999f5f4217fe3818726b66257a4475f71e74ffd190776ad053fa159e50737f5" +checksum = "6c173014acad22e83f16403ee360115b38846fe754e735c5d9d3803fe70c6abc" dependencies = [ "async_io_stream", "futures", @@ -9607,7 +9854,7 @@ dependencies = [ "pharos", "rustc_version 0.4.1", "send_wrapper 0.6.0", - "thiserror 1.0.69", + "thiserror 2.0.12", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -9657,28 +9904,28 @@ checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "synstructure", ] [[package]] name = "zerocopy" -version = "0.8.25" +version = "0.8.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb" +checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.25" +version = "0.8.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef" +checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -9698,7 +9945,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "synstructure", ] @@ -9719,7 +9966,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -9752,7 +9999,7 @@ checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -9804,8 +10051,8 @@ dependencies = [ [[package]] name = "zkm-build" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "anyhow", "cargo_metadata", @@ -9816,8 +10063,8 @@ dependencies = [ [[package]] name = "zkm-core-executor" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "anyhow", "bincode", @@ -9843,7 +10090,6 @@ dependencies = [ "sha2", "strum 0.26.3", "strum_macros 0.26.4", - "test-artifacts", "thiserror 1.0.69", "tiny-keccak", "tracing", @@ -9851,14 +10097,14 @@ dependencies = [ "typenum", "vec_map", "zkm-curves", - "zkm-primitives", + "zkm-primitives 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", "zkm-stark", ] [[package]] name = "zkm-core-machine" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "bincode", "cfg-if", @@ -9903,14 +10149,14 @@ dependencies = [ "zkm-core-executor", "zkm-curves", "zkm-derive", - "zkm-primitives", + "zkm-primitives 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", "zkm-stark", ] [[package]] name = "zkm-curves" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "cfg-if", "curve25519-dalek", @@ -9925,14 +10171,14 @@ dependencies = [ "serde", "snowbridge-amcl", "typenum", - "zkm-primitives", + "zkm-primitives 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", "zkm-stark", ] [[package]] name = "zkm-derive" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "quote", "syn 1.0.109", @@ -9940,21 +10186,52 @@ dependencies = [ [[package]] name = "zkm-lib" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "bincode", "cfg-if", "elliptic-curve", "serde", "sha2", - "zkm-primitives", + "zkm-primitives 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", +] + +[[package]] +name = "zkm-lib" +version = "1.1.0" +source = "git+https://github.com/zkMIPS/zkMIPS#a216e0b22c4a1543a545266583e380ec40b4259b" +dependencies = [ + "bincode", + "cfg-if", + "elliptic-curve", + "serde", + "sha2", + "zkm-primitives 1.1.0 (git+https://github.com/zkMIPS/zkMIPS)", ] [[package]] name = "zkm-primitives" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" +dependencies = [ + "bincode", + "hex", + "lazy_static", + "num-bigint 0.4.6", + "p3-field", + "p3-koala-bear", + "p3-monty-31", + "p3-poseidon2", + "p3-symmetric", + "serde", + "sha2", +] + +[[package]] +name = "zkm-primitives" +version = "1.1.0" +source = "git+https://github.com/zkMIPS/zkMIPS#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "bincode", "hex", @@ -9971,8 +10248,8 @@ dependencies = [ [[package]] name = "zkm-prover" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "anyhow", "bincode", @@ -10000,7 +10277,7 @@ dependencies = [ "tracing-subscriber", "zkm-core-executor", "zkm-core-machine", - "zkm-primitives", + "zkm-primitives 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", "zkm-recursion-circuit", "zkm-recursion-compiler", "zkm-recursion-core", @@ -10010,8 +10287,8 @@ dependencies = [ [[package]] name = "zkm-recursion-circuit" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "hashbrown 0.14.5", "itertools 0.13.0", @@ -10034,7 +10311,7 @@ dependencies = [ "zkm-core-executor", "zkm-core-machine", "zkm-derive", - "zkm-primitives", + "zkm-primitives 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", "zkm-recursion-compiler", "zkm-recursion-core", "zkm-recursion-gnark-ffi", @@ -10043,8 +10320,8 @@ dependencies = [ [[package]] name = "zkm-recursion-compiler" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "backtrace", "itertools 0.13.0", @@ -10056,7 +10333,7 @@ dependencies = [ "tracing", "vec_map", "zkm-core-machine", - "zkm-primitives", + "zkm-primitives 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", "zkm-recursion-core", "zkm-recursion-derive", "zkm-stark", @@ -10064,8 +10341,8 @@ dependencies = [ [[package]] name = "zkm-recursion-core" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "backtrace", "ff 0.13.1", @@ -10094,14 +10371,14 @@ dependencies = [ "zkhash", "zkm-core-machine", "zkm-derive", - "zkm-primitives", + "zkm-primitives 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", "zkm-stark", ] [[package]] name = "zkm-recursion-derive" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "quote", "syn 1.0.109", @@ -10109,8 +10386,8 @@ dependencies = [ [[package]] name = "zkm-recursion-gnark-ffi" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "anyhow", "bincode", @@ -10134,10 +10411,10 @@ dependencies = [ [[package]] name = "zkm-sdk" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ - "alloy-signer", + "alloy-signer 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-signer-local", "alloy-sol-types", "anyhow", @@ -10169,20 +10446,20 @@ dependencies = [ "tonic-build", "tracing", "twirp-rs", - "uuid 1.16.0", + "uuid 1.17.0", "vergen", "zkm-build", "zkm-core-executor", "zkm-core-machine", - "zkm-primitives", + "zkm-primitives 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", "zkm-prover", "zkm-stark", ] [[package]] name = "zkm-stark" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "arrayref", "hashbrown 0.14.5", @@ -10217,25 +10494,24 @@ dependencies = [ "tracing-forest", "tracing-subscriber", "zkm-derive", - "zkm-primitives", + "zkm-primitives 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", "zkm-zkvm", ] [[package]] name = "zkm-zkvm" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#b714db0048072b18f9b726f4584bd1367e94d9e7" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "bincode", "cfg-if", "getrandom 0.2.16", "lazy_static", - "libm", "rand 0.8.5", "serde", "sha2", - "zkm-lib", - "zkm-primitives", + "zkm-lib 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", + "zkm-primitives 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", ] [[package]] @@ -10288,9 +10564,19 @@ dependencies = [ [[patch.unused]] name = "alloy-primitives" version = "1.0.0" -source = "git+https://github.com/zkMIPS-patches/core.git?branch=patch-alloy-primitives-1.0.0#7bd144fb41dfcf554e12d65eed4c918fc46beefd" +source = "git+https://github.com/ziren-patches/core.git?branch=patch-alloy-primitives-1.0.0#7bd144fb41dfcf554e12d65eed4c918fc46beefd" + +[[patch.unused]] +name = "alloy-primitives" +version = "1.1.0" +source = "git+https://github.com/ziren-patches/core.git?branch=patch-alloy-primitives-1.1.0#b49b22a5dee69f8d032a6b61984855bc41af7a81" + +[[patch.unused]] +name = "alloy-primitives" +version = "1.1.2" +source = "git+https://github.com/ziren-patches/core.git?branch=patch-alloy-primitives-1.1.2#b0409b615774818cea338bba947b9d706f0ce01d" [[patch.unused]] name = "substrate-bn" version = "0.6.0" -source = "git+https://github.com/zkMIPS-patches/bn?branch=patch-0.6.0#f7abdf37eda884458b940307a2cde9b97b1f1d92" +source = "git+https://github.com/ziren-patches/bn?branch=patch-0.6.0#f7abdf37eda884458b940307a2cde9b97b1f1d92" diff --git a/Cargo.toml b/Cargo.toml index 1b822cf..fbb5656 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -46,83 +46,139 @@ mpt = { path = "./crates/mpt" } primitives = { path = "./crates/primitives" } provider = { path = "./crates/provider" } -# zkMIPS -zkm-build = { git = "https://github.com/zkMIPS/zkMIPS" } -zkm-core-executor = { git = "https://github.com/zkMIPS/zkMIPS" } -zkm-prover = { git = "https://github.com/zkMIPS/zkMIPS" } -zkm-sdk = { git = "https://github.com/zkMIPS/zkMIPS" } -# zkm-build = { path = "../zkMIPS/crates/build" } -# zkm-core-executor = { path = "../zkMIPS/crates/core/executor" } -# zkm-prover = { path = "../zkMIPS/crates/prover" } -# zkm-sdk = { path = "../zkMIPS/crates/sdk" } +# Ziren +zkm-build = { git = "https://github.com/ProjectZKM/Ziren" } +zkm-core-executor = { git = "https://github.com/ProjectZKM/Ziren" } +zkm-prover = { git = "https://github.com/ProjectZKM/Ziren" } +zkm-sdk = { git = "https://github.com/ProjectZKM/Ziren" } + +# zkm-build = { path = "../Ziren/crates/build" } +# zkm-core-executor = { path = "../Ziren/crates/core/executor" } +# zkm-prover = { path = "../Ziren/crates/prover" } +# zkm-sdk = { path = "../Ziren/crates/sdk" } # reth -reth-primitives-traits = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-consensus = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-evm = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-evm-ethereum = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-optimism-evm = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-optimism-primitives = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-storage-errors = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-trie = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-chainspec = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-optimism-chainspec = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-execution-types = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-errors = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-ethereum-consensus = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-ethereum-primitives = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false, features = ["serde"] } -reth-optimism-consensus = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } -reth-optimism-forks = { git = "https://github.com/zkMIPS-patches/reth", branch = "patch-1.3.10", default-features = false } +reth-primitives-traits = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-consensus = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-evm = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-evm-ethereum = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-optimism-evm = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-optimism-primitives = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-storage-errors = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-trie = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-chainspec = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-optimism-chainspec = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-execution-types = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-errors = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-ethereum-consensus = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-ethereum-primitives = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false, features = ["serde"] } +reth-optimism-consensus = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } +reth-optimism-forks = { git = "https://github.com/ziren-patches/reth", branch = "patch-1.3.10-goat", default-features = false } + +# reth-primitives-traits = { path = "../patch/reth/crates/primitives-traits", default-features = false } +# reth-consensus = { path = "../patch/reth/crates/consensus/consensus", default-features = false } +# reth-evm = { path = "../patch/reth/crates/evm", default-features = false } +# reth-evm-ethereum = { path = "../patch/reth/crates/ethereum/evm", default-features = false } +# reth-optimism-evm = { path = "../patch/reth/crates/optimism/evm", default-features = false } +# reth-optimism-primitives = { path = "../patch/reth/crates/optimism/primitives", default-features = false } +# reth-storage-errors = { path = "../patch/reth/crates/storage/errors", default-features = false } +# reth-trie = { path = "../patch/reth/crates/trie/trie", default-features = false } +# reth-chainspec = { path = "../patch/reth/crates/chainspec", default-features = false } +# reth-optimism-chainspec = { path = "../patch/reth/crates/optimism/chainspec", default-features = false } +# reth-execution-types = { path = "../patch/reth/crates/evm/execution-types", default-features = false } +# reth-errors = { path = "../patch/reth/crates/errors", default-features = false } +# reth-ethereum-consensus = { path = "../patch/reth/crates/ethereum/consensus", default-features = false } +# reth-ethereum-primitives = { path = "../patch/reth/crates/ethereum/primitives", default-features = false, features = ["serde"] } +# reth-optimism-consensus = { path = "../patch/reth/crates/optimism/consensus", default-features = false } +# reth-optimism-forks = { path = "../patch/reth/crates/optimism/hardforks", default-features = false } # revm -revm = { git = "https://github.com/zkMIPS-patches/revm", branch = "patch-22.0.0", features = [ +revm = { git = "https://github.com/ziren-patches/revm", branch = "patch-22.0.0-goat", features = [ "serde", "kzg-rs", ], default-features = false } -revm-bytecode = { git = "https://github.com/zkMIPS-patches/revm", branch = "patch-22.0.0", default-features = false } -revm-state = { git = "https://github.com/zkMIPS-patches/revm", branch = "patch-22.0.0", default-features = false } -revm-primitives = { git = "https://github.com/zkMIPS-patches/revm", branch = "patch-22.0.0", features = [ +revm-bytecode = { git = "https://github.com/ziren-patches/revm", branch = "patch-22.0.0-goat", default-features = false } +revm-state = { git = "https://github.com/ziren-patches/revm", branch = "patch-22.0.0-goat", default-features = false } +revm-primitives = { git = "https://github.com/ziren-patches/revm", branch = "patch-22.0.0-goat", features = [ "serde", ], default-features = false } -revm-interpreter = { git = "https://github.com/zkMIPS-patches/revm", branch = "patch-22.0.0", default-features = false } -revm-precompile = { git = "https://github.com/zkMIPS-patches/revm", branch = "patch-22.0.0", default-features = false } -revm-database-interface = { git = "https://github.com/zkMIPS-patches/revm", branch = "patch-22.0.0", default-features = false } -op-revm = { git = "https://github.com/zkMIPS-patches/revm", branch = "patch-22.0.0", default-features = false } -revm-inspectors = { git = "https://github.com/zkMIPS-patches/revm-inspectors", branch = "patch-0.20.1" } +revm-interpreter = { git = "https://github.com/ziren-patches/revm", branch = "patch-22.0.0-goat", default-features = false } +revm-precompile = { git = "https://github.com/ziren-patches/revm", branch = "patch-22.0.0-goat", default-features = false } +revm-database-interface = { git = "https://github.com/ziren-patches/revm", branch = "patch-22.0.0-goat", default-features = false } +op-revm = { git = "https://github.com/ziren-patches/revm", branch = "patch-22.0.0-goat", default-features = false } +revm-inspectors = { git = "https://github.com/ziren-patches/revm-inspectors", branch = "patch-0.19.0-goat" } + +# revm = { path = "../patch/revm/crates/revm", features = [ +# "serde", +# "kzg-rs", +# ], default-features = false } +# revm-bytecode = { path = "../patch/revm/crates/bytecode", default-features = false } +# revm-state = { path = "../patch/revm/crates/state", default-features = false } +# revm-primitives = { path = "../patch/revm/crates/primitives", features = [ +# "serde", +# ], default-features = false } +# revm-interpreter = { path = "../patch/revm/crates/interpreter", default-features = false } +# revm-precompile = { path = "../patch/revm/crates/precompile", default-features = false } +# revm-database-interface = { path = "../patch/revm/crates/database/interface", default-features = false } +# op-revm = { path = "../patch/revm/crates/optimism", default-features = false } +# revm-inspectors = { path = "../patch/revm-inspectors" } # alloy alloy-chains = { version = "0.2.0", default-features = false } -alloy-evm = { git = "https://github.com/zkMIPS-patches/evm", branch = "patch-0.4.0", default-features = false } alloy-primitives = { version = "1.0.0", default-features = false, features = ["sha3-keccak", "map-foldhash"] } -alloy-provider = { version = "0.14.0", default-features = false, features = [ +alloy-rlp = "0.3.10" +alloy-trie = "0.8.1" + +alloy-evm = { git = "https://github.com/ziren-patches/evm", branch = "patch-0.4.0-goat", default-features = false } +alloy-provider = { git = "https://github.com/ziren-patches/alloy", branch = "patch-0.14.0-goat", default-features = false, features = [ "reqwest", "reqwest-rustls-tls", ] } -alloy-rpc-types = { version = "0.14.0", default-features = false, features = [ +alloy-rpc-types = { git = "https://github.com/ziren-patches/alloy", branch = "patch-0.14.0-goat", default-features = false, features = [ "eth", ] } - -alloy-json-rpc = { version = "0.14.0", default-features = false } -alloy-genesis = { version = "0.14.0", default-features = false } -alloy-consensus = { version = "0.14.0", default-features = false, features = ["serde", "serde-bincode-compat"] } -alloy-network = { version = "0.14.0", default-features = false } -alloy-transport = { version = "0.14.0", default-features = false } -alloy-transport-http = { version = "0.14.0", features = [ +alloy-json-rpc = { git = "https://github.com/ziren-patches/alloy", branch = "patch-0.14.0-goat", default-features = false } +alloy-genesis = { git = "https://github.com/ziren-patches/alloy", branch = "patch-0.14.0-goat", default-features = false } +alloy-consensus = { git = "https://github.com/ziren-patches/alloy", branch = "patch-0.14.0-goat", default-features = false, features = ["serde", "serde-bincode-compat"] } +alloy-network = { git = "https://github.com/ziren-patches/alloy", branch = "patch-0.14.0-goat", default-features = false } +alloy-transport = { git = "https://github.com/ziren-patches/alloy", branch = "patch-0.14.0-goat", default-features = false } +alloy-transport-http = { git = "https://github.com/ziren-patches/alloy", branch = "patch-0.14.0-goat", features = [ "reqwest-rustls-tls", ], default-features = false } -alloy-transport-ws = { version = "0.14.0" } -alloy-rpc-client = { version = "0.14.0", default-features = false } -alloy-eips = { version = "0.14.0", default-features = false } +alloy-transport-ws = { git = "https://github.com/ziren-patches/alloy", branch = "patch-0.14.0-goat" } +alloy-rpc-client = { git = "https://github.com/ziren-patches/alloy", branch = "patch-0.14.0-goat", default-features = false } +alloy-eips = { git = "https://github.com/ziren-patches/alloy", branch = "patch-0.14.0-goat", default-features = false } -alloy-rlp = "0.3.10" -alloy-trie = "0.8.1" +# alloy-evm = { path = "../patch/evm/crates/evm", default-features = false } +# alloy-provider = { path = "../patch/alloy/crates/provider", default-features = false, features = [ +# "reqwest", +# "reqwest-rustls-tls", +# ] } +# alloy-rpc-types = { path = "../patch/alloy/crates/rpc-types", default-features = false, features = [ +# "eth", +# ] } +# alloy-json-rpc = { path = "../patch/alloy/crates/json-rpc", default-features = false } +# alloy-genesis = { path = "../patch/alloy/crates/genesis", default-features = false } +# alloy-consensus = { path = "../patch/alloy/crates/consensus", default-features = false, features = ["serde", "serde-bincode-compat"] } +# alloy-network = { path = "../patch/alloy/crates/network", default-features = false } +# alloy-transport = { path = "../patch/alloy/crates/transport", default-features = false } +# alloy-transport-http = { path = "../patch/alloy/crates/transport-http", features = [ +# "reqwest-rustls-tls", +# ], default-features = false } +# alloy-transport-ws = { path = "../patch/alloy/crates/transport-ws" } +# alloy-rpc-client = { path = "../patch/alloy/crates/rpc-client", default-features = false } +# alloy-eips = { path = "../patch/alloy/crates/eips", default-features = false } # op -alloy-op-evm = { git = "https://github.com/zkMIPS-patches/evm", branch = "patch-0.4.0", default-features = false } -op-alloy-consensus = "0.13.0" -op-alloy-network = "0.13.0" -op-alloy-rpc-types = "0.13.0" +alloy-op-evm = { git = "https://github.com/ziren-patches/evm", branch = "patch-0.4.0-goat", default-features = false } +op-alloy-consensus = { git = "https://github.com/ziren-patches/op-alloy", branch = "patch-0.13.0-goat" } +op-alloy-network = { git = "https://github.com/ziren-patches/op-alloy", branch = "patch-0.13.0-goat" } +op-alloy-rpc-types = { git = "https://github.com/ziren-patches/op-alloy", branch = "patch-0.13.0-goat" } +# alloy-op-evm = { path = "../patch/evm/crates/evm", default-features = false } +# op-alloy-consensus = { path = "../patch/op-alloy/crates/consensus" } +# op-alloy-network = { path = "../patch/op-alloy/crates/network" } +# op-alloy-rpc-types = { path = "../patch/op-alloy/crates/rpc-types" } [workspace.lints] rust.missing_debug_implementations = "warn" @@ -133,9 +189,10 @@ rustdoc.all = "warn" [patch.crates-io] # Precompile patches -sha2 = { git = "https://github.com/zkMIPS-patches/RustCrypto-hashes", branch = "patch-sha2-0.10.8", package = "sha2" } -bn = { git = "https://github.com/zkMIPS-patches/bn", branch = "patch-0.6.0", package = "substrate-bn" } -k256 = { git = "https://github.com/zkMIPS-patches/elliptic-curves", branch = "patch-k256-0.13.4" } -p256 = { git = "https://github.com/zkMIPS-patches/elliptic-curves", branch = "patch-p256-0.13.2" } -alloy-primitives-v1-0-0 = { git = "https://github.com/zkMIPS-patches/core.git", package = "alloy-primitives", branch = "patch-alloy-primitives-1.0.0" } -alloy-primitives-v1-1-0 = { git = "https://github.com/zkMIPS-patches/core.git", package = "alloy-primitives", branch = "patch-alloy-primitives-1.1.0" } +sha2 = { git = "https://github.com/ziren-patches/RustCrypto-hashes", branch = "patch-sha2-0.10.8", package = "sha2" } +bn = { git = "https://github.com/ziren-patches/bn", branch = "patch-0.6.0", package = "substrate-bn" } +k256 = { git = "https://github.com/ziren-patches/elliptic-curves", branch = "patch-k256-0.13.4" } +p256 = { git = "https://github.com/ziren-patches/elliptic-curves", branch = "patch-p256-0.13.2" } +alloy-primitives-v1-0-0 = { git = "https://github.com/ziren-patches/core.git", package = "alloy-primitives", branch = "patch-alloy-primitives-1.0.0" } +alloy-primitives-v1-1-0 = { git = "https://github.com/ziren-patches/core.git", package = "alloy-primitives", branch = "patch-alloy-primitives-1.1.0" } +alloy-primitives-v1-1-2 = { git = "https://github.com/ziren-patches/core.git", package = "alloy-primitives", branch = "patch-alloy-primitives-1.1.2" } diff --git a/README.md b/README.md index fa19bf0..356208a 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ A minimal implementation of generating zero-knowledge proofs of EVM block execut Required - [Rust](https://www.rust-lang.org/tools/install) -- [zkMIPS toolchain](https://docs.zkm.io/introduction/installation.html) +- [Ziren toolchain](https://docs.zkm.io/introduction/installation.html) - Register on [Alchemy](https://www.alchemy.com/) or [Chainstack](https://chainstack.com/)​​ to get ​​`rpc url`​ and `ws url`​. But [Chainstack](https://chainstack.com/) does not support archival/historical `eth_getProof` calls. ### RPC Node Requirement diff --git a/bin/eth-proofs/Cargo.toml b/bin/eth-proofs/Cargo.toml index 731ffb8..595de92 100644 --- a/bin/eth-proofs/Cargo.toml +++ b/bin/eth-proofs/Cargo.toml @@ -26,7 +26,7 @@ guest-executor.workspace = true primitives.workspace = true provider.workspace = true -# zkMIPS +# Ziren zkm-sdk.workspace = true # alloy diff --git a/bin/eth-proofs/src/eth_proofs.rs b/bin/eth-proofs/src/eth_proofs.rs index 534a258..813dda8 100644 --- a/bin/eth-proofs/src/eth_proofs.rs +++ b/bin/eth-proofs/src/eth_proofs.rs @@ -137,6 +137,8 @@ impl ExecutionHooks for EthProofsClient { &self, block_number: u64, proof_bytes: &[u8], + _public_values_bytes: &[u8], + _zkm_version: &str, vk: &ZKMVerifyingKey, execution_report: &ExecutionReport, proving_duration: Duration, diff --git a/bin/guest/Cargo.lock b/bin/guest/Cargo.lock index f25f7f6..85dc43a 100644 --- a/bin/guest/Cargo.lock +++ b/bin/guest/Cargo.lock @@ -15,14 +15,14 @@ dependencies = [ [[package]] name = "ahash" -version = "0.8.11" +version = "0.8.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75" dependencies = [ "cfg-if", "once_cell", "version_check", - "zerocopy 0.7.35", + "zerocopy", ] [[package]] @@ -42,9 +42,9 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy-chains" -version = "0.2.0" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7734aecfc58a597dde036e4c5cace2ae43e2f8bf3d406b022a1ef34da178dd49" +checksum = "5674914c2cfdb866c21cb0c09d82374ee39a1395cf512e7515f4c014083b3fff" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -56,8 +56,7 @@ dependencies = [ [[package]] name = "alloy-consensus" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2179ba839ac532f50279f5da2a6c5047f791f03f6f808b4dfab11327b97902f" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-eips", "alloy-primitives", @@ -65,6 +64,7 @@ dependencies = [ "alloy-serde", "alloy-trie", "auto_impl", + "bytes", "c-kzg", "derive_more", "either", @@ -79,8 +79,7 @@ dependencies = [ [[package]] name = "alloy-consensus-any" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aec6f67bdc62aa277e0ec13c1b1fb396c8a62b65c8e9bd8c1d3583cc6d1a8dd3" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -116,9 +115,9 @@ dependencies = [ [[package]] name = "alloy-eip7702" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "804cefe429015b4244966c006d25bda5545fa9db5990e9c9079faf255052f50a" +checksum = "9d4769c6ffddca380b0070d71c8b7f30bed375543fe76bb2f74ec0acf4b7cd16" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -131,8 +130,7 @@ dependencies = [ [[package]] name = "alloy-eips" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "609515c1955b33af3d78d26357540f68c5551a90ef58fd53def04f2aa074ec43" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-eip2124", "alloy-eip2930", @@ -151,7 +149,7 @@ dependencies = [ [[package]] name = "alloy-evm" version = "0.4.0" -source = "git+https://github.com/zkMIPS-patches/evm?branch=patch-0.4.0#389ca65d297f9f23822b06e93668f0962e7497f5" +source = "git+https://github.com/ziren-patches/evm?branch=patch-0.4.0-goat#904a73c7546ceb8c08e3c9678747dff267fbc10b" dependencies = [ "alloy-consensus", "alloy-eips", @@ -167,8 +165,7 @@ dependencies = [ [[package]] name = "alloy-genesis" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dfec8348d97bd624901c6a4b22bb4c24df8a3128fc3d5e42d24f7b79dfa8588" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-eips", "alloy-primitives", @@ -179,9 +176,9 @@ dependencies = [ [[package]] name = "alloy-hardforks" -version = "0.2.0" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7d3b2243e2adfaea41da41982f91ecab8083fa51b240d0427955d709f65b1b4" +checksum = "4ce138b29a2f8e7ed97c064af8359dfa6559c12cba5e821ae4eb93081a56557e" dependencies = [ "alloy-chains", "alloy-eip2124", @@ -192,9 +189,9 @@ dependencies = [ [[package]] name = "alloy-json-abi" -version = "1.0.0" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5189fa9a8797e92396bc4b4454c5f2073a4945f7c2b366af9af60f9536558f7a" +checksum = "3ccaa79753d7bf15f06399ea76922afbfaf8d18bebed9e8fc452984b4a90dcc9" dependencies = [ "alloy-primitives", "alloy-sol-type-parser", @@ -205,8 +202,7 @@ dependencies = [ [[package]] name = "alloy-json-rpc" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3994ab6ff6bdeb5aebe65381a8f6a47534789817570111555e8ac413e242ce06" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-primitives", "alloy-sol-types", @@ -219,8 +215,7 @@ dependencies = [ [[package]] name = "alloy-network" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0be3aa020a6d3aa7601185b4c1a7d6f3a5228cb5424352db63064b29a455c891" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -245,8 +240,7 @@ dependencies = [ [[package]] name = "alloy-network-primitives" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "498f2ee2eef38a6db0fc810c7bf7daebdf5f2fa8d04adb8bd53e54e91ddbdea3" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -257,8 +251,8 @@ dependencies = [ [[package]] name = "alloy-primitives" -version = "1.1.0" -source = "git+https://github.com/zkMIPS-patches/core.git?branch=patch-alloy-primitives-1.1.0#b49b22a5dee69f8d032a6b61984855bc41af7a81" +version = "1.1.2" +source = "git+https://github.com/ziren-patches/core.git?branch=patch-alloy-primitives-1.1.2#b0409b615774818cea338bba947b9d706f0ce01d" dependencies = [ "alloy-rlp", "bytes", @@ -266,8 +260,8 @@ dependencies = [ "const-hex", "derive_more", "foldhash", - "hashbrown 0.15.3", - "indexmap 2.9.0", + "hashbrown 0.15.4", + "indexmap 2.10.0", "itoa", "k256", "keccak-asm", @@ -279,14 +273,14 @@ dependencies = [ "serde", "sha3", "tiny-keccak", - "zkm-zkvm", + "zkm-zkvm 1.1.0 (git+https://github.com/zkMIPS/zkMIPS)", ] [[package]] name = "alloy-rlp" -version = "0.3.11" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6c1d995bff8d011f7cd6c81820d51825e6e06d6db73914c1630ecf544d83d6" +checksum = "5f70d83b765fdc080dbcd4f4db70d8d23fe4761f2f02ebfa9146b833900634b4" dependencies = [ "alloy-rlp-derive", "arrayvec", @@ -295,20 +289,19 @@ dependencies = [ [[package]] name = "alloy-rlp-derive" -version = "0.3.11" +version = "0.3.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a40e1ef334153322fd878d07e86af7a529bcb86b2439525920a88eba87bcf943" +checksum = "64b728d511962dda67c1bc7ea7c03736ec275ed2cf4c35d9585298ac9ccf3b73" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "alloy-rpc-types" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bf27873220877cb15125eb6eec2f86c6e9b41473aca85844bd3d9d755bfc0a0" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-primitives", "alloy-rpc-types-eth", @@ -319,8 +312,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-any" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1a40595b927dfb07218459037837dbc8de8500a26024bb6ff0548dd2ccc13e0" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-consensus-any", "alloy-rpc-types-eth", @@ -330,8 +322,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-engine" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4235d79af20fe5583ca26096258fe9307571a345745c433cfd8c91b41aa2611e" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-consensus", "alloy-eips", @@ -344,8 +335,7 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2a9f64e0f69cfb6029e2a044519a1bdd44ce9fc334d5315a7b9837f7a6748e5" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-consensus", "alloy-consensus-any", @@ -364,8 +354,7 @@ dependencies = [ [[package]] name = "alloy-serde" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4dba6ff08916bc0a9cbba121ce21f67c0b554c39cf174bc7b9df6c651bd3c3b" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-primitives", "serde", @@ -375,8 +364,7 @@ dependencies = [ [[package]] name = "alloy-signer" version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c580da7f00f3999e44e327223044d6732358627f93043e22d92c583f6583556" +source = "git+https://github.com/ziren-patches/alloy?branch=patch-0.14.0-goat#013422b3d4387b210ac8350f76c61afcee71b78a" dependencies = [ "alloy-primitives", "async-trait", @@ -389,41 +377,41 @@ dependencies = [ [[package]] name = "alloy-sol-macro" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d3ef8e0d622453d969ba3cded54cf6800efdc85cb929fe22c5bdf8335666757" +checksum = "a14f21d053aea4c6630687c2f4ad614bed4c81e14737a9b904798b24f30ea849" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "alloy-sol-macro-expander" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0e84bd0693c69a8fbe3ec0008465e029c6293494df7cb07580bf4a33eff52e1" +checksum = "34d99282e7c9ef14eb62727981a985a01869e586d1dec729d3bb33679094c100" dependencies = [ "alloy-sol-macro-input", "const-hex", "heck", - "indexmap 2.9.0", + "indexmap 2.10.0", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3de663412dadf9b64f4f92f507f78deebcc92339d12cf15f88ded65d41c7935" +checksum = "eda029f955b78e493360ee1d7bd11e1ab9f2a220a5715449babc79d6d0a01105" dependencies = [ "const-hex", "dunce", @@ -431,15 +419,15 @@ dependencies = [ "macro-string", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "syn-solidity", ] [[package]] name = "alloy-sol-type-parser" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "251273c5aa1abb590852f795c938730fa641832fc8fa77b5478ed1bf11b6097e" +checksum = "10db1bd7baa35bc8d4a1b07efbf734e73e5ba09f2580fb8cee3483a36087ceb2" dependencies = [ "serde", "winnow", @@ -447,14 +435,13 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "1.0.0" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c02635bce18205ff8149fb752c753b0a91ea3f3c8ee04c58846448be4811a640" +checksum = "584cb97bfc5746cb9dcc4def77da11694b5d6d7339be91b7480a6a68dc129387" dependencies = [ "alloy-json-abi", "alloy-primitives", "alloy-sol-macro", - "const-hex", "serde", ] @@ -491,9 +478,9 @@ dependencies = [ [[package]] name = "anstream" -version = "0.6.18" +version = "0.6.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" +checksum = "301af1932e46185686725e0fad2f8f2aa7da69dd70bf6ecc44d6b703844a3933" dependencies = [ "anstyle", "anstyle-parse", @@ -506,46 +493,37 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.10" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" +checksum = "862ed96ca487e809f1c8e5a8447f6ee2cf102f846893800b20cebdf541fc6bbd" [[package]] name = "anstyle-parse" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" +checksum = "4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.1.2" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" +checksum = "6c8bdeb6047d8983be085bab0ba1472e6dc604e7041dbf6fcd5e71523014fae9" dependencies = [ - "windows-sys", + "windows-sys 0.59.0", ] [[package]] name = "anstyle-wincon" -version = "3.0.7" +version = "3.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e" +checksum = "403f75924867bb1033c59fbf0797484329750cfbe3c4325cd33127941fabc882" dependencies = [ "anstyle", - "once_cell", - "windows-sys", -] - -[[package]] -name = "arbitrary" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dde20b3d026af13f561bdd0f15edf01fc734f0dafcedbaf42bba506a9517f223" -dependencies = [ - "derive_arbitrary", + "once_cell_polyfill", + "windows-sys 0.59.0", ] [[package]] @@ -584,7 +562,7 @@ dependencies = [ "ark-std 0.5.0", "educe", "fnv", - "hashbrown 0.15.3", + "hashbrown 0.15.4", "itertools 0.13.0", "num-bigint 0.4.6", "num-integer", @@ -677,7 +655,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60" dependencies = [ "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -715,7 +693,7 @@ dependencies = [ "num-traits", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -730,7 +708,7 @@ dependencies = [ "ark-std 0.5.0", "educe", "fnv", - "hashbrown 0.15.3", + "hashbrown 0.15.4", ] [[package]] @@ -775,7 +753,7 @@ checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -825,7 +803,7 @@ checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -846,14 +824,14 @@ checksum = "ffdcb70bdbc4d478427380519163274ac86e52916e10f0a8889adf0f96d3fee7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "autocfg" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" +checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] name = "base16ct" @@ -869,9 +847,9 @@ checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] name = "base64ct" -version = "1.7.3" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89e25b6adfb930f02d1981565a6e5d9c547ac15a96606256d3b59040e5cd4ca3" +checksum = "55248b47b0caf0546f7988906588779981c43bb1bc9d0c44087278f80cdb44ba" [[package]] name = "bincode" @@ -915,9 +893,9 @@ dependencies = [ [[package]] name = "bitflags" -version = "2.9.0" +version = "2.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" +checksum = "1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967" dependencies = [ "serde", ] @@ -947,7 +925,7 @@ dependencies = [ [[package]] name = "bls12_381" version = "0.8.0" -source = "git+https://github.com/zkMIPS-patches/bls12_381?branch=patch-0.8.0#7027ea471e5b5a01053ceee2d0e076241a241c2e" +source = "git+https://github.com/ziren-patches/bls12_381?branch=patch-0.8.0#6c60e227e78dd331a6052774e7c50d157d5f3965" dependencies = [ "cfg-if", "ff", @@ -955,14 +933,14 @@ dependencies = [ "pairing", "rand_core 0.6.4", "subtle", - "zkm-lib", + "zkm-lib 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", ] [[package]] name = "blst" -version = "0.3.14" +version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47c79a94619fade3c0b887670333513a67ac28a6a7e653eb260bf0d4103db38d" +checksum = "4fd49896f12ac9b6dcd7a5998466b9b58263a695a3dd1ecc1aaca2e12a90b080" dependencies = [ "cc", "glob", @@ -972,9 +950,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.17.0" +version = "3.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" +checksum = "46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43" [[package]] name = "byte-slice-cast" @@ -999,11 +977,10 @@ dependencies = [ [[package]] name = "c-kzg" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e7e3c397401eb76228c89561cf22f85f41c95aa799ee9d860de3ea1cbc728fc" +checksum = "7318cfa722931cb5fe0838b98d3ce5621e75f6a6408abc21721d80de9223f2e4" dependencies = [ - "arbitrary", "blst", "cc", "glob", @@ -1015,9 +992,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.21" +version = "1.2.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8691782945451c1c383942c4874dbe63814f61cb57ef773cda2972682b7bb3c0" +checksum = "5c1599538de2394445747c8cf7935946e3cc27e9625f889d979bfb2aaf569362" dependencies = [ "jobserver", "libc", @@ -1026,9 +1003,9 @@ dependencies = [ [[package]] name = "cfg-if" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +checksum = "9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268" [[package]] name = "chrono" @@ -1047,9 +1024,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.37" +version = "4.5.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eccb054f56cbd38340b380d4a8e69ef1f02f1af43db2f0cc817a4774d80ae071" +checksum = "40b6887a1d8685cebccf115538db5c0efe625ccac9696ad45c409d96566e910f" dependencies = [ "clap_builder", "clap_derive", @@ -1057,9 +1034,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.37" +version = "4.5.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efd9466fac8543255d3b1fcad4762c5e116ffe808c8a3043d4263cd4fd4862a2" +checksum = "e0c66c08ce9f0c698cbce5c0279d0bb6ac936d8674174fe48f736533b964f59e" dependencies = [ "anstream", "anstyle", @@ -1069,33 +1046,33 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.32" +version = "4.5.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09176aae279615badda0765c0c0b3f6ed53f4709118af73cf4655d85d1530cd7" +checksum = "d2c7947ae4cc3d851207c1adb5b5e260ff0cca11446b1d6d1423788e442257ce" dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "clap_lex" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" +checksum = "b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675" [[package]] name = "colorchoice" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" +checksum = "b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75" [[package]] name = "const-hex" -version = "1.14.0" +version = "1.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b0485bab839b018a8f1723fc5391819fea5f8f0f32288ef8a735fd096b6160c" +checksum = "83e22e0ed40b96a48d3db274f72fd365bd78f67af39b6bbd47e8a15e1c6207ff" dependencies = [ "cfg-if", "cpufeatures", @@ -1156,9 +1133,9 @@ dependencies = [ [[package]] name = "crc" -version = "3.2.1" +version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" +checksum = "9710d3b3739c2e349eb44fe848ad0b7c8cb1e42bd87ee49371df2f7acaf3e675" dependencies = [ "crc-catalog", ] @@ -1211,9 +1188,9 @@ checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" [[package]] name = "crunchy" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" +checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" [[package]] name = "crypto-bigint" @@ -1258,7 +1235,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -1269,7 +1246,7 @@ checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ "darling_core", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -1305,24 +1282,13 @@ dependencies = [ [[package]] name = "derive-where" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e73f2692d4bd3cac41dca28934a39894200c9fabf49586d77d0e5954af1d7902" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "derive_arbitrary" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30542c1ad912e0e3d22a1935c290e12e8a29d704a420177a31faad4a601a0800" +checksum = "510c292c8cf384b1a340b816a9a6cf2599eb8f566a44949024af88418000c50b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -1343,7 +1309,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "unicode-xid", ] @@ -1376,7 +1342,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -1414,7 +1380,7 @@ dependencies = [ "enum-ordinalize", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -1464,7 +1430,7 @@ checksum = "0d28318a75d4aead5c4db25382e8ef717932d0346600cacae6357eb5941bc5ff" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -1475,7 +1441,7 @@ checksum = "2f9ed6b3789237c8a0c1c505af1c7eb2c560df6186f01b098c3a1064ea532f38" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -1486,12 +1452,12 @@ checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" [[package]] name = "errno" -version = "0.3.11" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "976dd42dc7e85965fe702eb8164f21f450704bdde31faefd6471dba214cb594e" +checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad" dependencies = [ "libc", - "windows-sys", + "windows-sys 0.60.2", ] [[package]] @@ -1653,14 +1619,14 @@ checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" dependencies = [ "cfg-if", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", + "wasi 0.11.1+wasi-snapshot-preview1", ] [[package]] name = "getrandom" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73fea8450eea4bac3940448fb7ae50d91f034f941199fcd9d909a5a07aa455f0" +checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" dependencies = [ "cfg-if", "libc", @@ -1724,9 +1690,9 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" [[package]] name = "hashbrown" -version = "0.15.3" +version = "0.15.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84b26c544d002229e640969970a2e74021aadf6e2f96372b9c58eff97de08eb3" +checksum = "5971ac85611da7067dbfcabef3c70ebb5606018acd9e2a3903a0da507521e0d5" dependencies = [ "allocator-api2", "foldhash", @@ -1741,9 +1707,9 @@ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" [[package]] name = "hermit-abi" -version = "0.3.9" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" +checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" [[package]] name = "hex" @@ -1807,21 +1773,22 @@ dependencies = [ [[package]] name = "icu_collections" -version = "1.5.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" +checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47" dependencies = [ "displaydoc", + "potential_utf", "yoke", "zerofrom", "zerovec", ] [[package]] -name = "icu_locid" -version = "1.5.0" +name = "icu_locale_core" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" +checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a" dependencies = [ "displaydoc", "litemap", @@ -1830,31 +1797,11 @@ dependencies = [ "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.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7515e6d781098bf9f7205ab3fc7e9709d34554ae0b21ddbcb5febfa4bc7df11d" - [[package]] name = "icu_normalizer" -version = "1.5.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" +checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979" dependencies = [ "displaydoc", "icu_collections", @@ -1862,67 +1809,54 @@ dependencies = [ "icu_properties", "icu_provider", "smallvec", - "utf16_iter", - "utf8_iter", - "write16", "zerovec", ] [[package]] name = "icu_normalizer_data" -version = "1.5.1" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5e8338228bdc8ab83303f16b797e177953730f601a96c25d10cb3ab0daa0cb7" +checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3" [[package]] name = "icu_properties" -version = "1.5.1" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" +checksum = "016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b" dependencies = [ "displaydoc", "icu_collections", - "icu_locid_transform", + "icu_locale_core", "icu_properties_data", "icu_provider", - "tinystr", + "potential_utf", + "zerotrie", "zerovec", ] [[package]] name = "icu_properties_data" -version = "1.5.1" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85fb8799753b75aee8d2a21d7c14d9f38921b54b3dbda10f5a3c7a7b82dba5e2" +checksum = "298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632" [[package]] name = "icu_provider" -version = "1.5.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" +checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af" dependencies = [ "displaydoc", - "icu_locid", - "icu_provider_macros", + "icu_locale_core", "stable_deref_trait", "tinystr", "writeable", "yoke", "zerofrom", + "zerotrie", "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.101", -] - [[package]] name = "ident_case" version = "1.0.1" @@ -1942,9 +1876,9 @@ dependencies = [ [[package]] name = "idna_adapter" -version = "1.2.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" +checksum = "3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344" dependencies = [ "icu_normalizer", "icu_properties", @@ -1967,7 +1901,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -1989,12 +1923,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.9.0" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" +checksum = "fe4cd85333e22411419a0bcae1297d25e58c9443848b11dc6a86fefe8c78a661" dependencies = [ "equivalent", - "hashbrown 0.15.3", + "hashbrown 0.15.4", "serde", ] @@ -2043,7 +1977,7 @@ version = "0.1.33" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a" dependencies = [ - "getrandom 0.3.2", + "getrandom 0.3.3", "libc", ] @@ -2060,7 +1994,7 @@ dependencies = [ [[package]] name = "k256" version = "0.13.4" -source = "git+https://github.com/zkMIPS-patches/elliptic-curves?branch=patch-k256-0.13.4#8b20cc93790f3a3e3d7bc2bf6dca2ce75c9dbdb2" +source = "git+https://github.com/ziren-patches/elliptic-curves?branch=patch-k256-0.13.4#3300bc5d1ce55ff652647f023bde45aea145ae3e" dependencies = [ "cfg-if", "ecdsa", @@ -2069,7 +2003,7 @@ dependencies = [ "once_cell", "serdect", "sha2", - "zkm-lib", + "zkm-lib 1.1.0 (git+https://github.com/zkMIPS/zkMIPS)", ] [[package]] @@ -2094,7 +2028,7 @@ dependencies = [ [[package]] name = "kzg-rs" version = "0.2.6" -source = "git+https://github.com/zkMIPS-patches/kzg-rs?branch=zkMIPS#05eb129bbc2a1b8c78a9d335e92dfeabb6484700" +source = "git+https://github.com/ziren-patches/kzg-rs?branch=ziren#4cd5e3086a49dc1e94ffbd63ee4a7a9b2e342faa" dependencies = [ "bls12_381", "ff", @@ -2112,9 +2046,9 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "libc" -version = "0.2.172" +version = "0.2.174" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" +checksum = "1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776" [[package]] name = "libm" @@ -2130,15 +2064,15 @@ checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" [[package]] name = "litemap" -version = "0.7.5" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23fb14cb19457329c82206317a5663005a4d404783dc74f4252769b0d5f42856" +checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" [[package]] name = "lock_api" -version = "0.4.12" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +checksum = "96936507f153605bddfcda068dd804796c84324ed2510809e5b2a624c81da765" dependencies = [ "autocfg", "scopeguard", @@ -2158,7 +2092,7 @@ checksum = "1b27834086c65ec3f9387b096d66e99f221cf081c2b738042aa252bcd41204e3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2172,9 +2106,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.7.4" +version = "2.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +checksum = "32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0" [[package]] name = "metrics" @@ -2195,7 +2129,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2335,9 +2269,9 @@ dependencies = [ [[package]] name = "num_cpus" -version = "1.16.0" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +checksum = "91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b" dependencies = [ "hermit-abi", "libc", @@ -2345,22 +2279,23 @@ dependencies = [ [[package]] name = "num_enum" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" +checksum = "a973b4e44ce6cad84ce69d797acf9a044532e4184c4f267913d1b546a0727b7a" dependencies = [ "num_enum_derive", + "rustversion", ] [[package]] name = "num_enum_derive" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" +checksum = "77e878c846a8abae00dd069496dbe8751b16ac1c3d6bd2a7283a938e8228f90d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2398,11 +2333,16 @@ dependencies = [ "portable-atomic", ] +[[package]] +name = "once_cell_polyfill" +version = "1.70.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" + [[package]] name = "op-alloy-consensus" version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a09198717ebb22b201442c12a306a62de4a5d9535993b975c6bc0e5a919e2b1" +source = "git+https://github.com/ziren-patches/op-alloy?branch=patch-0.13.0-goat#2f69f7e6c03e4fee2ae34f254b3f22c9045361df" dependencies = [ "alloy-consensus", "alloy-eips", @@ -2424,7 +2364,7 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" [[package]] name = "p3-dft" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-field", @@ -2437,7 +2377,7 @@ dependencies = [ [[package]] name = "p3-field" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "num-bigint 0.4.6", @@ -2454,7 +2394,7 @@ dependencies = [ [[package]] name = "p3-koala-bear" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "p3-field", "p3-mds", @@ -2468,7 +2408,7 @@ dependencies = [ [[package]] name = "p3-matrix" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-field", @@ -2483,12 +2423,12 @@ dependencies = [ [[package]] name = "p3-maybe-rayon" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" [[package]] name = "p3-mds" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-dft", @@ -2502,7 +2442,7 @@ dependencies = [ [[package]] name = "p3-monty-31" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "num-bigint 0.4.6", @@ -2524,7 +2464,7 @@ dependencies = [ [[package]] name = "p3-poseidon2" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "gcd", "p3-field", @@ -2537,7 +2477,7 @@ dependencies = [ [[package]] name = "p3-symmetric" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "itertools 0.13.0", "p3-field", @@ -2547,7 +2487,7 @@ dependencies = [ [[package]] name = "p3-util" version = "0.1.0" -source = "git+https://github.com/zkMIPS/Plonky3#93967fce8949d2275c06fd91e9f495a35418d68d" +source = "git+https://github.com/zkMIPS/Plonky3#79f986caf008ee3ae455474f42100cb7227219f3" dependencies = [ "lock_api", "serde", @@ -2564,9 +2504,9 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "3.7.4" +version = "3.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9fde3d0718baf5bc92f577d652001da0f8d54cd03a7974e118d04fc888dc23d" +checksum = "799781ae679d79a948e13d4824a40970bfa500058d245760dd857301059810fa" dependencies = [ "arrayvec", "bitvec", @@ -2580,14 +2520,14 @@ dependencies = [ [[package]] name = "parity-scale-codec-derive" -version = "3.7.4" +version = "3.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581c837bb6b9541ce7faa9377c20616e4fb7650f6b0f68bc93c827ee504fb7b3" +checksum = "34b4653168b563151153c9e4c08ebed57fb8262bebfa79711552fa983c623e7a" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2604,9 +2544,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pest" -version = "2.8.0" +version = "2.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "198db74531d58c70a361c42201efde7e2591e976d518caf7662a47dc5720e7b6" +checksum = "1db05f56d34358a8b1066f67cbb203ee3e7ed2ba674a6263a1d5ec6db2204323" dependencies = [ "memchr", "thiserror 2.0.12", @@ -2644,7 +2584,7 @@ dependencies = [ "phf_shared", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2686,9 +2626,18 @@ checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" [[package]] name = "portable-atomic" -version = "1.11.0" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" +checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" + +[[package]] +name = "potential_utf" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585" +dependencies = [ + "zerovec", +] [[package]] name = "powerfmt" @@ -2702,7 +2651,7 @@ version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" dependencies = [ - "zerocopy 0.8.25", + "zerocopy", ] [[package]] @@ -2758,7 +2707,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -2772,17 +2721,17 @@ dependencies = [ [[package]] name = "proptest" -version = "1.6.0" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" +checksum = "6fcdab19deb5195a31cf7726a210015ff1496ba1464fd42cb4f537b8b01b471f" dependencies = [ "bit-set", "bit-vec", "bitflags", "lazy_static", "num-traits", - "rand 0.8.5", - "rand_chacha 0.3.1", + "rand 0.9.1", + "rand_chacha 0.9.0", "rand_xorshift", "regex-syntax 0.8.5", "rusty-fork", @@ -2807,9 +2756,9 @@ dependencies = [ [[package]] name = "r-efi" -version = "5.2.0" +version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" [[package]] name = "radium" @@ -2875,17 +2824,17 @@ version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" dependencies = [ - "getrandom 0.3.2", + "getrandom 0.3.3", "serde", ] [[package]] name = "rand_xorshift" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" +checksum = "513962919efc330f829edb2535844d1b912b0fbe2ca165d613e4e8788bb05a5a" dependencies = [ - "rand_core 0.6.4", + "rand_core 0.9.3", ] [[package]] @@ -2908,6 +2857,26 @@ dependencies = [ "crossbeam-utils", ] +[[package]] +name = "ref-cast" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a0ae411dbe946a674d89546582cea4ba2bb8defac896622d6496f14c23ba5cf" +dependencies = [ + "ref-cast-impl", +] + +[[package]] +name = "ref-cast-impl" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1165225c21bff1f3bbce98f5a1f889949bc902d3575308cc7b0de30b4f6d27c7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.104", +] + [[package]] name = "regex" version = "1.11.1" @@ -2960,13 +2929,13 @@ dependencies = [ "guest-executor", "log", "tracing", - "zkm-zkvm", + "zkm-zkvm 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", ] [[package]] name = "reth-chainspec" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-chains", "alloy-consensus", @@ -2986,7 +2955,7 @@ dependencies = [ [[package]] name = "reth-codecs" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3004,18 +2973,18 @@ dependencies = [ [[package]] name = "reth-codecs-derive" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "reth-consensus" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -3028,7 +2997,7 @@ dependencies = [ [[package]] name = "reth-consensus-common" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3040,7 +3009,7 @@ dependencies = [ [[package]] name = "reth-db-models" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-eips", "alloy-primitives", @@ -3050,7 +3019,7 @@ dependencies = [ [[package]] name = "reth-errors" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "reth-consensus", "reth-execution-errors", @@ -3062,7 +3031,7 @@ dependencies = [ [[package]] name = "reth-ethereum-consensus" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3078,7 +3047,7 @@ dependencies = [ [[package]] name = "reth-ethereum-forks" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-eip2124", "alloy-hardforks", @@ -3090,7 +3059,7 @@ dependencies = [ [[package]] name = "reth-ethereum-primitives" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3111,7 +3080,7 @@ dependencies = [ [[package]] name = "reth-evm" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3127,12 +3096,13 @@ dependencies = [ "reth-storage-errors", "reth-trie-common", "revm", + "revm-database", ] [[package]] name = "reth-evm-ethereum" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3150,7 +3120,7 @@ dependencies = [ [[package]] name = "reth-execution-errors" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-evm", "alloy-primitives", @@ -3163,7 +3133,7 @@ dependencies = [ [[package]] name = "reth-execution-types" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3179,7 +3149,7 @@ dependencies = [ [[package]] name = "reth-fs-util" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "serde", "serde_json", @@ -3189,7 +3159,7 @@ dependencies = [ [[package]] name = "reth-metrics" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "metrics", "metrics-derive", @@ -3198,7 +3168,7 @@ dependencies = [ [[package]] name = "reth-network-peers" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -3210,7 +3180,7 @@ dependencies = [ [[package]] name = "reth-primitives-traits" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3237,7 +3207,7 @@ dependencies = [ [[package]] name = "reth-prune-types" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-primitives", "derive_more", @@ -3247,7 +3217,7 @@ dependencies = [ [[package]] name = "reth-stages-types" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-primitives", "reth-trie-common", @@ -3256,7 +3226,7 @@ dependencies = [ [[package]] name = "reth-static-file-types" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-primitives", "derive_more", @@ -3267,7 +3237,7 @@ dependencies = [ [[package]] name = "reth-storage-api" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3289,7 +3259,7 @@ dependencies = [ [[package]] name = "reth-storage-errors" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-eips", "alloy-primitives", @@ -3305,7 +3275,7 @@ dependencies = [ [[package]] name = "reth-tracing" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "clap", "eyre", @@ -3320,7 +3290,7 @@ dependencies = [ [[package]] name = "reth-trie" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-consensus", "alloy-eips", @@ -3342,7 +3312,7 @@ dependencies = [ [[package]] name = "reth-trie-common" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-consensus", "alloy-primitives", @@ -3359,7 +3329,7 @@ dependencies = [ [[package]] name = "reth-trie-sparse" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -3376,7 +3346,7 @@ dependencies = [ [[package]] name = "reth-zstd-compressors" version = "1.3.10" -source = "git+https://github.com/zkMIPS-patches/reth?branch=patch-1.3.10#021e791e6dfca97ef009758e3382f51692e82f61" +source = "git+https://github.com/ziren-patches/reth?branch=patch-1.3.10-goat#f8d0cf8b218e4dc1f1bf941e653b9635d6104828" dependencies = [ "zstd", ] @@ -3384,7 +3354,7 @@ dependencies = [ [[package]] name = "revm" version = "22.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "revm-bytecode", "revm-context", @@ -3402,7 +3372,7 @@ dependencies = [ [[package]] name = "revm-bytecode" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "bitvec", "phf", @@ -3413,8 +3383,9 @@ dependencies = [ [[package]] name = "revm-context" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ + "alloy-consensus", "cfg-if", "derive-where", "revm-bytecode", @@ -3428,8 +3399,9 @@ dependencies = [ [[package]] name = "revm-context-interface" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ + "alloy-consensus", "alloy-eip2930", "alloy-eip7702", "auto_impl", @@ -3442,7 +3414,7 @@ dependencies = [ [[package]] name = "revm-database" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "alloy-eips", "revm-bytecode", @@ -3455,7 +3427,7 @@ dependencies = [ [[package]] name = "revm-database-interface" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "auto_impl", "revm-primitives", @@ -3466,7 +3438,7 @@ dependencies = [ [[package]] name = "revm-handler" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "auto_impl", "revm-bytecode", @@ -3483,7 +3455,7 @@ dependencies = [ [[package]] name = "revm-inspector" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "auto_impl", "revm-context", @@ -3498,7 +3470,7 @@ dependencies = [ [[package]] name = "revm-interpreter" version = "18.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "revm-bytecode", "revm-context-interface", @@ -3509,7 +3481,7 @@ dependencies = [ [[package]] name = "revm-precompile" version = "19.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "ark-bls12-381", "ark-bn254", @@ -3529,7 +3501,7 @@ dependencies = [ [[package]] name = "revm-primitives" version = "18.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "alloy-primitives", "enumn", @@ -3539,7 +3511,7 @@ dependencies = [ [[package]] name = "revm-state" version = "3.0.0" -source = "git+https://github.com/zkMIPS-patches/revm?branch=patch-22.0.0#bef418476ca014d7544f52be62ac1b004eceaad9" +source = "git+https://github.com/ziren-patches/revm?branch=patch-22.0.0-goat#fbe033fa429f5faebd63c0f0f509c6a8c74076fe" dependencies = [ "bitflags", "revm-bytecode", @@ -3586,9 +3558,9 @@ dependencies = [ [[package]] name = "ruint" -version = "1.14.0" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78a46eb779843b2c4f21fac5773e25d6d5b7c8f0922876c91541790d2ca27eef" +checksum = "11256b5fe8c68f56ac6f39ef0720e592f33d2367a4782740d9c9142e889c7fb4" dependencies = [ "alloy-rlp", "ark-ff 0.3.0", @@ -3657,14 +3629,14 @@ dependencies = [ "errno", "libc", "linux-raw-sys", - "windows-sys", + "windows-sys 0.59.0", ] [[package]] name = "rustversion" -version = "1.0.20" +version = "1.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" +checksum = "8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d" [[package]] name = "rusty-fork" @@ -3684,6 +3656,30 @@ version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +[[package]] +name = "schemars" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd191f9397d57d581cddd31014772520aa448f65ef991055d7f61582c65165f" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + +[[package]] +name = "schemars" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82d20c4491bc164fa2f6c5d44565947a52ad80b9505d8e36f8d54c27c739fcd0" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + [[package]] name = "scopeguard" version = "1.2.0" @@ -3776,7 +3772,7 @@ checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -3793,15 +3789,17 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.12.0" +version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa" +checksum = "f2c45cd61fefa9db6f254525d46e392b852e0e61d9a1fd36e5bd183450a556d5" dependencies = [ "base64", "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.9.0", + "indexmap 2.10.0", + "schemars 0.9.0", + "schemars 1.0.4", "serde", "serde_derive", "serde_json", @@ -3811,14 +3809,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.12.0" +version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d00caa5193a3c8362ac2b73be6b9e768aa5a4b2f721d8f4b339600c3cb51f8e" +checksum = "de90945e6565ce0d9a25098082ed4ee4002e047cb59892c318d66821e14bb30f" dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -3834,7 +3832,7 @@ dependencies = [ [[package]] name = "sha2" version = "0.10.8" -source = "git+https://github.com/zkMIPS-patches/RustCrypto-hashes?branch=patch-sha2-0.10.8#62d9223ba171ef6d5b637b275c4b982f56d0a949" +source = "git+https://github.com/ziren-patches/RustCrypto-hashes?branch=patch-sha2-0.10.8#62d9223ba171ef6d5b637b275c4b982f56d0a949" dependencies = [ "cfg-if", "cpufeatures", @@ -3894,9 +3892,9 @@ checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" [[package]] name = "smallvec" -version = "1.15.0" +version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" +checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" dependencies = [ "serde", ] @@ -3960,7 +3958,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -3982,9 +3980,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.101" +version = "2.0.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ce2b7fc941b3a24138a0a7cf8e858bfc6a992e7978a068a5c760deb0ed43caf" +checksum = "17b6f705963418cdb9927482fa304bc562ece2fdd4f616084c50b7023b435a40" dependencies = [ "proc-macro2", "quote", @@ -3993,14 +3991,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d0f0d4760f4c2a0823063b2c70e97aa2ad185f57be195172ccc0e23c4b787c4" +checksum = "b9ac494e7266fcdd2ad80bf4375d55d27a117ea5c866c26d0e97fe5b3caeeb75" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -4011,7 +4009,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -4022,15 +4020,15 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.19.1" +version = "3.20.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7437ac7763b9b123ccf33c338a5cc1bac6f69b45a136c19bdd8a65e3916435bf" +checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1" dependencies = [ "fastrand", - "getrandom 0.3.2", + "getrandom 0.3.3", "once_cell", "rustix", - "windows-sys", + "windows-sys 0.59.0", ] [[package]] @@ -4059,7 +4057,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -4070,17 +4068,16 @@ checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "thread_local" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" +checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185" dependencies = [ "cfg-if", - "once_cell", ] [[package]] @@ -4134,9 +4131,9 @@ dependencies = [ [[package]] name = "tinystr" -version = "0.7.6" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" +checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b" dependencies = [ "displaydoc", "zerovec", @@ -4144,17 +4141,17 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.6.9" +version = "0.6.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3" +checksum = "22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c" [[package]] name = "toml_edit" -version = "0.22.26" +version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "310068873db2c5b3e7659d2cc35d21855dbafa50d1ce336397c666e3cb08137e" +checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ - "indexmap 2.9.0", + "indexmap 2.10.0", "toml_datetime", "winnow", ] @@ -4184,20 +4181,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.28" +version = "0.1.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" +checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "tracing-core" -version = "0.1.33" +version = "0.1.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" +checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678" dependencies = [ "once_cell", "valuable", @@ -4324,12 +4321,6 @@ dependencies = [ "percent-encoding", ] -[[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" @@ -4365,9 +4356,9 @@ dependencies = [ [[package]] name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" +version = "0.11.1+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" [[package]] name = "wasi" @@ -4400,7 +4391,7 @@ dependencies = [ "log", "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "wasm-bindgen-shared", ] @@ -4422,7 +4413,7 @@ checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -4460,9 +4451,9 @@ checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] name = "windows-core" -version = "0.61.0" +version = "0.61.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4763c1de310c86d75a878046489e2e5ba02c649d185f21c67d4cf8a56d098980" +checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3" dependencies = [ "windows-implement", "windows-interface", @@ -4479,7 +4470,7 @@ checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -4490,29 +4481,29 @@ checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "windows-link" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76840935b766e1b0a05c0066835fb9ec80071d4c09a16f6bd5f7e655e3c14c38" +checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a" [[package]] name = "windows-result" -version = "0.3.2" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c64fd11a4fd95df68efcfee5f44a294fe71b8bc6a91993e2791938abcc712252" +checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6" dependencies = [ "windows-link", ] [[package]] name = "windows-strings" -version = "0.4.0" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a2ba9642430ee452d5a7aa78d72907ebe8cfda358e8cb7918a2050581322f97" +checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57" dependencies = [ "windows-link", ] @@ -4523,7 +4514,16 @@ version = "0.59.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" dependencies = [ - "windows-targets", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" +dependencies = [ + "windows-targets 0.53.2", ] [[package]] @@ -4532,14 +4532,30 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" dependencies = [ - "windows_aarch64_gnullvm", - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_gnullvm", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_gnullvm", - "windows_x86_64_msvc", + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm 0.52.6", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", +] + +[[package]] +name = "windows-targets" +version = "0.53.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c66f69fcc9ce11da9966ddb31a40968cad001c5bedeb5c2b82ede4253ab48aef" +dependencies = [ + "windows_aarch64_gnullvm 0.53.0", + "windows_aarch64_msvc 0.53.0", + "windows_i686_gnu 0.53.0", + "windows_i686_gnullvm 0.53.0", + "windows_i686_msvc 0.53.0", + "windows_x86_64_gnu 0.53.0", + "windows_x86_64_gnullvm 0.53.0", + "windows_x86_64_msvc 0.53.0", ] [[package]] @@ -4548,53 +4564,101 @@ version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" + [[package]] name = "windows_aarch64_msvc" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" +[[package]] +name = "windows_aarch64_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" + [[package]] name = "windows_i686_gnu" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" +[[package]] +name = "windows_i686_gnu" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3" + [[package]] name = "windows_i686_gnullvm" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" +[[package]] +name = "windows_i686_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" + [[package]] name = "windows_i686_msvc" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" +[[package]] +name = "windows_i686_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" + [[package]] name = "windows_x86_64_gnu" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" +[[package]] +name = "windows_x86_64_gnu" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" + [[package]] name = "windows_x86_64_gnullvm" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" + [[package]] name = "windows_x86_64_msvc" version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" +[[package]] +name = "windows_x86_64_msvc" +version = "0.53.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486" + [[package]] name = "winnow" -version = "0.7.10" +version = "0.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06928c8748d81b05c9be96aad92e1b6ff01833332f281e8cfca3be4b35fc9ec" +checksum = "74c7b26e3480b707944fc872477815d29a8e429d2f93a1ce000f5fa84a15cbcd" dependencies = [ "memchr", ] @@ -4608,17 +4672,11 @@ dependencies = [ "bitflags", ] -[[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" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" +checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb" [[package]] name = "wyz" @@ -4631,9 +4689,9 @@ dependencies = [ [[package]] name = "yoke" -version = "0.7.5" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40" +checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc" dependencies = [ "serde", "stable_deref_trait", @@ -4643,54 +4701,34 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.7.5" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" +checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "synstructure", ] [[package]] name = "zerocopy" -version = "0.7.35" +version = "0.8.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f" dependencies = [ - "zerocopy-derive 0.7.35", -] - -[[package]] -name = "zerocopy" -version = "0.8.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1702d9583232ddb9174e01bb7c15a2ab8fb1bc6f227aa1233858c351a3ba0cb" -dependencies = [ - "zerocopy-derive 0.8.25", -] - -[[package]] -name = "zerocopy-derive" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", + "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.25" +version = "0.8.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28a6e20d751156648aa063f3800b706ee209a32c0b4d9f24be3d980b01be55ef" +checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] @@ -4710,7 +4748,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", "synstructure", ] @@ -4731,14 +4769,25 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", +] + +[[package]] +name = "zerotrie" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", ] [[package]] name = "zerovec" -version = "0.10.4" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" +checksum = "4a05eb080e015ba39cc9e23bbe5e7fb04d5fb040350f99f34e338d5fdd294428" dependencies = [ "yoke", "zerofrom", @@ -4747,32 +4796,63 @@ dependencies = [ [[package]] name = "zerovec-derive" -version = "0.10.3" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" +checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 2.0.104", ] [[package]] name = "zkm-lib" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#6efc1d944dd871ecc0e897c2ae0f4429aafed4f9" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" +dependencies = [ + "bincode", + "cfg-if", + "elliptic-curve", + "serde", + "sha2", + "zkm-primitives 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", +] + +[[package]] +name = "zkm-lib" +version = "1.1.0" +source = "git+https://github.com/zkMIPS/zkMIPS#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "bincode", "cfg-if", "elliptic-curve", "serde", "sha2", - "zkm-primitives", + "zkm-primitives 1.1.0 (git+https://github.com/zkMIPS/zkMIPS)", ] [[package]] name = "zkm-primitives" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#6efc1d944dd871ecc0e897c2ae0f4429aafed4f9" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" +dependencies = [ + "bincode", + "hex", + "lazy_static", + "num-bigint 0.4.6", + "p3-field", + "p3-koala-bear", + "p3-monty-31", + "p3-poseidon2", + "p3-symmetric", + "serde", + "sha2", +] + +[[package]] +name = "zkm-primitives" +version = "1.1.0" +source = "git+https://github.com/zkMIPS/zkMIPS#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "bincode", "hex", @@ -4789,8 +4869,8 @@ dependencies = [ [[package]] name = "zkm-zkvm" -version = "1.0.0" -source = "git+https://github.com/zkMIPS/zkMIPS#6efc1d944dd871ecc0e897c2ae0f4429aafed4f9" +version = "1.1.0" +source = "git+https://github.com/ProjectZKM/Ziren#a216e0b22c4a1543a545266583e380ec40b4259b" dependencies = [ "bincode", "cfg-if", @@ -4800,8 +4880,25 @@ dependencies = [ "rand 0.8.5", "serde", "sha2", - "zkm-lib", - "zkm-primitives", + "zkm-lib 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", + "zkm-primitives 1.1.0 (git+https://github.com/ProjectZKM/Ziren)", +] + +[[package]] +name = "zkm-zkvm" +version = "1.1.0" +source = "git+https://github.com/zkMIPS/zkMIPS#a216e0b22c4a1543a545266583e380ec40b4259b" +dependencies = [ + "bincode", + "cfg-if", + "getrandom 0.2.16", + "lazy_static", + "libm", + "rand 0.8.5", + "serde", + "sha2", + "zkm-lib 1.1.0 (git+https://github.com/zkMIPS/zkMIPS)", + "zkm-primitives 1.1.0 (git+https://github.com/zkMIPS/zkMIPS)", ] [[package]] @@ -4835,14 +4932,19 @@ dependencies = [ [[patch.unused]] name = "alloy-primitives" version = "1.0.0" -source = "git+https://github.com/zkMIPS-patches/core.git?branch=patch-alloy-primitives-1.0.0#7bd144fb41dfcf554e12d65eed4c918fc46beefd" +source = "git+https://github.com/ziren-patches/core.git?branch=patch-alloy-primitives-1.0.0#7bd144fb41dfcf554e12d65eed4c918fc46beefd" + +[[patch.unused]] +name = "alloy-primitives" +version = "1.1.0" +source = "git+https://github.com/ziren-patches/core.git?branch=patch-alloy-primitives-1.1.0#b49b22a5dee69f8d032a6b61984855bc41af7a81" [[patch.unused]] name = "substrate-bn" version = "0.6.0" -source = "git+https://github.com/zkMIPS-patches/bn?branch=patch-0.6.0#f7abdf37eda884458b940307a2cde9b97b1f1d92" +source = "git+https://github.com/ziren-patches/bn?branch=patch-0.6.0#f7abdf37eda884458b940307a2cde9b97b1f1d92" [[patch.unused]] name = "p256" version = "0.13.2" -source = "git+https://github.com/zkMIPS-patches/elliptic-curves?branch=patch-p256-0.13.2#2f750c6eb2445127ef38c8ebb3e91ed720cee03e" +source = "git+https://github.com/ziren-patches/elliptic-curves?branch=patch-p256-0.13.2#26d6bc595c7f685a3c1b2896dbd2d5788d989184" diff --git a/bin/guest/Cargo.toml b/bin/guest/Cargo.toml index ca7efeb..f395ba4 100644 --- a/bin/guest/Cargo.toml +++ b/bin/guest/Cargo.toml @@ -10,9 +10,9 @@ bincode = "1.3.3" # workspace guest-executor = { path = "../../crates/executor/guest" } -# zkMIPS -zkm-zkvm = { git = "https://github.com/zkMIPS/zkMIPS" } -# zkm-zkvm = { path = "../../../zkMIPS/crates/zkvm/entrypoint" } +# Ziren +zkm-zkvm = { git = "https://github.com/ProjectZKM/Ziren" } +# zkm-zkvm = { path = "../../../Ziren/crates/zkvm/entrypoint" } # Statically turns off logging log = { version = "0.4", features = ["max_level_off", "release_max_level_off"] } @@ -20,9 +20,10 @@ tracing = { version = "0.1", features = ["max_level_off", "release_max_level_off [patch.crates-io] # Precompile patches -sha2 = { git = "https://github.com/zkMIPS-patches/RustCrypto-hashes", branch = "patch-sha2-0.10.8", package = "sha2" } -bn = { git = "https://github.com/zkMIPS-patches/bn", branch = "patch-0.6.0", package = "substrate-bn" } -k256 = { git = "https://github.com/zkMIPS-patches/elliptic-curves", branch = "patch-k256-0.13.4" } -p256 = { git = "https://github.com/zkMIPS-patches/elliptic-curves", branch = "patch-p256-0.13.2" } -alloy-primitives-v1-0-0 = { git = "https://github.com/zkMIPS-patches/core.git", package = "alloy-primitives", branch = "patch-alloy-primitives-1.0.0" } -alloy-primitives-v1-1-0 = { git = "https://github.com/zkMIPS-patches/core.git", package = "alloy-primitives", branch = "patch-alloy-primitives-1.1.0" } +sha2 = { git = "https://github.com/ziren-patches/RustCrypto-hashes", branch = "patch-sha2-0.10.8", package = "sha2" } +bn = { git = "https://github.com/ziren-patches/bn", branch = "patch-0.6.0", package = "substrate-bn" } +k256 = { git = "https://github.com/ziren-patches/elliptic-curves", branch = "patch-k256-0.13.4" } +p256 = { git = "https://github.com/ziren-patches/elliptic-curves", branch = "patch-p256-0.13.2" } +alloy-primitives-v1-0-0 = { git = "https://github.com/ziren-patches/core.git", package = "alloy-primitives", branch = "patch-alloy-primitives-1.0.0" } +alloy-primitives-v1-1-0 = { git = "https://github.com/ziren-patches/core.git", package = "alloy-primitives", branch = "patch-alloy-primitives-1.1.0" } +alloy-primitives-v1-1-2 = { git = "https://github.com/ziren-patches/core.git", package = "alloy-primitives", branch = "patch-alloy-primitives-1.1.2" } diff --git a/bin/guest/src/main.rs b/bin/guest/src/main.rs index 8b80b8c..15832d3 100644 --- a/bin/guest/src/main.rs +++ b/bin/guest/src/main.rs @@ -1,14 +1,14 @@ #![no_main] zkm_zkvm::entrypoint!(main); -use guest_executor::verify_block_hash; +use guest_executor::verify_block; use std::sync::Arc; pub fn main() { // Read the input. let input = zkm_zkvm::io::read_vec(); - let block_hash = verify_block_hash(&input); + let (block_hash, _, _) = verify_block(&input); // Commit the block hash. zkm_zkvm::io::commit(&block_hash); diff --git a/bin/host/Cargo.toml b/bin/host/Cargo.toml index 5ea058c..5d4b406 100644 --- a/bin/host/Cargo.toml +++ b/bin/host/Cargo.toml @@ -22,7 +22,7 @@ alloy-provider.workspace = true url.workspace = true -# zkMIPS +# Ziren zkm-sdk.workspace = true [dev-dependencies] diff --git a/crates/executor/guest/src/executor.rs b/crates/executor/guest/src/executor.rs index 1fa448f..b4e7622 100644 --- a/crates/executor/guest/src/executor.rs +++ b/crates/executor/guest/src/executor.rs @@ -2,7 +2,7 @@ use std::sync::Arc; use alloy_consensus::{BlockHeader, Header, TxReceipt}; use alloy_evm::EthEvmFactory; -use alloy_primitives::Bloom; +use alloy_primitives::{Bloom, B256}; use reth_chainspec::ChainSpec; use reth_errors::BlockExecutionError; use reth_evm::{ @@ -52,14 +52,17 @@ where pub fn execute( &self, mut input: ClientExecutorInput, - ) -> Result { + ) -> Result<(Header, B256), ClientError> { // Initialize the witnessed database with verified storage proofs. let db = profile_report!(INIT_WITNESS_DB, { let trie_db = input.witness_db().unwrap(); WrapDatabaseRef(trie_db) }); - let block_executor = BlockExecutor::new(self.evm_config.clone(), db, input.opcode_tracking); + let chain_id: u64 = (&input.genesis).try_into().expect("convert chain id err"); + + let block_executor = + BlockExecutor::new(self.evm_config.clone(), db, input.opcode_tracking, chain_id); let block = profile_report!(RECOVER_SENDERS, { C::Primitives::from_input_block(input.current_block.clone()) @@ -91,6 +94,8 @@ where vec![execution_output.result.requests], ); + let parent_state_root = input.parent_state.state_root(); + // Verify the state root. let state_root = profile_report!(COMPUTE_STATE_ROOT, { input.parent_state.update(&executor_outcome.hash_state_slow::()); @@ -127,7 +132,7 @@ where requests_hash: None, }; - Ok(header) + Ok((header, parent_state_root)) } } @@ -155,11 +160,16 @@ enum BlockExecutor<'a, C> { } impl<'a, C: ConfigureEvm> BlockExecutor<'a, C> { - fn new(strategy_factory: C, db: WrapDatabaseRef>, opcode_tracking: bool) -> Self { + fn new( + strategy_factory: C, + db: WrapDatabaseRef>, + opcode_tracking: bool, + chain_id: u64, + ) -> Self { if opcode_tracking { Self::OpcodeTracking(OpCodesTrackingBlockExecutor::new(strategy_factory, db)) } else { - Self::Basic(BasicBlockExecutor::new(strategy_factory, db)) + Self::Basic(BasicBlockExecutor::new(strategy_factory, db, Some(chain_id))) } } } diff --git a/crates/executor/guest/src/lib.rs b/crates/executor/guest/src/lib.rs index a1a45db..3a7f76b 100644 --- a/crates/executor/guest/src/lib.rs +++ b/crates/executor/guest/src/lib.rs @@ -12,12 +12,12 @@ pub mod tracking; mod into_primitives; pub use into_primitives::{FromInput, IntoInput, IntoPrimitives, ValidateBlockPostExecution}; -use alloy_primitives::FixedBytes; +use alloy_primitives::B256; use executor::{EthClientExecutor, DESERIALZE_INPUTS}; use io::EthClientExecutorInput; use std::sync::Arc; -pub fn verify_block_hash(input: &Vec) -> FixedBytes<32> { +pub fn verify_block(input: &Vec) -> (B256, B256, B256) { println!("cycle-tracker-report-start: {}", DESERIALZE_INPUTS); let input = bincode::deserialize::(input).unwrap(); println!("cycle-tracker-report-end: {}", DESERIALZE_INPUTS); @@ -27,7 +27,7 @@ pub fn verify_block_hash(input: &Vec) -> FixedBytes<32> { Arc::new((&input.genesis).try_into().unwrap()), input.custom_beneficiary, ); - let header = executor.execute(input).expect("failed to execute client"); + let (header, prev_state_root) = executor.execute(input).expect("failed to execute client"); let block_hash = header.hash_slow(); - block_hash + (block_hash, header.state_root, prev_state_root) } diff --git a/crates/executor/host/Cargo.toml b/crates/executor/host/Cargo.toml index 4e6d5c8..6e4029b 100644 --- a/crates/executor/host/Cargo.toml +++ b/crates/executor/host/Cargo.toml @@ -27,7 +27,7 @@ guest-executor = { workspace = true, features = ["optimism"] } mpt = { workspace = true, features = ["preimage_context"] } primitives = { workspace = true, features = ["optimism"] } -# zkMIPS +# Ziren zkm-core-executor.workspace = true zkm-sdk.workspace = true zkm-prover.workspace = true @@ -59,6 +59,7 @@ alloy-network.workspace = true alloy-provider.workspace = true alloy-transport.workspace = true alloy-rpc-types.workspace = true +alloy-eips.workspace = true # op op-alloy-network.workspace = true diff --git a/crates/executor/host/src/full_executor.rs b/crates/executor/host/src/full_executor.rs index f58ad2b..acf66d1 100644 --- a/crates/executor/host/src/full_executor.rs +++ b/crates/executor/host/src/full_executor.rs @@ -112,20 +112,21 @@ pub trait BlockExecutor { let pk = self.pk(); let proof = task::spawn_blocking(move || { - client - .prove(pk.as_ref(), stdin, Default::default(), Default::default(), prove_mode) - .map_err(|err| eyre::eyre!("{err}")) + client.prove(pk.as_ref(), stdin, prove_mode).map_err(|err| eyre::eyre!("{err}")) }) .await .map_err(|err| eyre::eyre!("{err}"))??; let proving_duration = proving_start.elapsed(); let proof_bytes = bincode::serialize(&proof.proof).unwrap(); + let public_values_bytes = bincode::serialize(&proof.public_values).unwrap(); hooks .on_proving_end( client_input.current_block.number, &proof_bytes, + &public_values_bytes, + &proof.zkm_version, self.vk().as_ref(), &execution_report, proving_duration, @@ -401,7 +402,7 @@ where } } -// Block execution in zkMIPS is a long-running, blocking task, so run it in a separate thread. +// Block execution in Ziren is a long-running, blocking task, so run it in a separate thread. async fn execute_client + 'static>( number: u64, client: Arc

, diff --git a/crates/executor/host/src/hooks.rs b/crates/executor/host/src/hooks.rs index f71e653..623c53f 100644 --- a/crates/executor/host/src/hooks.rs +++ b/crates/executor/host/src/hooks.rs @@ -28,6 +28,8 @@ pub trait ExecutionHooks: Send { &self, _block_number: u64, _proof_bytes: &[u8], + _public_values_bytes: &[u8], + _zkm_version: &str, _vk: &ZKMVerifyingKey, _execution_report: &ExecutionReport, _proving_duration: Duration, diff --git a/crates/executor/host/src/host_executor.rs b/crates/executor/host/src/host_executor.rs index 31545d9..7929841 100644 --- a/crates/executor/host/src/host_executor.rs +++ b/crates/executor/host/src/host_executor.rs @@ -94,7 +94,11 @@ impl HostExecutor { tracing::info!("setting up the database for the block executor"); let cache_db = CacheDB::new(rpc_db); - let block_executor = BasicBlockExecutor::new(self.evm_config.clone(), cache_db); + let chain_id: u64 = (&genesis).try_into().unwrap(); + tracing::info!("chain id: {}", chain_id); + + let block_executor = + BasicBlockExecutor::new(self.evm_config.clone(), cache_db, Some(chain_id)); // Execute the block and fetch all the necessary data along the way. tracing::info!( diff --git a/crates/mpt/src/mpt.rs b/crates/mpt/src/mpt.rs index 3b43990..aae32f7 100644 --- a/crates/mpt/src/mpt.rs +++ b/crates/mpt/src/mpt.rs @@ -737,7 +737,7 @@ impl MptNode { 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, "{:x}", n); + let _ = write!(output, "{n:x}"); output }); @@ -752,14 +752,14 @@ impl MptNode { None => vec!["None".to_string()], } .into_iter() - .map(move |s| format!("{:x} {}", i, s)) + .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() + node.debug_rlp::().into_iter().map(|s| format!("{nibs} {s}")).collect() } MptNodeData::Digest(digest) => vec![format!("#{:#}", digest)], } diff --git a/crates/primitives/src/genesis.rs b/crates/primitives/src/genesis.rs index 346ac01..06f7648 100644 --- a/crates/primitives/src/genesis.rs +++ b/crates/primitives/src/genesis.rs @@ -4,6 +4,7 @@ use serde::{Deserialize, Serialize}; pub const LINEA_GENESIS_JSON: &str = include_str!("./genesis/59144.json"); pub const GOAT_GENESIS_JSON: &str = include_str!("./genesis/2345.json"); +pub const GOAT_TESTNET_GENESIS_JSON: &str = include_str!("./genesis/48816.json"); #[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)] pub enum Genesis { @@ -12,6 +13,7 @@ pub enum Genesis { Sepolia, Linea, GOAT, + GoatTestnet, Custom(String), } @@ -32,11 +34,28 @@ impl TryFrom for Genesis { 59144 => Ok(Genesis::Linea), 11155111 => Ok(Genesis::Sepolia), 2345 => Ok(Genesis::GOAT), + 48816 => Ok(Genesis::GoatTestnet), id => Err(eyre!("The chain {id} is not supported")), } } } +impl TryFrom<&Genesis> for u64 { + type Error = eyre::Error; + + fn try_from(value: &Genesis) -> Result { + match value { + Genesis::Mainnet => Ok(1), + Genesis::OpMainnet => Ok(10), + Genesis::Linea => Ok(59144), + Genesis::Sepolia => Ok(11155111), + Genesis::GOAT => Ok(2345), + Genesis::GoatTestnet => Ok(48816), + Genesis::Custom(_) => Err(eyre!("Custom genesis is not supported")), + } + } +} + impl TryFrom<&Genesis> for ChainSpec { type Error = eyre::Error; @@ -76,6 +95,9 @@ impl TryFrom<&Genesis> for ChainSpec { } Genesis::Linea => Ok(ChainSpec::from_genesis(genesis_from_json(LINEA_GENESIS_JSON)?)), Genesis::GOAT => Ok(ChainSpec::from_genesis(genesis_from_json(GOAT_GENESIS_JSON)?)), + Genesis::GoatTestnet => { + Ok(ChainSpec::from_genesis(genesis_from_json(GOAT_TESTNET_GENESIS_JSON)?)) + } Genesis::Custom(json) => Ok(ChainSpec::from_genesis(genesis_from_json(json)?)), } } diff --git a/crates/primitives/src/genesis/2345.json b/crates/primitives/src/genesis/2345.json index 70403f5..464b2bd 100644 --- a/crates/primitives/src/genesis/2345.json +++ b/crates/primitives/src/genesis/2345.json @@ -2,8 +2,6 @@ "config": { "chainId": 2345, "homesteadBlock": 0, - "daoForkBlock": 0, - "daoForkSupport": true, "eip150Block": 0, "eip155Block": 0, "eip158Block": 0, @@ -14,7 +12,193 @@ "muirGlacierBlock": 0, "berlinBlock": 0, "londonBlock": 0, - "mergeNetsplitBlock": 0, - "terminalTotalDifficulty": "0" - } - } + "arrowGlacierBlock": 0, + "grayGlacierBlock": 0, + "shanghaiTime": 0, + "cancunTime": 0, + "terminalTotalDifficulty": 0, + "goat": {} + }, + "nonce": "0x0", + "timestamp": "0x67657e2f", + "extraData": "0x0056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "gasLimit": "0x1c9c380", + "difficulty": "0x0", + "mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "coinbase": "0x0000000000000000000000000000000000000000", + "alloc": { + "738fe7d89c172239bf456d387ad2c60a79087917": { + "balance": "0x71afd498d0000", + "nonce": "0x0" + }, + "71a376962aa4a1245325857499324da8ede63c2d": { + "balance": "0xa65e86fd2a3800", + "nonce": "0x2" + }, + "2a1087740badcff415faa0b6379f12fa7628d397": { + "balance": "0x1550f7dca70000", + "nonce": "0x0" + }, + "5bb093d8870727b51e1746af83984291f41e8a4b": { + "balance": "0x9536c708910000", + "nonce": "0x0" + }, + "bb3da31029cd22bcec9615322c43663741b510fd": { + "balance": "0x11c37937e08000", + "nonce": "0x0" + }, + "4e59b44847b379578588920ca78fbf26c0b4956c": { + "code": "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3", + "balance": "0x0" + }, + "1820a4B7618BdE71Dce8cdc73aAB6C95905faD24": { + "code": "0x608060405234801561001057600080fd5b50600436106100a5576000357c010000000000000000000000000000000000000000000000000000000090048063a41e7d5111610078578063a41e7d51146101d4578063aabbb8ca1461020a578063b705676514610236578063f712f3e814610280576100a5565b806329965a1d146100aa5780633d584063146100e25780635df8122f1461012457806365ba36c114610152575b600080fd5b6100e0600480360360608110156100c057600080fd5b50600160a060020a038135811691602081013591604090910135166102b6565b005b610108600480360360208110156100f857600080fd5b5035600160a060020a0316610570565b60408051600160a060020a039092168252519081900360200190f35b6100e06004803603604081101561013a57600080fd5b50600160a060020a03813581169160200135166105bc565b6101c26004803603602081101561016857600080fd5b81019060208101813564010000000081111561018357600080fd5b82018360208201111561019557600080fd5b803590602001918460018302840111640100000000831117156101b757600080fd5b5090925090506106b3565b60408051918252519081900360200190f35b6100e0600480360360408110156101ea57600080fd5b508035600160a060020a03169060200135600160e060020a0319166106ee565b6101086004803603604081101561022057600080fd5b50600160a060020a038135169060200135610778565b61026c6004803603604081101561024c57600080fd5b508035600160a060020a03169060200135600160e060020a0319166107ef565b604080519115158252519081900360200190f35b61026c6004803603604081101561029657600080fd5b508035600160a060020a03169060200135600160e060020a0319166108aa565b6000600160a060020a038416156102cd57836102cf565b335b9050336102db82610570565b600160a060020a031614610339576040805160e560020a62461bcd02815260206004820152600f60248201527f4e6f7420746865206d616e616765720000000000000000000000000000000000604482015290519081900360640190fd5b6103428361092a565b15610397576040805160e560020a62461bcd02815260206004820152601a60248201527f4d757374206e6f7420626520616e204552433136352068617368000000000000604482015290519081900360640190fd5b600160a060020a038216158015906103b85750600160a060020a0382163314155b156104ff5760405160200180807f455243313832305f4143434550545f4d4147494300000000000000000000000081525060140190506040516020818303038152906040528051906020012082600160a060020a031663249cb3fa85846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600160a060020a0316600160a060020a031681526020019250505060206040518083038186803b15801561047e57600080fd5b505afa158015610492573d6000803e3d6000fd5b505050506040513d60208110156104a857600080fd5b5051146104ff576040805160e560020a62461bcd02815260206004820181905260248201527f446f6573206e6f7420696d706c656d656e742074686520696e74657266616365604482015290519081900360640190fd5b600160a060020a03818116600081815260208181526040808320888452909152808220805473ffffffffffffffffffffffffffffffffffffffff19169487169485179055518692917f93baa6efbd2244243bfee6ce4cfdd1d04fc4c0e9a786abd3a41313bd352db15391a450505050565b600160a060020a03818116600090815260016020526040812054909116151561059a5750806105b7565b50600160a060020a03808216600090815260016020526040902054165b919050565b336105c683610570565b600160a060020a031614610624576040805160e560020a62461bcd02815260206004820152600f60248201527f4e6f7420746865206d616e616765720000000000000000000000000000000000604482015290519081900360640190fd5b81600160a060020a031681600160a060020a0316146106435780610646565b60005b600160a060020a03838116600081815260016020526040808220805473ffffffffffffffffffffffffffffffffffffffff19169585169590951790945592519184169290917f605c2dbf762e5f7d60a546d42e7205dcb1b011ebc62a61736a57c9089d3a43509190a35050565b600082826040516020018083838082843780830192505050925050506040516020818303038152906040528051906020012090505b92915050565b6106f882826107ef565b610703576000610705565b815b600160a060020a03928316600081815260208181526040808320600160e060020a031996909616808452958252808320805473ffffffffffffffffffffffffffffffffffffffff19169590971694909417909555908152600284528181209281529190925220805460ff19166001179055565b600080600160a060020a038416156107905783610792565b335b905061079d8361092a565b156107c357826107ad82826108aa565b6107b85760006107ba565b815b925050506106e8565b600160a060020a0390811660009081526020818152604080832086845290915290205416905092915050565b6000808061081d857f01ffc9a70000000000000000000000000000000000000000000000000000000061094c565b909250905081158061082d575080155b1561083d576000925050506106e8565b61084f85600160e060020a031961094c565b909250905081158061086057508015155b15610870576000925050506106e8565b61087a858561094c565b909250905060018214801561088f5750806001145b1561089f576001925050506106e8565b506000949350505050565b600160a060020a0382166000908152600260209081526040808320600160e060020a03198516845290915281205460ff1615156108f2576108eb83836107ef565b90506106e8565b50600160a060020a03808316600081815260208181526040808320600160e060020a0319871684529091529020549091161492915050565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff161590565b6040517f01ffc9a7000000000000000000000000000000000000000000000000000000008082526004820183905260009182919060208160248189617530fa90519096909550935050505056fea165627a7a72305820377f4a2d4301ede9949f163f319021a6e9c687c292a5e2b2c4734c126b524e6c0029", + "balance": "0x0" + }, + "13b0D85CcB8bf860b6b79AF3029fCA081AE9beF2": { + "code": "0x6080604052600436106100435760003560e01c8063076c37b21461004f578063481286e61461007157806356299481146100ba57806366cfa057146100da57600080fd5b3661004a57005b600080fd5b34801561005b57600080fd5b5061006f61006a366004610327565b6100fa565b005b34801561007d57600080fd5b5061009161008c366004610327565b61014a565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b3480156100c657600080fd5b506100916100d5366004610349565b61015d565b3480156100e657600080fd5b5061006f6100f53660046103ca565b610172565b61014582826040518060200161010f9061031a565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe082820381018352601f90910116604052610183565b505050565b600061015683836102e7565b9392505050565b600061016a8484846102f0565b949350505050565b61017d838383610183565b50505050565b6000834710156101f4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e636500000060448201526064015b60405180910390fd5b815160000361025f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f60448201526064016101eb565b8282516020840186f5905073ffffffffffffffffffffffffffffffffffffffff8116610156576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f790000000000000060448201526064016101eb565b60006101568383305b6000604051836040820152846020820152828152600b8101905060ff815360559020949350505050565b61014e806104ad83390190565b6000806040838503121561033a57600080fd5b50508035926020909101359150565b60008060006060848603121561035e57600080fd5b8335925060208401359150604084013573ffffffffffffffffffffffffffffffffffffffff8116811461039057600080fd5b809150509250925092565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000806000606084860312156103df57600080fd5b8335925060208401359150604084013567ffffffffffffffff8082111561040557600080fd5b818601915086601f83011261041957600080fd5b81358181111561042b5761042b61039b565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156104715761047161039b565b8160405282815289602084870101111561048a57600080fd5b826020860160208301376000602084830101528095505050505050925092509256fe608060405234801561001057600080fd5b5061012e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063249cb3fa14602d575b600080fd5b603c603836600460b1565b604e565b60405190815260200160405180910390f35b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915281205460ff16608857600060aa565b7fa2ef4600d742022d532d4747cb3547474667d6f13804902513b2ec01c848f4b45b9392505050565b6000806040838503121560c357600080fd5b82359150602083013573ffffffffffffffffffffffffffffffffffffffff8116811460ed57600080fd5b80915050925092905056fea26469706673582212205ffd4e6cede7d06a5daf93d48d0541fc68189eeb16608c1999a82063b666eb1164736f6c63430008130033a2646970667358221220fdc4a0fe96e3b21c108ca155438d37c9143fb01278a3c1d274948bad89c564ba64736f6c63430008130033", + "balance": "0x0" + }, + "000F3df6D732807Ef1319fB7B8bB8522d0Beac02": { + "code": "0x3373fffffffffffffffffffffffffffffffffffffffe14604d57602036146024575f5ffd5b5f35801560495762001fff810690815414603c575f5ffd5b62001fff01545f5260205ff35b5f5ffd5b62001fff42064281555f359062001fff015500", + "balance": "0x0" + }, + "ba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed": { + "code": "0x60806040526004361061018a5760003560e01c806381503da1116100d6578063d323826a1161007f578063e96deee411610059578063e96deee414610395578063f5745aba146103a8578063f9664498146103bb57600080fd5b8063d323826a1461034f578063ddda0acb1461036f578063e437252a1461038257600080fd5b80639c36a286116100b05780639c36a28614610316578063a7db93f214610329578063c3fe107b1461033c57600080fd5b806381503da1146102d0578063890c283b146102e357806398e810771461030357600080fd5b80632f990e3f116101385780636cec2536116101125780636cec25361461027d57806374637a7a1461029d5780637f565360146102bd57600080fd5b80632f990e3f1461023757806331a7c8c81461024a57806342d654fc1461025d57600080fd5b806327fe18221161016957806327fe1822146101f15780632852527a1461020457806328ddd0461461021757600080fd5b8062d84acb1461018f57806326307668146101cb57806326a32fc7146101de575b600080fd5b6101a261019d366004612915565b6103ce565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6101a26101d9366004612994565b6103e6565b6101a26101ec3660046129db565b610452565b6101a26101ff3660046129db565b6104de565b6101a2610212366004612a39565b610539565b34801561022357600080fd5b506101a2610232366004612a90565b6106fe565b6101a2610245366004612aa9565b61072a565b6101a2610258366004612aa9565b6107bb565b34801561026957600080fd5b506101a2610278366004612b1e565b6107c9565b34801561028957600080fd5b506101a2610298366004612a90565b610823565b3480156102a957600080fd5b506101a26102b8366004612b4a565b61084f565b6101a26102cb3660046129db565b611162565b6101a26102de366004612b74565b6111e8565b3480156102ef57600080fd5b506101a26102fe366004612bac565b611276565b6101a2610311366004612bce565b6112a3565b6101a2610324366004612994565b611505565b6101a2610337366004612c49565b6116f1565b6101a261034a366004612aa9565b611964565b34801561035b57600080fd5b506101a261036a366004612cd9565b6119ed565b6101a261037d366004612c49565b611a17565b6101a2610390366004612bce565b611e0c565b6101a26103a3366004612915565b611e95565b6101a26103b6366004612bce565b611ea4565b6101a26103c9366004612b74565b611f2d565b60006103dd8585858533611a17565b95945050505050565b6000806103f2846120db565b90508083516020850134f59150610408826123d3565b604051819073ffffffffffffffffffffffffffffffffffffffff8416907fb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f790600090a35092915050565b60006104d86104d260408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b836103e6565b92915050565b600081516020830134f090506104f3816123d3565b60405173ffffffffffffffffffffffffffffffffffffffff8216907f4db17dd5e4732fb6da34a148104a592783ca119a1e7bb8829eba6cbadef0b51190600090a2919050565b600080610545856120db565b905060008460601b90506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160148201527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006028820152826037826000f593505073ffffffffffffffffffffffffffffffffffffffff8316610635576040517fc05cee7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed1660048201526024015b60405180910390fd5b604051829073ffffffffffffffffffffffffffffffffffffffff8516907fb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f790600090a36000808473ffffffffffffffffffffffffffffffffffffffff1634876040516106a19190612d29565b60006040518083038185875af1925050503d80600081146106de576040519150601f19603f3d011682016040523d82523d6000602084013e6106e3565b606091505b50915091506106f382828961247d565b505050509392505050565b60006104d87f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed8361084f565b60006107b36107aa60408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b85858533611a17565b949350505050565b60006107b3848484336112a3565b60006040518260005260ff600b53836020527f21c35dbe1b344a2488cf3321d6ce542f8e9f305544ff09e4993a62319a497c1f6040526055600b20601452806040525061d694600052600160345350506017601e20919050565b60006104d8827f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed6107c9565b600060607f9400000000000000000000000000000000000000000000000000000000000000610887600167ffffffffffffffff612d45565b67ffffffffffffffff16841115610902576040517f3c55ab3b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b836000036109c7576040517fd60000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f800000000000000000000000000000000000000000000000000000000000000060368201526037015b6040516020818303038152906040529150611152565b607f8411610a60576040517fd60000000000000000000000000000000000000000000000000000000000000060208201527fff0000000000000000000000000000000000000000000000000000000000000080831660218301527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606088901b16602283015260f886901b1660368201526037016109b1565b60ff8411610b1f576040517fd70000000000000000000000000000000000000000000000000000000000000060208201527fff0000000000000000000000000000000000000000000000000000000000000080831660218301527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606088901b1660228301527f8100000000000000000000000000000000000000000000000000000000000000603683015260f886901b1660378201526038016109b1565b61ffff8411610bff576040517fd80000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f820000000000000000000000000000000000000000000000000000000000000060368201527fffff00000000000000000000000000000000000000000000000000000000000060f086901b1660378201526039016109b1565b62ffffff8411610ce0576040517fd90000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f830000000000000000000000000000000000000000000000000000000000000060368201527fffffff000000000000000000000000000000000000000000000000000000000060e886901b166037820152603a016109b1565b63ffffffff8411610dc2576040517fda0000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f840000000000000000000000000000000000000000000000000000000000000060368201527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b166037820152603b016109b1565b64ffffffffff8411610ea5576040517fdb0000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f850000000000000000000000000000000000000000000000000000000000000060368201527fffffffffff00000000000000000000000000000000000000000000000000000060d886901b166037820152603c016109b1565b65ffffffffffff8411610f89576040517fdc0000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f860000000000000000000000000000000000000000000000000000000000000060368201527fffffffffffff000000000000000000000000000000000000000000000000000060d086901b166037820152603d016109b1565b66ffffffffffffff841161106e576040517fdd0000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f870000000000000000000000000000000000000000000000000000000000000060368201527fffffffffffffff0000000000000000000000000000000000000000000000000060c886901b166037820152603e016109b1565b6040517fde0000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f880000000000000000000000000000000000000000000000000000000000000060368201527fffffffffffffffff00000000000000000000000000000000000000000000000060c086901b166037820152603f0160405160208183030381529060405291505b5080516020909101209392505050565b60006104d86111e260408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b83611505565b600061126f61126860408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b8484610539565b9392505050565b600061126f83837f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed6119ed565b60008451602086018451f090506112b9816123d3565b60405173ffffffffffffffffffffffffffffffffffffffff8216907f4db17dd5e4732fb6da34a148104a592783ca119a1e7bb8829eba6cbadef0b51190600090a26000808273ffffffffffffffffffffffffffffffffffffffff168560200151876040516113279190612d29565b60006040518083038185875af1925050503d8060008114611364576040519150601f19603f3d011682016040523d82523d6000602084013e611369565b606091505b5091509150816113c9577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed816040517fa57ca23900000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed1631156114fb578373ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed73ffffffffffffffffffffffffffffffffffffffff163160405160006040518083038185875af1925050503d8060008114611495576040519150601f19603f3d011682016040523d82523d6000602084013e61149a565b606091505b509092509050816114fb577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed816040517fc2b3f44500000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b5050949350505050565b600080611511846120db565b905060006040518060400160405280601081526020017f67363d3d37363d34f03d5260086018f30000000000000000000000000000000081525090506000828251602084016000f5905073ffffffffffffffffffffffffffffffffffffffff81166115e0576040517fc05cee7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b604051839073ffffffffffffffffffffffffffffffffffffffff8316907f2feea65dd4e9f9cbd86b74b7734210c59a1b2981b5b137bd0ee3e208200c906790600090a361162c83610823565b935060008173ffffffffffffffffffffffffffffffffffffffff1634876040516116569190612d29565b60006040518083038185875af1925050503d8060008114611693576040519150601f19603f3d011682016040523d82523d6000602084013e611698565b606091505b505090506116a681866124ff565b60405173ffffffffffffffffffffffffffffffffffffffff8616907f4db17dd5e4732fb6da34a148104a592783ca119a1e7bb8829eba6cbadef0b51190600090a25050505092915050565b6000806116fd876120db565b9050808651602088018651f59150611714826123d3565b604051819073ffffffffffffffffffffffffffffffffffffffff8416907fb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f790600090a36000808373ffffffffffffffffffffffffffffffffffffffff168660200151886040516117849190612d29565b60006040518083038185875af1925050503d80600081146117c1576040519150601f19603f3d011682016040523d82523d6000602084013e6117c6565b606091505b509150915081611826577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed816040517fa57ca23900000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed163115611958578473ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed73ffffffffffffffffffffffffffffffffffffffff163160405160006040518083038185875af1925050503d80600081146118f2576040519150601f19603f3d011682016040523d82523d6000602084013e6118f7565b606091505b50909250905081611958577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed816040517fc2b3f44500000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b50505095945050505050565b60006107b36119e460408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b858585336116f1565b6000604051836040820152846020820152828152600b8101905060ff815360559020949350505050565b600080611a23876120db565b905060006040518060400160405280601081526020017f67363d3d37363d34f03d5260086018f30000000000000000000000000000000081525090506000828251602084016000f5905073ffffffffffffffffffffffffffffffffffffffff8116611af2576040517fc05cee7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b604051839073ffffffffffffffffffffffffffffffffffffffff8316907f2feea65dd4e9f9cbd86b74b7734210c59a1b2981b5b137bd0ee3e208200c906790600090a3611b3e83610823565b935060008173ffffffffffffffffffffffffffffffffffffffff1687600001518a604051611b6c9190612d29565b60006040518083038185875af1925050503d8060008114611ba9576040519150601f19603f3d011682016040523d82523d6000602084013e611bae565b606091505b50509050611bbc81866124ff565b60405173ffffffffffffffffffffffffffffffffffffffff8616907f4db17dd5e4732fb6da34a148104a592783ca119a1e7bb8829eba6cbadef0b51190600090a260608573ffffffffffffffffffffffffffffffffffffffff1688602001518a604051611c299190612d29565b60006040518083038185875af1925050503d8060008114611c66576040519150601f19603f3d011682016040523d82523d6000602084013e611c6b565b606091505b50909250905081611ccc577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed816040517fa57ca23900000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed163115611dfe578673ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed73ffffffffffffffffffffffffffffffffffffffff163160405160006040518083038185875af1925050503d8060008114611d98576040519150601f19603f3d011682016040523d82523d6000602084013e611d9d565b606091505b50909250905081611dfe577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed816040517fc2b3f44500000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b505050505095945050505050565b60006103dd611e8c60408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b868686866116f1565b60006103dd85858585336116f1565b60006103dd611f2460408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b86868686611a17565b6000808360601b90506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f092505073ffffffffffffffffffffffffffffffffffffffff8216612016576040517fc05cee7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b60405173ffffffffffffffffffffffffffffffffffffffff8316907f4db17dd5e4732fb6da34a148104a592783ca119a1e7bb8829eba6cbadef0b51190600090a26000808373ffffffffffffffffffffffffffffffffffffffff1634866040516120809190612d29565b60006040518083038185875af1925050503d80600081146120bd576040519150601f19603f3d011682016040523d82523d6000602084013e6120c2565b606091505b50915091506120d282828861247d565b50505092915050565b60008060006120e9846125b3565b9092509050600082600281111561210257612102612e02565b1480156121205750600081600281111561211e5761211e612e02565b145b1561215e57604080513360208201524691810191909152606081018590526080016040516020818303038152906040528051906020012092506123cc565b600082600281111561217257612172612e02565b1480156121905750600181600281111561218e5761218e612e02565b145b156121b0576121a9338560009182526020526040902090565b92506123cc565b60008260028111156121c4576121c4612e02565b03612233576040517f13b3a2a100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b600182600281111561224757612247612e02565b1480156122655750600081600281111561226357612263612e02565b145b1561227e576121a9468560009182526020526040902090565b600182600281111561229257612292612e02565b1480156122b0575060028160028111156122ae576122ae612e02565b145b1561231f576040517f13b3a2a100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b61239a60408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b84036123a657836123c9565b604080516020810186905201604051602081830303815290604052805190602001205b92505b5050919050565b73ffffffffffffffffffffffffffffffffffffffff8116158061240b575073ffffffffffffffffffffffffffffffffffffffff81163b155b1561247a576040517fc05cee7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b50565b82158061249f575073ffffffffffffffffffffffffffffffffffffffff81163b155b156124fa577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed826040517fa57ca23900000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b505050565b811580612520575073ffffffffffffffffffffffffffffffffffffffff8116155b80612540575073ffffffffffffffffffffffffffffffffffffffff81163b155b156125af576040517fc05cee7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b5050565b600080606083901c3314801561261057508260141a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f0100000000000000000000000000000000000000000000000000000000000000145b1561262057506000905080915091565b606083901c3314801561265a57507fff00000000000000000000000000000000000000000000000000000000000000601484901a60f81b16155b1561266b5750600090506001915091565b33606084901c036126825750600090506002915091565b606083901c1580156126db57508260141a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f0100000000000000000000000000000000000000000000000000000000000000145b156126ec5750600190506000915091565b606083901c15801561272557507fff00000000000000000000000000000000000000000000000000000000000000601484901a60f81b16155b1561273557506001905080915091565b606083901c61274a5750600190506002915091565b8260141a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f0100000000000000000000000000000000000000000000000000000000000000036127a55750600290506000915091565b8260141a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166000036127e15750600290506001915091565b506002905080915091565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f83011261282c57600080fd5b813567ffffffffffffffff80821115612847576128476127ec565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190828211818310171561288d5761288d6127ec565b816040528381528660208588010111156128a657600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000604082840312156128d857600080fd5b6040516040810181811067ffffffffffffffff821117156128fb576128fb6127ec565b604052823581526020928301359281019290925250919050565b60008060008060a0858703121561292b57600080fd5b84359350602085013567ffffffffffffffff8082111561294a57600080fd5b6129568883890161281b565b9450604087013591508082111561296c57600080fd5b506129798782880161281b565b92505061298986606087016128c6565b905092959194509250565b600080604083850312156129a757600080fd5b82359150602083013567ffffffffffffffff8111156129c557600080fd5b6129d18582860161281b565b9150509250929050565b6000602082840312156129ed57600080fd5b813567ffffffffffffffff811115612a0457600080fd5b6107b38482850161281b565b803573ffffffffffffffffffffffffffffffffffffffff81168114612a3457600080fd5b919050565b600080600060608486031215612a4e57600080fd5b83359250612a5e60208501612a10565b9150604084013567ffffffffffffffff811115612a7a57600080fd5b612a868682870161281b565b9150509250925092565b600060208284031215612aa257600080fd5b5035919050565b600080600060808486031215612abe57600080fd5b833567ffffffffffffffff80821115612ad657600080fd5b612ae28783880161281b565b94506020860135915080821115612af857600080fd5b50612b058682870161281b565b925050612b1585604086016128c6565b90509250925092565b60008060408385031215612b3157600080fd5b82359150612b4160208401612a10565b90509250929050565b60008060408385031215612b5d57600080fd5b612b6683612a10565b946020939093013593505050565b60008060408385031215612b8757600080fd5b612b9083612a10565b9150602083013567ffffffffffffffff8111156129c557600080fd5b60008060408385031215612bbf57600080fd5b50508035926020909101359150565b60008060008060a08587031215612be457600080fd5b843567ffffffffffffffff80821115612bfc57600080fd5b612c088883890161281b565b95506020870135915080821115612c1e57600080fd5b50612c2b8782880161281b565b935050612c3b86604087016128c6565b915061298960808601612a10565b600080600080600060c08688031215612c6157600080fd5b85359450602086013567ffffffffffffffff80821115612c8057600080fd5b612c8c89838a0161281b565b95506040880135915080821115612ca257600080fd5b50612caf8882890161281b565b935050612cbf87606088016128c6565b9150612ccd60a08701612a10565b90509295509295909350565b600080600060608486031215612cee57600080fd5b8335925060208401359150612b1560408501612a10565b60005b83811015612d20578181015183820152602001612d08565b50506000910152565b60008251612d3b818460208701612d05565b9190910192915050565b67ffffffffffffffff828116828216039080821115612d8d577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5092915050565b73ffffffffffffffffffffffffffffffffffffffff831681526040602082015260008251806040840152612dcf816060850160208701612d05565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016060019392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fdfea164736f6c6343000817000a", + "balance": "0x0" + }, + "cA11bde05977b3631167028862bE2a173976CA11": { + "code": "0x6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e1461025a578063bce38bd714610275578063c3077fa914610288578063ee82ac5e1461029b57600080fd5b80634d2301cc146101ec57806372425d9d1461022157806382ad56cb1461023457806386d516e81461024757600080fd5b80633408e470116100c65780633408e47014610191578063399542e9146101a45780633e64a696146101c657806342cbb15c146101d957600080fd5b80630f28c97d146100f8578063174dea711461011a578063252dba421461013a57806327e86d6e1461015b575b600080fd5b34801561010457600080fd5b50425b6040519081526020015b60405180910390f35b61012d610128366004610a85565b6102ba565b6040516101119190610bbe565b61014d610148366004610a85565b6104ef565b604051610111929190610bd8565b34801561016757600080fd5b50437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0140610107565b34801561019d57600080fd5b5046610107565b6101b76101b2366004610c60565b610690565b60405161011193929190610cba565b3480156101d257600080fd5b5048610107565b3480156101e557600080fd5b5043610107565b3480156101f857600080fd5b50610107610207366004610ce2565b73ffffffffffffffffffffffffffffffffffffffff163190565b34801561022d57600080fd5b5044610107565b61012d610242366004610a85565b6106ab565b34801561025357600080fd5b5045610107565b34801561026657600080fd5b50604051418152602001610111565b61012d610283366004610c60565b61085a565b6101b7610296366004610a85565b610a1a565b3480156102a757600080fd5b506101076102b6366004610d18565b4090565b60606000828067ffffffffffffffff8111156102d8576102d8610d31565b60405190808252806020026020018201604052801561031e57816020015b6040805180820190915260008152606060208201528152602001906001900390816102f65790505b5092503660005b8281101561047757600085828151811061034157610341610d60565b6020026020010151905087878381811061035d5761035d610d60565b905060200281019061036f9190610d8f565b6040810135958601959093506103886020850185610ce2565b73ffffffffffffffffffffffffffffffffffffffff16816103ac6060870187610dcd565b6040516103ba929190610e32565b60006040518083038185875af1925050503d80600081146103f7576040519150601f19603f3d011682016040523d82523d6000602084013e6103fc565b606091505b50602080850191909152901515808452908501351761046d577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b5050600101610325565b508234146104e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4d756c746963616c6c333a2076616c7565206d69736d6174636800000000000060448201526064015b60405180910390fd5b50505092915050565b436060828067ffffffffffffffff81111561050c5761050c610d31565b60405190808252806020026020018201604052801561053f57816020015b606081526020019060019003908161052a5790505b5091503660005b8281101561068657600087878381811061056257610562610d60565b90506020028101906105749190610e42565b92506105836020840184610ce2565b73ffffffffffffffffffffffffffffffffffffffff166105a66020850185610dcd565b6040516105b4929190610e32565b6000604051808303816000865af19150503d80600081146105f1576040519150601f19603f3d011682016040523d82523d6000602084013e6105f6565b606091505b5086848151811061060957610609610d60565b602090810291909101015290508061067d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060448201526064016104dd565b50600101610546565b5050509250929050565b43804060606106a086868661085a565b905093509350939050565b6060818067ffffffffffffffff8111156106c7576106c7610d31565b60405190808252806020026020018201604052801561070d57816020015b6040805180820190915260008152606060208201528152602001906001900390816106e55790505b5091503660005b828110156104e657600084828151811061073057610730610d60565b6020026020010151905086868381811061074c5761074c610d60565b905060200281019061075e9190610e76565b925061076d6020840184610ce2565b73ffffffffffffffffffffffffffffffffffffffff166107906040850185610dcd565b60405161079e929190610e32565b6000604051808303816000865af19150503d80600081146107db576040519150601f19603f3d011682016040523d82523d6000602084013e6107e0565b606091505b506020808401919091529015158083529084013517610851577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b50600101610714565b6060818067ffffffffffffffff81111561087657610876610d31565b6040519080825280602002602001820160405280156108bc57816020015b6040805180820190915260008152606060208201528152602001906001900390816108945790505b5091503660005b82811015610a105760008482815181106108df576108df610d60565b602002602001015190508686838181106108fb576108fb610d60565b905060200281019061090d9190610e42565b925061091c6020840184610ce2565b73ffffffffffffffffffffffffffffffffffffffff1661093f6020850185610dcd565b60405161094d929190610e32565b6000604051808303816000865af19150503d806000811461098a576040519150601f19603f3d011682016040523d82523d6000602084013e61098f565b606091505b506020830152151581528715610a07578051610a07576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060448201526064016104dd565b506001016108c3565b5050509392505050565b6000806060610a2b60018686610690565b919790965090945092505050565b60008083601f840112610a4b57600080fd5b50813567ffffffffffffffff811115610a6357600080fd5b6020830191508360208260051b8501011115610a7e57600080fd5b9250929050565b60008060208385031215610a9857600080fd5b823567ffffffffffffffff811115610aaf57600080fd5b610abb85828601610a39565b90969095509350505050565b6000815180845260005b81811015610aed57602081850181015186830182015201610ad1565b81811115610aff576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015610bb1578583037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001895281518051151584528401516040858501819052610b9d81860183610ac7565b9a86019a9450505090830190600101610b4f565b5090979650505050505050565b602081526000610bd16020830184610b32565b9392505050565b600060408201848352602060408185015281855180845260608601915060608160051b870101935082870160005b82811015610c52577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0888703018452610c40868351610ac7565b95509284019290840190600101610c06565b509398975050505050505050565b600080600060408486031215610c7557600080fd5b83358015158114610c8557600080fd5b9250602084013567ffffffffffffffff811115610ca157600080fd5b610cad86828701610a39565b9497909650939450505050565b838152826020820152606060408201526000610cd96060830184610b32565b95945050505050565b600060208284031215610cf457600080fd5b813573ffffffffffffffffffffffffffffffffffffffff81168114610bd157600080fd5b600060208284031215610d2a57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81833603018112610dc357600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112610e0257600080fd5b83018035915067ffffffffffffffff821115610e1d57600080fd5b602001915036819003821315610a7e57600080fd5b8183823760009101908152919050565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1833603018112610dc357600080fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa1833603018112610dc357600080fdfea2646970667358221220bb2b5c71a328032f97c676ae39a1ec2148d3e5d6f73d95e9b17910152d61f16264736f6c634300080c0033", + "balance": "0x0" + }, + "bC10000000000000000000000000000000000000": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x6080604052600436106100e7575f3560e01c806370a0823111610087578063a9059cbb11610057578063a9059cbb1461026c578063d0e30db01461028b578063d505accf14610293578063dd62ed3e146102b2575f5ffd5b806370a08231146101de5780637ecebe001461021257806384b0196e1461023157806395d89b4114610258575f5ffd5b806323b872dd116100c257806323b872dd146101715780632e1a7d4d14610190578063313ce567146101af5780633644e515146101ca575f5ffd5b806306fdde03146100fa578063095ea7b31461012457806318160ddd14610153575f5ffd5b366100f6576100f46102f6565b005b5f5ffd5b348015610105575f5ffd5b5061010e610337565b60405161011b9190610e91565b60405180910390f35b34801561012f575f5ffd5b5061014361013e366004610ec5565b6103c7565b604051901515815260200161011b565b34801561015e575f5ffd5b506002545b60405190815260200161011b565b34801561017c575f5ffd5b5061014361018b366004610eed565b6103e0565b34801561019b575f5ffd5b506100f46101aa366004610f27565b610403565b3480156101ba575f5ffd5b506040516012815260200161011b565b3480156101d5575f5ffd5b5061016361044f565b3480156101e9575f5ffd5b506101636101f8366004610f3e565b6001600160a01b03165f9081526020819052604090205490565b34801561021d575f5ffd5b5061016361022c366004610f3e565b61045d565b34801561023c575f5ffd5b5061024561047a565b60405161011b9796959493929190610f57565b348015610263575f5ffd5b5061010e6104bc565b348015610277575f5ffd5b50610143610286366004610ec5565b6104cb565b6100f46102f6565b34801561029e575f5ffd5b506100f46102ad366004610fed565b6104d8565b3480156102bd575f5ffd5b506101636102cc36600461105a565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6103003334610613565b60405134815233907fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c9060200160405180910390a2565b6060600380546103469061108b565b80601f01602080910402602001604051908101604052809291908181526020018280546103729061108b565b80156103bd5780601f10610394576101008083540402835291602001916103bd565b820191905f5260205f20905b8154815290600101906020018083116103a057829003601f168201915b5050505050905090565b5f336103d481858561064b565b60019150505b92915050565b5f336103ed85828561065d565b6103f88585856106d8565b506001949350505050565b61040d3382610735565b6104173382610769565b60405181815233907f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b659060200160405180910390a250565b5f610458610803565b905090565b6001600160a01b0381165f908152600760205260408120546103da565b5f6060805f5f5f606061048b61092c565b610493610959565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b6060600480546103469061108b565b5f336103d48185856106d8565b834211156105015760405163313c898160e11b8152600481018590526024015b60405180910390fd5b5f7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c988888861054c8c6001600160a01b03165f90815260076020526040902080546001810190915590565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090505f6105a682610986565b90505f6105b5828787876109b2565b9050896001600160a01b0316816001600160a01b0316146105fc576040516325c0072360e11b81526001600160a01b0380831660048301528b1660248201526044016104f8565b6106078a8a8a61064b565b50505050505050505050565b6001600160a01b03821661063c5760405163ec442f0560e01b81525f60048201526024016104f8565b6106475f83836109de565b5050565b6106588383836001610b04565b505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f1981146106d257818110156106c457604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064016104f8565b6106d284848484035f610b04565b50505050565b6001600160a01b03831661070157604051634b637e8f60e11b81525f60048201526024016104f8565b6001600160a01b03821661072a5760405163ec442f0560e01b81525f60048201526024016104f8565b6106588383836109de565b6001600160a01b03821661075e57604051634b637e8f60e11b81525f60048201526024016104f8565b610647825f836109de565b804710156107935760405163cf47918160e01b8152476004820152602481018290526044016104f8565b5f826001600160a01b0316826040515f6040518083038185875af1925050503d805f81146107dc576040519150601f19603f3d011682016040523d82523d5f602084013e6107e1565b606091505b50509050806106585760405163d6bda27560e01b815260040160405180910390fd5b5f306001600160a01b037f0000000000000000000000000165878a594ca255338adfa4d48449f69242eb8f1614801561085b57507f000000000000000000000000000000000000000000000000000000000000092946145b1561088557507f87c221e5254cd88265070541bc79888ac224430b2f23a30c690d50936abee2c590565b610458604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527fd3974318b35c22bdad78531c2e406ce004418eec475a02ecc063f209cbf20828918101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b60606104587f57474254430000000000000000000000000000000000000000000000000000056005610bd6565b60606104587f31000000000000000000000000000000000000000000000000000000000000016006610bd6565b5f6103da610992610803565b8360405161190160f01b8152600281019290925260228201526042902090565b5f5f5f5f6109c288888888610c7f565b9250925092506109d28282610d47565b50909695505050505050565b6001600160a01b038316610a08578060025f8282546109fd91906110c3565b90915550610a789050565b6001600160a01b0383165f9081526020819052604090205481811015610a5a5760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016104f8565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b038216610a9457600280548290039055610ab2565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610af791815260200190565b60405180910390a3505050565b6001600160a01b038416610b2d5760405163e602df0560e01b81525f60048201526024016104f8565b6001600160a01b038316610b5657604051634a1406b160e11b81525f60048201526024016104f8565b6001600160a01b038085165f90815260016020908152604080832093871683529290522082905580156106d257826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610bc891815260200190565b60405180910390a350505050565b606060ff8314610bf057610be983610dff565b90506103da565b818054610bfc9061108b565b80601f0160208091040260200160405190810160405280929190818152602001828054610c289061108b565b8015610c735780601f10610c4a57610100808354040283529160200191610c73565b820191905f5260205f20905b815481529060010190602001808311610c5657829003601f168201915b505050505090506103da565b5f80807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115610cb857505f91506003905082610d3d565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015610d09573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b038116610d3457505f925060019150829050610d3d565b92505f91508190505b9450945094915050565b5f826003811115610d5a57610d5a6110e2565b03610d63575050565b6001826003811115610d7757610d776110e2565b03610d955760405163f645eedf60e01b815260040160405180910390fd5b6002826003811115610da957610da96110e2565b03610dca5760405163fce698f760e01b8152600481018290526024016104f8565b6003826003811115610dde57610dde6110e2565b03610647576040516335e2f38360e21b8152600481018290526024016104f8565b60605f610e0b83610e3c565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f60ff8216601f8111156103da57604051632cd44ac360e21b815260040160405180910390fd5b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610ea36020830184610e63565b9392505050565b80356001600160a01b0381168114610ec0575f5ffd5b919050565b5f5f60408385031215610ed6575f5ffd5b610edf83610eaa565b946020939093013593505050565b5f5f5f60608486031215610eff575f5ffd5b610f0884610eaa565b9250610f1660208501610eaa565b929592945050506040919091013590565b5f60208284031215610f37575f5ffd5b5035919050565b5f60208284031215610f4e575f5ffd5b610ea382610eaa565b60ff60f81b8816815260e060208201525f610f7560e0830189610e63565b8281036040840152610f878189610e63565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b81811015610fdc578351835260209384019390920191600101610fbe565b50909b9a5050505050505050505050565b5f5f5f5f5f5f5f60e0888a031215611003575f5ffd5b61100c88610eaa565b965061101a60208901610eaa565b95506040880135945060608801359350608088013560ff8116811461103d575f5ffd5b9699959850939692959460a0840135945060c09093013592915050565b5f5f6040838503121561106b575f5ffd5b61107483610eaa565b915061108260208401610eaa565b90509250929050565b600181811c9082168061109f57607f821691505b6020821081036110bd57634e487b7160e01b5f52602260045260245ffd5b50919050565b808201808211156103da57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52602160045260245ffdfea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000003": "0x5772617070656420476f617420426974636f696e000000000000000000000028", + "0x0000000000000000000000000000000000000000000000000000000000000004": "0x574742544300000000000000000000000000000000000000000000000000000a" + } + }, + "bC10000000000000000000000000000000000001": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x608060405234801561000f575f5ffd5b506004361061019a575f3560e01c806370a08231116100e857806395d89b4111610093578063c3cda5201161006e578063c3cda52014610392578063d505accf146103a5578063dd62ed3e146103b8578063f1127ed8146103f0575f5ffd5b806395d89b41146103645780639ab24eb01461036c578063a9059cbb1461037f575f5ffd5b806384b0196e116100c357806384b0196e146103175780638e539e8c1461033257806391ddadf414610345575f5ffd5b806370a08231146102c957806379cc6790146102f15780637ecebe0014610304575f5ffd5b80633a46b1a811610148578063587cde1e11610123578063587cde1e1461024b5780635c19a95c1461028e5780636fcfff45146102a1575f5ffd5b80633a46b1a81461021b57806342966c681461022e5780634bf5d7e914610243575f5ffd5b806323b872dd1161017857806323b872dd146101f1578063313ce567146102045780633644e51514610213575f5ffd5b806306fdde031461019e578063095ea7b3146101bc57806318160ddd146101df575b5f5ffd5b6101a661042f565b6040516101b39190611a59565b60405180910390f35b6101cf6101ca366004611a86565b6104bf565b60405190151581526020016101b3565b6002545b6040519081526020016101b3565b6101cf6101ff366004611aae565b6104d8565b604051601281526020016101b3565b6101e36104fb565b6101e3610229366004611a86565b610509565b61024161023c366004611ae8565b61058d565b005b6101a661059a565b610276610259366004611aff565b6001600160a01b039081165f908152600860205260409020541690565b6040516001600160a01b0390911681526020016101b3565b61024161029c366004611aff565b610612565b6102b46102af366004611aff565b610621565b60405163ffffffff90911681526020016101b3565b6101e36102d7366004611aff565b6001600160a01b03165f9081526020819052604090205490565b6102416102ff366004611a86565b61062b565b6101e3610312366004611aff565b610640565b61031f61064a565b6040516101b39796959493929190611b18565b6101e3610340366004611ae8565b61068c565b61034d6106f5565b60405165ffffffffffff90911681526020016101b3565b6101a66106fe565b6101e361037a366004611aff565b61070d565b6101cf61038d366004611a86565b61073c565b6102416103a0366004611bbe565b610749565b6102416103b3366004611c12565b610805565b6101e36103c6366004611c78565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6104036103fe366004611ca9565b61093b565b60408051825165ffffffffffff1681526020928301516001600160d01b031692810192909252016101b3565b60606003805461043e90611ce6565b80601f016020809104026020016040519081016040528092919081815260200182805461046a90611ce6565b80156104b55780601f1061048c576101008083540402835291602001916104b5565b820191905f5260205f20905b81548152906001019060200180831161049857829003601f168201915b5050505050905090565b5f336104cc818585610975565b60019150505b92915050565b5f336104e5858285610987565b6104f0858585610a02565b506001949350505050565b5f610504610a5f565b905090565b5f5f6105136106f5565b90508065ffffffffffff16831061055357604051637669fc0f60e11b81526004810184905265ffffffffffff821660248201526044015b60405180910390fd5b61057c61055f84610b88565b6001600160a01b0386165f90815260096020526040902090610bbe565b6001600160d01b0316949350505050565b6105973382610c71565b50565b60606105a4610ca5565b65ffffffffffff166105b46106f5565b65ffffffffffff16146105da576040516301bfc1c560e61b815260040160405180910390fd5b5060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b3361061d8183610caf565b5050565b5f6104d282610d38565b610636823383610987565b61061d8282610c71565b5f6104d282610d59565b5f6060805f5f5f606061065b610d76565b610663610da3565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b5f5f6106966106f5565b90508065ffffffffffff1683106106d157604051637669fc0f60e11b81526004810184905265ffffffffffff8216602482015260440161054a565b6106e56106dd84610b88565b600a90610bbe565b6001600160d01b03169392505050565b5f610504610ca5565b60606004805461043e90611ce6565b6001600160a01b0381165f90815260096020526040812061072d90610dd0565b6001600160d01b031692915050565b5f336104cc818585610a02565b8342111561076d57604051632341d78760e11b81526004810185905260240161054a565b604080517fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60208201526001600160a01b0388169181019190915260608101869052608081018590525f906107e6906107de9060a00160405160208183030381529060405280519060200120610e0a565b858585610e36565b90506107f28187610e62565b6107fc8188610caf565b50505050505050565b834211156108295760405163313c898160e11b81526004810185905260240161054a565b5f7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886108748c6001600160a01b03165f90815260076020526040902080546001810190915590565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090505f6108ce82610e0a565b90505f6108dd82878787610e36565b9050896001600160a01b0316816001600160a01b031614610924576040516325c0072360e11b81526001600160a01b0380831660048301528b16602482015260440161054a565b61092f8a8a8a610975565b50505050505050505050565b604080518082019091525f80825260208201526109588383610eb4565b9392505050565b5f6109588284611d32565b5f6109588284611d51565b6109828383836001610ee8565b505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f1981146109fc57818110156109ee57604051637dc7a0d960e11b81526001600160a01b0384166004820152602481018290526044810183905260640161054a565b6109fc84848484035f610ee8565b50505050565b6001600160a01b038316610a2b57604051634b637e8f60e11b81525f600482015260240161054a565b6001600160a01b038216610a545760405163ec442f0560e01b81525f600482015260240161054a565b610982838383610fba565b5f306001600160a01b037f0000000000000000000000005fbdb2315678afecb367f032d93f642f64180aa316148015610ab757507f000000000000000000000000000000000000000000000000000000000000092946145b15610ae157507fe007978ecacf9012709c434e8ef8da2ccb041cae2246ec12d2a85b8606da6fad90565b610504604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527fd130d8e4cd0a991f8e0ed7bafef98334c8ceb5ce3efda07a8d1dacbfd6f9b768918101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b5f65ffffffffffff821115610bba576040516306dfcc6560e41b8152603060048201526024810183905260440161054a565b5090565b81545f9081816005811115610c1a575f610bd784610fc5565b610be19085611d70565b5f8881526020902090915081015465ffffffffffff9081169087161015610c0a57809150610c18565b610c15816001611d83565b92505b505b5f610c278787858561112a565b90508015610c6457610c4b87610c3e600184611d70565b5f91825260209091200190565b54660100000000000090046001600160d01b0316610c66565b5f5b979650505050505050565b6001600160a01b038216610c9a57604051634b637e8f60e11b81525f600482015260240161054a565b61061d825f83610fba565b5f61050443610b88565b6001600160a01b038281165f8181526008602052604080822080548686167fffffffffffffffffffffffff0000000000000000000000000000000000000000821681179092559151919094169392849290917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a46109828183610d3386611189565b6111a6565b6001600160a01b0381165f908152600960205260408120546104d29061130f565b6001600160a01b0381165f908152600760205260408120546104d2565b60606105047f474f415445440000000000000000000000000000000000000000000000000006600561133f565b60606105047f3100000000000000000000000000000000000000000000000000000000000001600661133f565b80545f908015610e0257610de983610c3e600184611d70565b54660100000000000090046001600160d01b0316610958565b5f9392505050565b5f6104d2610e16610a5f565b8360405161190160f01b8152600281019290925260228201526042902090565b5f5f5f5f610e46888888886113e8565b925092509250610e5682826114b0565b50909695505050505050565b6001600160a01b0382165f908152600760205260409020805460018101909155818114610982576040516301d4b62360e61b81526001600160a01b03841660048201526024810182905260440161054a565b604080518082019091525f80825260208201526001600160a01b0383165f9081526009602052604090206109589083611568565b6001600160a01b038416610f115760405163e602df0560e01b81525f600482015260240161054a565b6001600160a01b038316610f3a57604051634a1406b160e11b81525f600482015260240161054a565b6001600160a01b038085165f90815260016020908152604080832093871683529290522082905580156109fc57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610fac91815260200190565b60405180910390a350505050565b6109828383836115d8565b5f60018211610fd2575090565b8160017001000000000000000000000000000000008210610ff85760809190911c9060401b5b6801000000000000000082106110135760409190911c9060201b5b640100000000821061102a5760209190911c9060101b5b62010000821061103f5760109190911c9060081b5b61010082106110535760089190911c9060041b5b601082106110665760049190911c9060021b5b600482106110725760011b5b600302600190811c9081858161108a5761108a611d96565b048201901c905060018185816110a2576110a2611d96565b048201901c905060018185816110ba576110ba611d96565b048201901c905060018185816110d2576110d2611d96565b048201901c905060018185816110ea576110ea611d96565b048201901c9050600181858161110257611102611d96565b048201901c905061112181858161111b5761111b611d96565b04821190565b90039392505050565b5f5b81831015611181575f61113f848461163e565b5f8781526020902090915065ffffffffffff86169082015465ffffffffffff16111561116d5780925061117b565b611178816001611d83565b93505b5061112c565b509392505050565b6001600160a01b0381165f908152602081905260408120546104d2565b816001600160a01b0316836001600160a01b0316141580156111c757505f81115b15610982576001600160a01b0383161561126e576001600160a01b0383165f90815260096020526040812081906112099061096a61120486611658565b61168b565b6001600160d01b031691506001600160d01b03169150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051611263929190918252602082015260400190565b60405180910390a250505b6001600160a01b03821615610982576001600160a01b0382165f90815260096020526040812081906112a69061095f61120486611658565b6001600160d01b031691506001600160d01b03169150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051611300929190918252602082015260400190565b60405180910390a25050505050565b5f63ffffffff821115610bba576040516306dfcc6560e41b8152602060048201526024810183905260440161054a565b606060ff831461135957611352836116c3565b90506104d2565b81805461136590611ce6565b80601f016020809104026020016040519081016040528092919081815260200182805461139190611ce6565b80156113dc5780601f106113b3576101008083540402835291602001916113dc565b820191905f5260205f20905b8154815290600101906020018083116113bf57829003601f168201915b505050505090506104d2565b5f80807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561142157505f915060039050826114a6565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015611472573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b03811661149d57505f9250600191508290506114a6565b92505f91508190505b9450945094915050565b5f8260038111156114c3576114c3611daa565b036114cc575050565b60018260038111156114e0576114e0611daa565b036114fe5760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561151257611512611daa565b036115335760405163fce698f760e01b81526004810182905260240161054a565b600382600381111561154757611547611daa565b0361061d576040516335e2f38360e21b81526004810182905260240161054a565b604080518082019091525f8082526020820152825f018263ffffffff168154811061159557611595611dbe565b5f9182526020918290206040805180820190915291015465ffffffffffff81168252660100000000000090046001600160d01b0316918101919091529392505050565b6115e3838383611700565b6001600160a01b038316611633575f6115fb60025490565b90506001600160d01b038082111561163057604051630e58ae9360e11b8152600481018390526024810182905260440161054a565b50505b610982838383611826565b5f61164c6002848418611dd2565b61095890848416611d83565b5f6001600160d01b03821115610bba576040516306dfcc6560e41b815260d060048201526024810183905260440161054a565b5f5f6116b66116986106f5565b6116ae6116a488610dd0565b868863ffffffff16565b87919061189b565b915091505b935093915050565b60605f6116cf836118a8565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b6001600160a01b03831661172a578060025f82825461171f9190611d83565b9091555061179a9050565b6001600160a01b0383165f908152602081905260409020548181101561177c5760405163391434e360e21b81526001600160a01b0385166004820152602481018290526044810183905260640161054a565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b0382166117b6576002805482900390556117d4565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161181991815260200190565b60405180910390a3505050565b6001600160a01b03831661184857611845600a61095f61120484611658565b50505b6001600160a01b03821661186a57611867600a61096a61120484611658565b50505b6001600160a01b038381165f90815260086020526040808220548584168352912054610982929182169116836111a6565b5f806116b68585856118cf565b5f60ff8216601f8111156104d257604051632cd44ac360e21b815260040160405180910390fd5b82545f90819080156119ce575f6118eb87610c3e600185611d70565b805490915065ffffffffffff80821691660100000000000090046001600160d01b031690881682111561193157604051632520601d60e01b815260040160405180910390fd5b8765ffffffffffff168265ffffffffffff160361196d57825465ffffffffffff1666010000000000006001600160d01b038916021783556119c0565b6040805180820190915265ffffffffffff808a1682526001600160d01b03808a1660208085019182528d54600181018f555f8f815291909120945191519092166601000000000000029216919091179101555b94508593506116bb92505050565b50506040805180820190915265ffffffffffff80851682526001600160d01b0380851660208085019182528854600181018a555f8a81529182209551925190931666010000000000000291909316179201919091559050816116bb565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6109586020830184611a2b565b80356001600160a01b0381168114611a81575f5ffd5b919050565b5f5f60408385031215611a97575f5ffd5b611aa083611a6b565b946020939093013593505050565b5f5f5f60608486031215611ac0575f5ffd5b611ac984611a6b565b9250611ad760208501611a6b565b929592945050506040919091013590565b5f60208284031215611af8575f5ffd5b5035919050565b5f60208284031215611b0f575f5ffd5b61095882611a6b565b60ff60f81b8816815260e060208201525f611b3660e0830189611a2b565b8281036040840152611b488189611a2b565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b81811015611b9d578351835260209384019390920191600101611b7f565b50909b9a5050505050505050505050565b803560ff81168114611a81575f5ffd5b5f5f5f5f5f5f60c08789031215611bd3575f5ffd5b611bdc87611a6b565b95506020870135945060408701359350611bf860608801611bae565b9598949750929560808101359460a0909101359350915050565b5f5f5f5f5f5f5f60e0888a031215611c28575f5ffd5b611c3188611a6b565b9650611c3f60208901611a6b565b95506040880135945060608801359350611c5b60808901611bae565b9699959850939692959460a0840135945060c09093013592915050565b5f5f60408385031215611c89575f5ffd5b611c9283611a6b565b9150611ca060208401611a6b565b90509250929050565b5f5f60408385031215611cba575f5ffd5b611cc383611a6b565b9150602083013563ffffffff81168114611cdb575f5ffd5b809150509250929050565b600181811c90821680611cfa57607f821691505b602082108103611d1857634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160d01b0381811683821601908111156104d2576104d2611d1e565b6001600160d01b0382811682821603908111156104d2576104d2611d1e565b818103818111156104d2576104d2611d1e565b808201808211156104d2576104d2611d1e565b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b5f82611dec57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000002": "0x0000000000000000000000000000000000000000033b2e3c9fd0803ce8000000", + "0x0000000000000000000000000000000000000000000000000000000000000003": "0x476f6174204e6574776f726b0000000000000000000000000000000000000018", + "0x0000000000000000000000000000000000000000000000000000000000000004": "0x474f41544544000000000000000000000000000000000000000000000000000c", + "0x000000000000000000000000000000000000000000000000000000000000000a": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x42df54d978308232df5f7d63c0445e00c9e9f8c4eb4d4c22b0f8badf086d40da": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x4f4ded9249ee538b9cb6f0ff7a55254b68cddfac5fdd7f830ce83382bec08977": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x540b5a72faa2463ad7b6e96257f3df9adbe15e6f4ef1a160019203de6a3b6c17": "0x000000000000000000000000000000000000000000a56fa5b99019a5c8000000", + "0x55b0fb7ee6854a4c90517d06cee035cb67a225460ad0f72a5ba96fbf9c7f69fa": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x5c8a026c050bbafa6dcbd612a344da1477aa71c609e295d7f9c1ecd5f82ea9b7": "0x00000000000000000000000000000000000000000295be96e640669720000000", + "0x5eff886ea0ce6ca488a3d6e336d6c0f75f46d19b42c06ce5ee98e42c96d256c7": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x723077b8a1b173adc35e5f0e7e3662fd1208212cb629f9c128551ea7168da722": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8": "0x0000000000000000000000000000033b2e3c9fd0803ce8000000000000000001" + } + }, + "Bc10000000000000000000000000000000000002": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x608060405260043610610071575f3560e01c80639db5dbe41161004c5780639db5dbe4146101245780639e976db114610143578063a9059cbb14610163578063f2fde38b14610182575f5ffd5b806301ffc9a7146100b4578063715018a6146100e85780638da5cb5b146100fe575f5ffd5b366100b057604080513381523460208201527f0553260a2e46b0577270d8992db02d30856ca880144c72d6e9503760946aef13910160405180910390a1005b5f5ffd5b3480156100bf575f5ffd5b506100d36100ce3660046106a3565b6101a1565b60405190151581526020015b60405180910390f35b3480156100f3575f5ffd5b506100fc6101d7565b005b348015610109575f5ffd5b505f546040516001600160a01b0390911681526020016100df565b34801561012f575f5ffd5b506100fc61013e3660046106de565b6101ea565b61015661015136600461071c565b61020b565b6040516100df91906107a3565b34801561016e575f5ffd5b506100fc61017d3660046107d8565b6102d8565b34801561018d575f5ffd5b506100fc61019c366004610802565b610339565b5f6001600160e01b031982166301ffc9a760e01b14806101d157506001600160e01b03198216635513957760e11b145b92915050565b6101df610376565b6101e85f6103a2565b565b6101f2610376565b6102066001600160a01b0384168383610409565b505050565b6060610215610376565b5f546001600160a01b03166001600160a01b0316856001600160a01b0316036102855760405162461bcd60e51b815260206004820152600660248201527f216f776e6572000000000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b6102cf84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050506001600160a01b03881691905084610470565b95945050505050565b6102e0610376565b6102f36001600160a01b03831682610512565b604080516001600160a01b0384168152602081018390527f69ca02dd4edd7bf0a4abb9ed3b7af3f14778db5d61921c7dc7cd545266326de2910160405180910390a15050565b610341610376565b6001600160a01b03811661036a57604051631e4fbdf760e01b81525f600482015260240161027c565b610373816103a2565b50565b5f546001600160a01b031633146101e85760405163118cdaa760e01b815233600482015260240161027c565b5f80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1663a9059cbb60e01b1790526102069084906105ac565b60608147101561049c5760405163cf47918160e01b81524760048201526024810183905260440161027c565b5f5f856001600160a01b031684866040516104b7919061081d565b5f6040518083038185875af1925050503d805f81146104f1576040519150601f19603f3d011682016040523d82523d5f602084013e6104f6565b606091505b509150915061050686838361061e565b925050505b9392505050565b8047101561053c5760405163cf47918160e01b81524760048201526024810182905260440161027c565b5f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114610585576040519150601f19603f3d011682016040523d82523d5f602084013e61058a565b606091505b50509050806102065760405163d6bda27560e01b815260040160405180910390fd5b5f5f60205f8451602086015f885af1806105cb576040513d5f823e3d81fd5b50505f513d915081156105e25780600114156105ef565b6001600160a01b0384163b155b1561061857604051635274afe760e01b81526001600160a01b038516600482015260240161027c565b50505050565b6060826106335761062e8261067a565b61050b565b815115801561064a57506001600160a01b0384163b155b1561067357604051639996b31560e01b81526001600160a01b038516600482015260240161027c565b508061050b565b80511561068a5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b5f602082840312156106b3575f5ffd5b81356001600160e01b03198116811461050b575f5ffd5b6001600160a01b0381168114610373575f5ffd5b5f5f5f606084860312156106f0575f5ffd5b83356106fb816106ca565b9250602084013561070b816106ca565b929592945050506040919091013590565b5f5f5f5f6060858703121561072f575f5ffd5b843561073a816106ca565b9350602085013567ffffffffffffffff811115610755575f5ffd5b8501601f81018713610765575f5ffd5b803567ffffffffffffffff81111561077b575f5ffd5b87602082840101111561078c575f5ffd5b949760209190910196509394604001359392505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f5f604083850312156107e9575f5ffd5b82356107f4816106ca565b946020939093013593505050565b5f60208284031215610812575f5ffd5b813561050b816106ca565b5f82518060208501845e5f92019182525091905056fea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000000": "0x0000000000000000000000001a3e8c63e9490271a9e97d48239fe0a3b68bbdf6" + } + }, + "BC10000000000000000000000000000000000003": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x60806040526004361061018e575f3560e01c80638da5cb5b116100dc578063b3dd64dd11610087578063b9cf8c8f11610062578063b9cf8c8f14610484578063c19dd32014610528578063c8c3c6b614610547578063f2fde38b14610566575f5ffd5b8063b3dd64dd14610427578063b3f33eda14610446578063b670ab5e14610465575f5ffd5b8063a2215ab4116100b7578063a2215ab4146103e7578063a5517aff146103fc578063a81de86914610414575f5ffd5b80638da5cb5b14610383578063904183cb146103a9578063a0ea8451146103c8575f5ffd5b80634e0cd7991161013c578063715018a611610117578063715018a61461033157806384a64c12146103455780638aa4af8914610364575f5ffd5b80634e0cd7991461027a5780635c6650ac1461028e5780635cc0707614610300575f5ffd5b8063278ecde11161016c578063278ecde1146102075780632eff14ec146102285780633396c80914610247575f5ffd5b806301ffc9a7146101925780631af87ddf146101c65780631ccc92c7146101e8575b5f5ffd5b34801561019d575f5ffd5b506101b16101ac36600461197b565b610585565b60405190151581526020015b60405180910390f35b3480156101d1575f5ffd5b506101da6105d6565b6040519081526020016101bd565b3480156101f3575f5ffd5b506101b16102023660046119c1565b6105ea565b348015610212575f5ffd5b506102266102213660046119eb565b610644565b005b348015610233575f5ffd5b50610226610242366004611a13565b610750565b348015610252575f5ffd5b506101da7f000000000000000000000000000000000000000000000000000000000000002081565b348015610285575f5ffd5b506101da610820565b348015610299575f5ffd5b506005546102d29067ffffffffffffffff8082169161ffff68010000000000000000820416916a01000000000000000000009091041683565b6040805167ffffffffffffffff948516815261ffff90931660208401529216918101919091526060016101bd565b34801561030b575f5ffd5b5061031f61031a3660046119eb565b610831565b6040516101bd96959493929190611a40565b34801561033c575f5ffd5b50610226610889565b348015610350575f5ffd5b5061022661035f3660046119eb565b61089c565b34801561036f575f5ffd5b5061022661037e366004611ab0565b6109bd565b34801561038e575f5ffd5b505f546040516001600160a01b0390911681526020016101bd565b3480156103b4575f5ffd5b506102266103c3366004611aee565b610ab4565b3480156103d3575f5ffd5b506102266103e2366004611b38565b610c0e565b3480156103f2575f5ffd5b506101da61012c81565b348015610407575f5ffd5b506101da6402540be40081565b610226610422366004611b51565b610cdf565b348015610432575f5ffd5b50610226610441366004611bcd565b6110a2565b348015610451575f5ffd5b50610226610460366004611ab0565b6112af565b348015610470575f5ffd5b5061022661047f366004611bee565b6113be565b34801561048f575f5ffd5b506004546104e69060e081901b9067ffffffffffffffff640100000000820481169161ffff6c0100000000000000000000000082048116926e01000000000000000000000000000083041691600160b01b90041685565b604080516001600160e01b0319909616865267ffffffffffffffff948516602087015261ffff938416908601529216606084015216608082015260a0016101bd565b348015610533575f5ffd5b506102266105423660046119eb565b611535565b348015610552575f5ffd5b50610226610561366004611b38565b61162d565b348015610571575f5ffd5b50610226610580366004611c28565b611704565b5f6001600160e01b031982166301ffc9a760e01b14806105b557506001600160e01b03198216634388643560e01b145b806105d057506001600160e01b03198216630ff038eb60e31b145b92915050565b6105e76402540be40061012c611c55565b81565b5f5f838360405160200161061592919091825260e01b6001600160e01b031916602082015260240190565b60408051808303601f1901815291815281516020928301205f908152600690925290205460ff16949350505050565b5f6007828154811061065857610658611c6c565b5f9182526020909120600490910201905060038154600160b01b900460ff16600581111561068857610688611a2c565b146106a657604051631dd2188d60e31b815260040160405180910390fd5b805476040000000000000000000000000000000000000000000060ff60b01b1982161782556001600160a01b03163381146106f457604051634ca8886760e01b815260040160405180910390fd5b426003830155600282015460018301546107219161071191611c80565b6001600160a01b03831690611741565b60405183907f2e1897b0591d764356194f7a795238a87c1987c7a877568e50d829d547c92b97905f90a2505050565b6107586117e0565b5f8161ffff16116107b05760405162461bcd60e51b815260206004820152600e60248201527f6e756d62657220746f6f206c6f7700000000000000000000000000000000000060448201526064015b60405180910390fd5b600480547fffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffffffff16600160b01b61ffff8416908102919091179091556040519081527f30b92002139b64ec601b714d1ecccba1212034e735773b3de088e8876f4dfb659060200160405180910390a150565b6105e76402540be4006103e8611c55565b60078181548110610840575f80fd5b5f91825260209091206004909102018054600182015460028301546003909301546001600160a01b0383169450600160a01b830461ffff1693600160b01b90930460ff16929086565b6108916117e0565b61089a5f61180c565b565b6108a7336001611873565b5f600782815481106108bb576108bb611c6c565b5f9182526020909120600490910201905060018154600160b01b900460ff1660058111156108eb576108eb611a2c565b1461090957604051631dd2188d60e31b815260040160405180910390fd5b80546001600160a01b0316331461093357604051634ca8886760e01b815260040160405180910390fd5b61012c8160030154426109469190611c93565b101561096557604051633234675360e21b815260040160405180910390fd5b426003820155805460ff60b01b191676020000000000000000000000000000000000000000000017815560405182907f0106f4416537efff55311ef5e2f9c2a48204fcf84731f2b9d5091d23fc52160c905f90a25050565b6109c56117e0565b81816109e06402540be40067ffffffffffffffff8316611cba565b1580156109f1575060658261ffff16105b610a0e576040516337d4ed5b60e01b815260040160405180910390fd5b6005805471ffffffffffffffffffff000000000000000019166801000000000000000061ffff871690810271ffffffffffffffff000000000000000000001916919091176a010000000000000000000067ffffffffffffffff8716908102919091179092556040805191825260208201929092527f59b73ca79bcb3dcb02c4d2b81e1a2da4c9fd9857ed81cfb16c5431b502f8c71b91015b60405180910390a150505050565b3373bc1000000000000000000000000000000000100014610ae857604051634ca8886760e01b815260040160405180910390fd5b5f8585604051602001610b1292919091825260e01b6001600160e01b031916602082015260240190565b60408051601f1981840301815291815281516020928301205f818152600690935291205490915060ff1615610b895760405162461bcd60e51b815260206004820152600a60248201527f6475706c6963617465640000000000000000000000000000000000000000000060448201526064016107a7565b5f8181526006602052604090819020805460ff19166001179055516001600160a01b038516907f4d2c35ab224c2e654f91bb91c9f4081beef0e0abfc8a59df04254f6d0232213290610bfe90899089908890889093845263ffffffff9290921660208401526040830152606082015260800190565b60405180910390a2505050505050565b610c166117e0565b80670de0b6b3a76400008167ffffffffffffffff16108015610c485750655af3107a40008167ffffffffffffffff1610155b8015610c6a5750610c686402540be40067ffffffffffffffff8316611cba565b155b610c875760405163aabd5a0960e01b815260040160405180910390fd5b6005805467ffffffffffffffff191667ffffffffffffffff84169081179091556040519081527f69458aa02de2093876897ec9cd5653bbdd83360ef731be0da0e3c94bf9a22dba906020015b60405180910390a15050565b610cea336001611873565b81602181118015610cfb5750605b81105b610d475760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642061646472657373000000000000000000000000000000000060448201526064016107a7565b6040805160608101825260055467ffffffffffffffff80821680845261ffff6801000000000000000084041660208501526a0100000000000000000000909204169282019290925234915f9190831015610de35760405162461bcd60e51b815260206004820152600e60248201527f616d6f756e7420746f6f206c6f7700000000000000000000000000000000000060448201526064016107a7565b602081015161ffff1615610e6257612710816020015161ffff1684610e089190611c55565b610e129190611ccd565b91505f816040015167ffffffffffffffff16118015610e3e5750806040015167ffffffffffffffff1682115b15610e5557806040015167ffffffffffffffff1691505b610e5f8284611c93565b92505b5f610e726402540be40085611cba565b90508015610e9357610e848184611c80565b9250610e908185611c93565b93505b5f8661ffff1611610ed95760405162461bcd60e51b815260206004820152601060248201526f696e76616c696420747820707269636560801b60448201526064016107a7565b610eea6402540be40061012c611c55565b610ef89061ffff8816611c55565b610f096402540be4006103e8611c55565b610f139190611c80565b8411610f505760405162461bcd60e51b815260206004820152600c60248201526b756e6166666f726461626c6560a01b60448201526064016107a7565b600780546040805160c08101825233815261ffff8a8116602083019081526001938301848152606084018b9052608084018a90524260a085015293850186555f9590955281517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688600486020180549651909216600160a01b027fffffffffffffffffffff000000000000000000000000000000000000000000009096166001600160a01b0390911617949094178085559151929390929091829060ff60b01b1916600160b01b83600581111561102857611028611a2c565b0217905550606082015181600101556080820151816002015560a082015181600301555050336001600160a01b0316817fbe7c38d37e8132b1d2b29509df9bf58cf1126edf2563c00db0ef3a271fb9f35b87878b8e8e60405161108f959493929190611ce0565b60405180910390a3505050505050505050565b6110ad336001611873565b5f600783815481106110c1576110c1611c6c565b5f9182526020909120600490910201905060018154600160b01b900460ff1660058111156110f1576110f1611a2c565b1461110f57604051631dd2188d60e31b815260040160405180910390fd5b80546001600160a01b0316331461113957604051634ca8886760e01b815260040160405180910390fd5b61012c81600301544261114c9190611c93565b101561116b57604051633234675360e21b815260040160405180910390fd5b805461ffff600160a01b9091048116908316116111bd5760405162461bcd60e51b815260206004820152601060248201526f696e76616c696420747820707269636560801b60448201526064016107a7565b6111ce6402540be40061012c611c55565b6111dc9061ffff8416611c55565b6111ed6402540be4006103e8611c55565b6111f79190611c80565b8160010154116112385760405162461bcd60e51b815260206004820152600c60248201526b756e6166666f726461626c6560a01b60448201526064016107a7565b80547fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff16600160a01b61ffff841690810291909117825542600383015560405190815283907f19875a7124af51c604454b74336ce2168c45bceade9d9a1e6dfae9ba7d31b7fa9060200160405180910390a2505050565b6112b76117e0565b81816112d26402540be40067ffffffffffffffff8316611cba565b1580156112e3575060658261ffff16105b611300576040516337d4ed5b60e01b815260040160405180910390fd5b600480547fffffffffffffffffffff00000000000000000000ffffffffffffffffffffffff166c0100000000000000000000000061ffff87169081027fffffffffffffffffffff0000000000000000ffffffffffffffffffffffffffff16919091176e01000000000000000000000000000067ffffffffffffffff8716908102919091179092556040805191825260208201929092527f1007ff7aec53e9626ce51f25d4e093f290f60da8019c8cf489f0ae2f21ebf76a9101610aa6565b3373bc10000000000000000000000000000000001000146113f257604051634ca8886760e01b815260040160405180910390fd5b5f6007858154811061140657611406611c6c565b5f91825260209091206004909102018054909150600160b01b900460ff16600181600581111561143857611438611a2c565b14806114555750600281600581111561145357611453611a2c565b145b61145d575f5ffd5b815460ff60b01b1916760500000000000000000000000000000000000000000000178255426003830155600282015480156114b0576114b073bc1000000000000000000000000000000000000282611741565b60018301546040515f91906114c49061196f565b82906040518091039083f5915050801580156114e2573d5f5f3e3d5ffd5b50506040805187815263ffffffff8716602082015290810185905287907fb74f5dbf34aabe02f20ff775b898acf1a9f70e4fbd48ad50548acae86e1ccd789060600160405180910390a250505050505050565b3373bc100000000000000000000000000000000010001461156957604051634ca8886760e01b815260040160405180910390fd5b5f6007828154811061157d5761157d611c6c565b5f91825260209091206004909102018054909150600160b01b900460ff1660018160058111156115af576115af611a2c565b14806115cc575060028160058111156115ca576115ca611a2c565b145b6115d4575f5ffd5b815460ff60b01b191676030000000000000000000000000000000000000000000017825542600383015560405183907f829a8683c544ad289ce92d3ce06e9ebad69b18a6916e60ec766c2c217461d8e9905f90a2505050565b6116356117e0565b80670de0b6b3a76400008167ffffffffffffffff161080156116675750655af3107a40008167ffffffffffffffff1610155b801561168957506116876402540be40067ffffffffffffffff8316611cba565b155b6116a65760405163aabd5a0960e01b815260040160405180910390fd5b600480546bffffffffffffffff00000000191664010000000067ffffffffffffffff8516908102919091179091556040519081527f7aa20a242ea0b0f7b0141c56aaad636eb2b2077c9c27d09a8282f6931f486a2190602001610cd3565b61170c6117e0565b6001600160a01b03811661173557604051631e4fbdf760e01b81525f60048201526024016107a7565b61173e8161180c565b50565b8047101561176b5760405163cf47918160e01b8152476004820152602481018290526044016107a7565b5f826001600160a01b0316826040515f6040518083038185875af1925050503d805f81146117b4576040519150601f19603f3d011682016040523d82523d5f602084013e6117b9565b606091505b50509050806117db5760405163d6bda27560e01b815260040160405180910390fd5b505050565b5f546001600160a01b0316331461089a5760405163118cdaa760e01b81523360048201526024016107a7565b5f80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b7f0000000000000000000000000000000000000000000000000000000000000000156118ec576001600160a01b0382165f908152600360205260409020544390036118d157604051631736a31960e01b815260040160405180910390fd5b6001600160a01b0382165f9081526003602052604090204390555b805f036118f7575050565b600154430361191e5780600180015f8282546119139190611c80565b909155506119289050565b4360015560028190555b6002547f0000000000000000000000000000000000000000000000000000000000000020101561196b5760405163a74c1c5f60e01b815260040160405180910390fd5b5050565b600880611d2883390190565b5f6020828403121561198b575f5ffd5b81356001600160e01b0319811681146119a2575f5ffd5b9392505050565b803563ffffffff811681146119bc575f5ffd5b919050565b5f5f604083850312156119d2575f5ffd5b823591506119e2602084016119a9565b90509250929050565b5f602082840312156119fb575f5ffd5b5035919050565b803561ffff811681146119bc575f5ffd5b5f60208284031215611a23575f5ffd5b6119a282611a02565b634e487b7160e01b5f52602160045260245ffd5b6001600160a01b038716815261ffff8616602082015260c0810160068610611a7657634e487b7160e01b5f52602160045260245ffd5b8560408301528460608301528360808301528260a0830152979650505050505050565b803567ffffffffffffffff811681146119bc575f5ffd5b5f5f60408385031215611ac1575f5ffd5b611aca83611a02565b91506119e260208401611a99565b80356001600160a01b03811681146119bc575f5ffd5b5f5f5f5f5f60a08688031215611b02575f5ffd5b85359450611b12602087016119a9565b9350611b2060408701611ad8565b94979396509394606081013594506080013592915050565b5f60208284031215611b48575f5ffd5b6119a282611a99565b5f5f5f60408486031215611b63575f5ffd5b833567ffffffffffffffff811115611b79575f5ffd5b8401601f81018613611b89575f5ffd5b803567ffffffffffffffff811115611b9f575f5ffd5b866020828401011115611bb0575f5ffd5b602091820194509250611bc4908501611a02565b90509250925092565b5f5f60408385031215611bde575f5ffd5b823591506119e260208401611a02565b5f5f5f5f60808587031215611c01575f5ffd5b8435935060208501359250611c18604086016119a9565b9396929550929360600135925050565b5f60208284031215611c38575f5ffd5b6119a282611ad8565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176105d0576105d0611c41565b634e487b7160e01b5f52603260045260245ffd5b808201808211156105d0576105d0611c41565b818103818111156105d0576105d0611c41565b634e487b7160e01b5f52601260045260245ffd5b5f82611cc857611cc8611ca6565b500690565b5f82611cdb57611cdb611ca6565b500490565b85815284602082015261ffff8416604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f909201601f1916010194935050505056fe608060405230fffea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000000": "0x000000000000000000000000853f96ed28e776afd7c56fbe19b04e94febfdbe1", + "0x0000000000000000000000000000000000000000000000000000000000000004": "0x00000000000000000006000000000000000000000001c6bf52634000474f4154", + "0x0000000000000000000000000000000000000000000000000000000000000005": "0x00000000000000000000000000000000000000000000000a0001c6bf52634000", + "0x31773ce5641d458709b34148820535392ad7c1dfa8a7baea3de330df9accc8e1": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x83fb2464e123174ae6807273604c4e9b79a7a011b35c1c9364c1e7e1c555e844": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0xc9d1a8397eefa80091b6951ed20375ea61f0277a812b9d6eb071ba297e223130": "0x0000000000000000000000000000000000000000000000000000000000000001" + } + }, + "bC10000000000000000000000000000000000004": { + "balance": "0x14d1120d7b160000", + "nonce": "0x1", + "code": "0x6080604052600436106101d9575f3560e01c80635ba3a6a5116100fd578063bc01763711610092578063e486033911610062578063e4860339146105c4578063e4a28a521461063d578063e6a36cb61461066c578063f2fde38b1461068b575f5ffd5b8063bc01763714610548578063bd12835014610567578063bd9fadb514610586578063daea85c5146105a5575f5ffd5b80638da5cb5b116100cd5780638da5cb5b146104e15780639d879990146104fd578063aa94def21461051c578063af38d7571461052f575f5ffd5b80635ba3a6a51461045c5780635d0341ba1461047b578063715018a6146104b957806380e9071b146104cd575f5ffd5b806323435e2f1161017357806349a0bf8e1161014357806349a0bf8e146103d1578063505bd3da146103e5578063551b3cd21461041057806359e5332d1461043b575f5ffd5b806323435e2f14610341578063293cdbf1146103775780633396c8091461038b578063423905f2146103be575f5ffd5b80631485ff78116101ae5780631485ff78146102a1578063160e3f3d146102c45780631eeea1f3146102e357806321c0b34214610322575f5ffd5b806252c9e1146101dd578062aba51a146101fe578063022914a71461021d57806309e3faa71461026e575b5f5ffd5b3480156101e8575f5ffd5b506101fc6101f73660046124ef565b6106aa565b005b348015610209575f5ffd5b506101fc610218366004612537565b61078d565b348015610228575f5ffd5b5061025161023736600461257f565b60086020525f90815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610279575f5ffd5b506102517f000000000000000000000000bc1000000000000000000000000000000000000181565b3480156102ac575f5ffd5b506102b660055481565b604051908152602001610265565b3480156102cf575f5ffd5b506101fc6102de36600461259f565b610831565b3480156102ee575f5ffd5b506103026102fd3660046125cc565b6108db565b604080516001600160a01b03938416815292909116602083015201610265565b34801561032d575f5ffd5b506101fc61033c3660046124ef565b6108f8565b34801561034c575f5ffd5b506102b661035b3660046124ef565b600b60209081525f928352604080842090915290825290205481565b348015610382575f5ffd5b506101fc610a20565b348015610396575f5ffd5b506102b67f000000000000000000000000000000000000000000000000000000000000002081565b6101fc6103cc3660046125f4565b610a83565b3480156103dc575f5ffd5b506102b6600881565b3480156103f0575f5ffd5b506102b66103ff36600461257f565b600c6020525f908152604090205481565b34801561041b575f5ffd5b506102b661042a36600461257f565b600a6020525f908152604090205481565b348015610446575f5ffd5b5061044f610ca3565b604051610265919061263a565b348015610467575f5ffd5b506101fc610476366004612691565b610d94565b348015610486575f5ffd5b506104a961049536600461257f565b600d6020525f908152604090205460ff1681565b6040519015158152602001610265565b3480156104c4575f5ffd5b506101fc61109c565b3480156104d8575f5ffd5b506101fc6110af565b3480156104ec575f5ffd5b505f546001600160a01b0316610251565b348015610508575f5ffd5b506101fc6105173660046126d0565b611146565b6101fc61052a366004612740565b6113d7565b34801561053a575f5ffd5b506007546104a99060ff1681565b348015610553575f5ffd5b506101fc6105623660046126d0565b6114be565b348015610572575f5ffd5b506101fc61058136600461278f565b611567565b348015610591575f5ffd5b506101fc6105a03660046127b7565b61180a565b3480156105b0575f5ffd5b506101fc6105bf36600461257f565b611924565b3480156105cf575f5ffd5b506106126105de36600461257f565b60096020525f908152604090208054600182015460029092015460ff82169261010090920467ffffffffffffffff16919084565b60408051941515855267ffffffffffffffff9093166020850152918301526060820152608001610265565b348015610648575f5ffd5b50610653620f424081565b60405167ffffffffffffffff9091168152602001610265565b348015610677575f5ffd5b506101fc6106863660046127e1565b6119b8565b348015610696575f5ffd5b506101fc6106a536600461257f565b611c00565b6001600160a01b038083165f90815260086020526040902054839116803381146106f8576040516370a4337d60e11b81526001600160a01b0390911660048201526024015b60405180910390fd5b506001600160a01b0383166107205760405163f6b2911f60e01b815260040160405180910390fd5b6001600160a01b038481165f8181526008602090815260409182902080546001600160a01b031916948816948517905581519283528201929092527fadd4071c89e561d58065ade5130c43b17b1101714bca7d91d2515ba1cb9fc97691015b60405180910390a150505050565b3373bc10000000000000000000000000000000001001146107c15760405163a8af0d7960e01b815260040160405180910390fd5b6001600160a01b038216158015906107d857505f81115b156107f1576107f16001600160a01b0383168483611c3a565b6040805167ffffffffffffffff86168152602081018390527f31fa984883dfea329532d399d9106031006364f445ef2351a45c0d9cbc4ec727910161077f565b610839611cb3565b5f811161085957604051630dd484e760e41b815260040160405180910390fd5b61088e6001600160a01b037f000000000000000000000000bc1000000000000000000000000000000000000116333084611cdf565b8060055f82825461089f9190612852565b90915550506040518181527f41891e803e84c188180caa0f073ce4235b8002dac887a69fcdcae1d295951fa0906020015b60405180910390a150565b5f5f6108e683611d18565b6108ef84611e30565b91509150915091565b6001600160a01b038083165f9081526008602052604090205483911680338114610941576040516370a4337d60e11b81526001600160a01b0390911660048201526024016106ef565b5083600161094f8282611e60565b6001600160a01b0385166109765760405163f6b2911f60e01b815260040160405180910390fd5b600480547fa983a6cfc4bd1095dac7b145ae020ba08e16cc7efa2051cc6b77e4011b9ee99b9167ffffffffffffffff909116905f6109b383612865565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508787604051610a109392919067ffffffffffffffff9390931683526001600160a01b03918216602084015216604082015260600190565b60405180910390a1505050505050565b610a28611cb3565b60075460ff1615610a4c5760405163eef336d960e01b815260040160405180910390fd5b6007805460ff191660011790556040517f8b1bc2671f5913bb778240df66342565720db9b7a01e7e78190ae6aa1e4bd0f3905f90a1565b600654610aa3576040516314d2abd360e21b815260040160405180910390fd5b5f610aad85611d18565b90505f468233604051602001610aec93929190928352606091821b6bffffffffffffffffffffffff199081166020850152911b16603482015260480190565b604051602081830303815290604052805190602001209050610b1081848787611f58565b6001600160a01b0316610b2287611e30565b6001600160a01b031614610b4957604051630e751dc360e31b815260040160405180910390fd5b6001600160a01b038281165f9081526008602052604090205483911615610b8f5760405163107f863360e21b81526001600160a01b0390911660048201526024016106ef565b506001600160a01b0382165f908152600d602052604090205460ff1680610bdf57505f8052600d6020527f81955a0a11e65eac625c29e8882660bae4e165a75d72780094acae8ece9a29ee5460ff165b8290610c0a57604051633e55e12b60e11b81526001600160a01b0390911660048201526024016106ef565b50600654610c24908390610c1f906001612852565b611e60565b6001600160a01b0382165f908152600860205260409081902080546001600160a01b0319163390811790915590517ff3aa84440b70359721372633122645674adb6dbb72622a222627248ef053a7dd91610c82918591908a90612891565b60405180910390a1610c9b82610c96610ca3565b611f84565b505050505050565b6006546060905f9067ffffffffffffffff811115610cc357610cc36128b8565b604051908082528060200260200182016040528015610d0757816020015b604080518082019091525f8082526020820152815260200190600190039081610ce15790505b5090505f5b600654811015610d8e575f60068281548110610d2a57610d2a6128cc565b5f9182526020808320909101546040805180820182526001600160a01b039092168083528085526009845293206002015491810191909152845191925090849084908110610d7a57610d7a6128cc565b602090810291909101015250600101610d0c565b50919050565b610d9c611cb3565b6001600160a01b0384165f9081526009602052604090205460ff1615610dd557604051632ae3f45d60e11b815260040160405180910390fd5b6001600160a01b0384161580610e4d5750836001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e22573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e4691906128e0565b60ff166012145b610e6a57604051638785ff4f60e01b815260040160405180910390fd5b5f8367ffffffffffffffff16118015610e8f5750620f424067ffffffffffffffff8416105b610eac5760405163018a49e560e01b815260040160405180910390fd5b60408051608081018252600180825267ffffffffffffffff8681166020808501828152858701898152606087018981526001600160a01b038d165f818152600986528a902098518954945168ffffffffffffffffff1990951690151568ffffffffffffffff0019161761010094909716939093029590951787555194860194909455915160029094019390935583519182528101919091527fb59bf4596e5415117fb4625044cb5b0ca5b273742825b026d06afe82a48e6217910160405180910390a1604080516001600160a01b0386168152602081018490527f60ae001243ab6d87904798d941cb0935a98451d5ddac12c259193ddc12db0ae9910160405180910390a1801561109657811580610fc45750808210155b82829091610fee5760405163068ade6560e31b8152600481019290925260248201526044016106ef565b505060065460081161101357604051632970307360e11b815260040160405180910390fd5b600680546001810182555f919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319166001600160a01b03861690811790915560408051918252602082018390527f326e29ab1c62c7d77fdfb302916e82e1a54f3b9961db75ee7e18afe488a0e92d910161077f565b50505050565b6110a4611cb3565b6110ad5f612299565b565b60075460ff166110d2576040516335b43c0360e11b815260040160405180910390fd5b335f908152600c6020526040902054806110ff576040516301e1880f60e51b815260040160405180910390fd5b335f818152600c6020526040812055611143907f000000000000000000000000bc100000000000000000000000000000000000016001600160a01b03169083611c3a565b50565b61114e611cb3565b6001600160a01b0382165f90815260096020526040902054829060ff166111945760405163de6137d160e01b81526001600160a01b0390911660048201526024016106ef565b506001600160a01b0382165f908152600960205260409020600201548181036111d05760405163aabb9c6360e01b815260040160405180910390fd5b6001600160a01b0383165f81815260096020908152604091829020600201859055815192835282018490527f326e29ab1c62c7d77fdfb302916e82e1a54f3b9961db75ee7e18afe488a0e92d910160405180910390a18015801561123357505f82115b156112ac5760065460081161125b57604051632970307360e11b815260040160405180910390fd5b50600680546001810182555f919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0384166001600160a01b03199091161790555050565b5f811180156112ba57505f82115b156112c457505050565b5f5b60065481101561109657836001600160a01b0316600682815481106112ed576112ed6128cc565b5f918252602090912001546001600160a01b0316036113cb57600654611315906001906128fb565b8114611392576006805461132b906001906128fb565b8154811061133b5761133b6128cc565b5f91825260209091200154600680546001600160a01b039092169183908110611366576113666128cc565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055505b60068054806113a3576113a361290e565b5f8281526020902081015f1990810180546001600160a01b0319169055019055506113d39050565b6001016112c6565b5050565b6001600160a01b038084165f9081526008602052604090205484911680338114611420576040516370a4337d60e11b81526001600160a01b0390911660048201526024016106ef565b50848361142d8282611e60565b841580159061143d575060088511155b61145a57604051632970307360e11b815260040160405180910390fd5b6114b5878787808060200260200160405190810160405280939291908181526020015f905b828210156114ab5761149c60408302860136819003810190612922565b8152602001906001019061147f565b5050505050611f84565b50505050505050565b6114c6611cb3565b6001600160a01b0382165f90815260096020526040902054829060ff1661150c5760405163de6137d160e01b81526001600160a01b0390911660048201526024016106ef565b506001600160a01b0382165f81815260096020908152604091829020600101849055815192835282018390527f60ae001243ab6d87904798d941cb0935a98451d5ddac12c259193ddc12db0ae9910160405180910390a15050565b61156f611cb3565b6001600160a01b0382165f90815260096020526040902054829060ff166115b55760405163de6137d160e01b81526001600160a01b0390911660048201526024016106ef565b50620f424067ffffffffffffffff8216106115e35760405163018a49e560e01b815260040160405180910390fd5b604080516001600160a01b038416815267ffffffffffffffff831660208201527fb59bf4596e5415117fb4625044cb5b0ca5b273742825b026d06afe82a48e6217910160405180910390a167ffffffffffffffff81161561167b576001600160a01b0382165f908152600960205260409020805467ffffffffffffffff83166101000268ffffffffffffffff00199091161790555050565b6001600160a01b0382165f908152600960205260408120600281018054825468ffffffffffffffffff191683556001909201839055919091551515806116c057505050565b5f5b60065481101561109657836001600160a01b0316600682815481106116e9576116e96128cc565b5f918252602090912001546001600160a01b03160361180257600654611711906001906128fb565b811461178e5760068054611727906001906128fb565b81548110611737576117376128cc565b5f91825260209091200154600680546001600160a01b039092169183908110611762576117626128cc565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055505b600680548061179f5761179f61290e565b5f82815260208082205f19908401810180546001600160a01b0319169055909201909255604080516001600160a01b0388168152918201929092527f326e29ab1c62c7d77fdfb302916e82e1a54f3b9961db75ee7e18afe488a0e92d910161077f565b6001016116c2565b3373bc100000000000000000000000000000000010011461183e5760405163a8af0d7960e01b815260040160405180910390fd5b81600554101561184e5760055491505b81156118dc5760075460ff1615611898576118936001600160a01b037f000000000000000000000000bc10000000000000000000000000000000000001168484611c3a565b6118c5565b6001600160a01b0383165f908152600c6020526040812080548492906118bf908490612852565b90915550505b8160055f8282546118d691906128fb565b90915550505b6040805167ffffffffffffffff86168152602081018490529081018290527f2b02cde117ae53d66dc4d0bdf72b2146e0e1070c1428d6274b0f98d628ad99c49060600161077f565b61192c611cb3565b6001600160a01b0381165f908152600d602052604090205460ff161561196557604051632ef470fd60e11b815260040160405180910390fd5b6001600160a01b0381165f818152600d6020908152604091829020805460ff1916600117905590519182527f19996ea5aede4d14af17b07567999b4c9d512663cfdaa4b01313d0c4af7a6ce791016108d0565b6001600160a01b038085165f9081526008602052604090205485911680338114611a01576040516370a4337d60e11b81526001600160a01b0390911660048201526024016106ef565b508583611a0e8282611e60565b8415801590611a1e575060088511155b611a3b57604051632970307360e11b815260040160405180910390fd5b6001600160a01b038716611a625760405163f6b2911f60e01b815260040160405180910390fd5b5f5b85811015611bf5575f878783818110611a7f57611a7f6128cc565b905060400201803603810190611a959190612922565b90505f816020015111611abb57604051630dd484e760e41b815260040160405180910390fd5b6020808201516001600160a01b03808d165f908152600b8452604080822086519093168252919093528220805491929091611af79084906128fb565b909155505060208082015182516001600160a01b03165f908152600a90925260408220805491929091611b2b9084906128fb565b9091555050600480547f40f2a8c5e2e2a9ad2f4e4dfc69825595b526178445c3eb22b02edfd190601db79167ffffffffffffffff909116905f611b6d83612865565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508b8b845f01518560200151604051611be495949392919067ffffffffffffffff9590951685526001600160a01b03938416602086015291831660408501529091166060830152608082015260a00190565b60405180910390a150600101611a64565b505050505050505050565b611c08611cb3565b6001600160a01b038116611c3157604051631e4fbdf760e01b81525f60048201526024016106ef565b61114381612299565b6040516001600160a01b03838116602483015260448201839052611cae91859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506122e8565b505050565b5f546001600160a01b031633146110ad5760405163118cdaa760e01b81523360048201526024016106ef565b6040516001600160a01b0384811660248301528381166044830152606482018390526110969186918216906323b872dd90608401611c67565b5f80602083013560011615611d3157600360f81b611d37565b600160f91b5b6040517fff0000000000000000000000000000000000000000000000000000000000000082166020820152843560218201529091505f9060029060410160408051601f1981840301815290829052611d8e91612984565b602060405180830381855afa158015611da9573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190611dcc919061299a565b9050600381604051602001611de391815260200190565b60408051601f1981840301815290829052611dfd91612984565b602060405180830381855afa158015611e18573d5f5f3e3d5ffd5b5050604051516001600160a01b031695945050505050565b5f81604051602001611e4291906129b1565b60408051601f19818403018152919052805160209091012092915050565b7f000000000000000000000000000000000000000000000000000000000000000115611ed9576001600160a01b0382165f90815260036020526040902054439003611ebe57604051631736a31960e01b815260040160405180910390fd5b6001600160a01b0382165f9081526003602052604090204390555b805f03611ee4575050565b6001544303611f0b5780600180015f828254611f009190612852565b90915550611f159050565b4360015560028190555b6002547f000000000000000000000000000000000000000000000000000000000000002010156113d35760405163a74c1c5f60e01b815260040160405180910390fd5b5f5f5f5f611f6888888888612354565b925092509250611f78828261241c565b50909695505050505050565b345f5b8251811015612275575f838281518110611fa357611fa36128cc565b60209081029190910181015180516001600160a01b03165f908152600983526040908190208151608081018352815460ff811615158252610100900467ffffffffffffffff16818601526001820154928101929092526002015460608201529181015190925061202657604051630dd484e760e41b815260040160405180910390fd5b602081015182519067ffffffffffffffff166120615760405163de6137d160e01b81526001600160a01b0390911660048201526024016106ef565b506001600160a01b038087165f908152600b6020908152604080832086519094168352929052205460608201518110156120e7575f8183606001516120a691906128fb565b6020850151855191925082908111156120e3576040516349cd40ff60e01b81526001600160a01b03909216600483015260248201526044016106ef565b5050505b82516001600160a01b031661212757602083015185811461211e57604051630a61be9f60e41b81526004016106ef91815260200190565b505f9450612147565b60208301518351612147916001600160a01b039091169033903090611cdf565b60208084015184516001600160a01b03165f908152600a90925260408220546121709190612852565b905082604001515f1480612188575080836040015110155b8451604085015190916121bf5760405163421dca0560e11b81526001600160a01b03909216600483015260248201526044016106ef565b505083516001600160a01b039081165f908152600a60209081526040808320859055818801518c85168452600b835281842089519095168452939091528120805490919061220e908490612852565b90915550508351602080860151604080516001600160a01b038d811682529094169284019290925282820152517fec36c0364d931187a76cf66d7eee08fad0ec2e8b7458a8d8b26b36769d4d13f39181900360600190a1505060019092019150611f879050565b505f811561109657604051630a61be9f60e41b81526004016106ef91815260200190565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f5f60205f8451602086015f885af180612307576040513d5f823e3d81fd5b50505f513d9150811561231e57806001141561232b565b6001600160a01b0384163b155b1561109657604051635274afe760e01b81526001600160a01b03851660048201526024016106ef565b5f80807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561238d57505f91506003905082612412565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa1580156123de573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b03811661240957505f925060019150829050612412565b92505f91508190505b9450945094915050565b5f82600381111561242f5761242f6129be565b03612438575050565b600182600381111561244c5761244c6129be565b0361246a5760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561247e5761247e6129be565b0361249f5760405163fce698f760e01b8152600481018290526024016106ef565b60038260038111156124b3576124b36129be565b036113d3576040516335e2f38360e21b8152600481018290526024016106ef565b80356001600160a01b03811681146124ea575f5ffd5b919050565b5f5f60408385031215612500575f5ffd5b612509836124d4565b9150612517602084016124d4565b90509250929050565b803567ffffffffffffffff811681146124ea575f5ffd5b5f5f5f5f6080858703121561254a575f5ffd5b61255385612520565b9350612561602086016124d4565b925061256f604086016124d4565b9396929550929360600135925050565b5f6020828403121561258f575f5ffd5b612598826124d4565b9392505050565b5f602082840312156125af575f5ffd5b5035919050565b80604081018310156125c6575f5ffd5b92915050565b5f604082840312156125dc575f5ffd5b61259883836125b6565b60ff81168114611143575f5ffd5b5f5f5f5f60a08587031215612607575f5ffd5b61261186866125b6565b93506040850135925060608501359150608085013561262f816125e6565b939692955090935050565b602080825282518282018190525f918401906040840190835b8181101561268657835180516001600160a01b031684526020908101518185015290930192604090920191600101612653565b509095945050505050565b5f5f5f5f608085870312156126a4575f5ffd5b6126ad856124d4565b93506126bb60208601612520565b93969395505050506040820135916060013590565b5f5f604083850312156126e1575f5ffd5b6126ea836124d4565b946020939093013593505050565b5f5f83601f840112612708575f5ffd5b50813567ffffffffffffffff81111561271f575f5ffd5b6020830191508360208260061b8501011115612739575f5ffd5b9250929050565b5f5f5f60408486031215612752575f5ffd5b61275b846124d4565b9250602084013567ffffffffffffffff811115612776575f5ffd5b612782868287016126f8565b9497909650939450505050565b5f5f604083850312156127a0575f5ffd5b6127a9836124d4565b915061251760208401612520565b5f5f5f5f608085870312156127ca575f5ffd5b6127d385612520565b93506126bb602086016124d4565b5f5f5f5f606085870312156127f4575f5ffd5b6127fd856124d4565b935061280b602086016124d4565b9250604085013567ffffffffffffffff811115612826575f5ffd5b612832878288016126f8565b95989497509550505050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156125c6576125c661283e565b5f67ffffffffffffffff821667ffffffffffffffff81036128885761288861283e565b60010192915050565b6001600160a01b038481168252831660208201526080810160408381840137949350505050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156128f0575f5ffd5b8151612598816125e6565b818103818111156125c6576125c661283e565b634e487b7160e01b5f52603160045260245ffd5b5f6040828403128015612933575f5ffd5b506040805190810167ffffffffffffffff8111828210171561296357634e487b7160e01b5f52604160045260245ffd5b60405261296f836124d4565b81526020928301359281019290925250919050565b5f82518060208501845e5f920191825250919050565b5f602082840312156129aa575f5ffd5b5051919050565b6040828237604001919050565b634e487b7160e01b5f52602160045260245ffdfea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000000": "0x000000000000000000000000f1b4ea97bebb568a945345fed882f3d3219b3e44", + "0x0000000000000000000000000000000000000000000000000000000000000001": "0x0000000000000000000000000000000000000000000000000000000000000025", + "0x0000000000000000000000000000000000000000000000000000000000000002": "0x0000000000000000000000000000000000000000000000000000000000000002", + "0x0000000000000000000000000000000000000000000000000000000000000005": "0x000000000000000000000000000000000000000000a56fa5b99019a5c8000000", + "0x0000000000000000000000000000000000000000000000000000000000000006": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x13da86008ba1c6922daee3e07db95305ef49ebced9f5467a0b8613fcc6b343e3": "0x00000000000000000000000000000000000000000000000014d1120d7b160000", + "0x3454f52945b0eb31ef65199d4ed50a00bdc48029f3edfab4bca99f00d65cf7d3": "0x00000000000000000000000009ccd1cb6be49c131c0dd636c95b4e4f5bc549ad", + "0x643ba3a13d141d5e70e7bdf5611576d3a34ef1d454202978704af16a1a2fe641": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x81f83a31df0e3dbe523828d117a3fa2507431288fc1cfd5d94c11f353dc22b00": "0x0000000000000000000000000000000000000000000000000000000000000025", + "0x87794354013f7aed0d012b3c5f06425c78a07387a43bacd1d9e25e1f78ae6e15": "0x0000000000000000000000000000000000000000000000000000000000000022", + "0x907e65f49efc4a0b4c7f5fee9e98ba4acd771ef636cde8ea68fb640370b25c54": "0x00000000000000000000000032444c83c841146a92ad936cdd93b93b9898f6b9", + "0x997f5e762f22f1f0e6531484978ee8d5bfe7784a4ca624f758c5ea4add3054bf": "0x00000000000000000000000000000000000000000000000006f05b59d3b20000", + "0xa9bda1f0e089a8936cdc6a0575189dc9bb608d1c81b863712e10e6514a2b3089": "0x000000000000000000000000a3ae64125631f56b1b96b113a79545f4684e67bb", + "0xc7b87d85714e72fbd998140087e14aebfdd9f42bf77d86e41bddb1c31eeb1c60": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0xcd38b080d1543c3d7610686e4ba55aed2a10dfa00dc22fda6e8fc47ae4c58708": "0x00000000000000000000000000000000000000000000000006f05b59d3b20000", + "0xd090d9e47ff66a0e34c1f13ed89011c1d940b90fffd89e77667efabb71145a2b": "0x00000000000000000000000000000000000000000000000006f05b59d3b20000", + "0xd8e5e50362eccd0d72ec2af4053ac497876d213e07428bf2214f905507142fc0": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0xec8156718a8372b1db44bb411437d0870f3e3790d4a08526d024ce1b0b668f6b": "0x0000000000000000000000000000000000000000000000000000000007a12001", + "0xec8156718a8372b1db44bb411437d0870f3e3790d4a08526d024ce1b0b668f6c": "0x00000000000000000000000000000000000000000000001043561a8829300000", + "0xec8156718a8372b1db44bb411437d0870f3e3790d4a08526d024ce1b0b668f6d": "0x00000000000000000000000000000000000000000000000006f05b59d3b20000", + "0xf652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0xfba23eee11fbe8667ac3c208ce9ef26ec97af93b68877ea21122d8440b0d83b3": "0x000000000000000000000000000000000000000000000000000000000000001f" + } + }, + "bc10000000000000000000000000000000000005": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x608060405234801561000f575f5ffd5b5060043610610064575f3560e01c806385df51fd1161004d57806385df51fd1461009d57806394f490bd146100bc578063e405bbc3146100d1575f5ffd5b8063107bf28c1461006857806326a6557a14610086575b5f5ffd5b6100706100da565b60405161007d91906101fe565b60405180910390f35b61008f60015481565b60405190815260200161007d565b61008f6100ab366004610233565b5f9081526003602052604090205490565b6100cf6100ca366004610233565b610165565b005b61008f60025481565b5f80546100e69061024a565b80601f01602080910402602001604051908101604052809291908181526020018280546101129061024a565b801561015d5780601f106101345761010080835404028352916020019161015d565b820191905f5260205f20905b81548152906001019060200180831161014057829003601f168201915b505050505081565b3373bc100000000000000000000000000000000010001461019957604051634ca8886760e01b815260040160405180910390fd5b5f60025f81546101a890610282565b91829055505f8181526003602052604090819020849055519091507fdd5483f1119d050d70b0fe3ed9db0b5f41b3ec55838346cbb624efe0565b0133906101f29083815260200190565b60405180910390a15050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f60208284031215610243575f5ffd5b5035919050565b600181811c9082168061025e57607f821691505b60208210810361027c57634e487b7160e01b5f52602260045260245ffd5b50919050565b5f6001820161029f57634e487b7160e01b5f52601160045260245ffd5b506001019056fea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000000": "0x6d61696e6e65740000000000000000000000000000000000000000000000000e", + "0x0000000000000000000000000000000000000000000000000000000000000001": "0x00000000000000000000000000000000000000000000000000000000000d5ba6", + "0x0000000000000000000000000000000000000000000000000000000000000002": "0x00000000000000000000000000000000000000000000000000000000000d5ba6", + "0xe6d4c1e2facae6a511c19079faafa99ab63bcbefe323de88c92b6269bf0f8292": "0x4b36682d9ecd8faa51090fc45d7e614c656c429d885201000000000000000000" + } + }, + "BC10000000000000000000000000000000000006": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x608060405234801561000f575f5ffd5b50600436106100b9575f3560e01c80638da5cb5b11610072578063a3ec138d11610058578063a3ec138d1461015e578063cd57654314610180578063f2fde38b146101a2575f5ffd5b80638da5cb5b1461011257806398611f121461012c575f5ffd5b8063715018a6116100a2578063715018a6146100ee578063827fb811146100f657806386c1ff68146100ff575f5ffd5b80632ddbd13a146100bd5780637090a943146100d9575b5f5ffd5b6100c660015481565b6040519081526020015b60405180910390f35b6100ec6100e7366004610602565b6101b5565b005b6100ec6103c4565b6100c661010081565b6100ec61010d36600461062a565b6103d7565b5f546040516001600160a01b0390911681526020016100d0565b61014e61013a36600461064a565b60026020525f908152604090205460ff1681565b60405190151581526020016100d0565b61014e61016c36600461062a565b60036020525f908152604090205460ff1681565b61014e61018e36600461062a565b60046020525f908152604090205460ff1681565b6100ec6101b036600461062a565b610517565b6101bd610554565b5f8181526002602052604090205460ff16156102205760405162461bcd60e51b815260206004820152600e60248201527f6475706c696361746564206b657900000000000000000000000000000000000060448201526064015b60405180910390fd5b6001600160a01b0382165f9081526003602052604090205460ff16156102885760405162461bcd60e51b815260206004820152601060248201527f6475706c69636174656420766f746572000000000000000000000000000000006044820152606401610217565b6001600160a01b0382165f9081526004602052604090205460ff16156102f05760405162461bcd60e51b815260206004820152600d60248201527f64656c6574656420766f746572000000000000000000000000000000000000006044820152606401610217565b61010060015f815461030190610675565b9182905550106103535760405162461bcd60e51b815260206004820152600f60248201527f746f6f206d616e7920766f7465727300000000000000000000000000000000006044820152606401610217565b6001600160a01b0382165f8181526003602090815260408083208054600160ff199182168117909255868552600284529382902080549094161790925590518381527f101c617f43dd1b8a54a9d747d9121bbc55e93b88bc50560d782a79c4e28fc838910160405180910390a25050565b6103cc610554565b6103d55f610580565b565b6103df610554565b6001600160a01b0381165f9081526003602052604090205460ff166104465760405162461bcd60e51b815260206004820152600f60248201527f766f746572206e6f7420666f756e6400000000000000000000000000000000006044820152606401610217565b60018054116104975760405162461bcd60e51b815260206004820152600e60248201527f746f6f2066657720766f746572730000000000000000000000000000000000006044820152606401610217565b6001600160a01b0381165f908152600360209081526040808320805460ff1990811690915560049092528220805490911660019081179091558054916104dc8361068d565b90915550506040516001600160a01b038216907f183393fc5cffbfc7d03d623966b85f76b9430f42d3aada2ac3f3deabc78899e8905f90a250565b61051f610554565b6001600160a01b03811661054857604051631e4fbdf760e01b81525f6004820152602401610217565b61055181610580565b50565b5f546001600160a01b031633146103d55760405163118cdaa760e01b8152336004820152602401610217565b5f80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b03811681146105fd575f5ffd5b919050565b5f5f60408385031215610613575f5ffd5b61061c836105e7565b946020939093013593505050565b5f6020828403121561063a575f5ffd5b610643826105e7565b9392505050565b5f6020828403121561065a575f5ffd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b5f6001820161068657610686610661565b5060010190565b5f8161069b5761069b610661565b505f19019056fea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000000": "0x000000000000000000000000e37325b734bd2b6fb5c6b52a7f4e64924ce5ee59", + "0x0000000000000000000000000000000000000000000000000000000000000001": "0x0000000000000000000000000000000000000000000000000000000000000003", + "0x2265dd02e08e0ee36a5e9ce6da32951e363b8c69f4ff80942477d3d2e9e512ba": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x288a5b9bcf6841facb516c72405426ccc637c16b13d98147079c51cd07e901cb": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x3d1b6cb6a1e8fb80e9dec25932bc375fe25b9c04410bd0a1b8a6e0feadada5ea": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x4206cb9bbadbc033b8a96f61fc72f1c5d136e91e83a4389748deac4f4798aa18": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x5d612cf55902f8121082782d907c246831964e30178f0457241031fff86a42ef": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x629e603f7d508c59e4f8d2acdb9972a8a911433feb2fd2c334e50ff62be90dc6": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0xaba13f20df8ae925f0709766b1e827991be081958fac916fc506f4cfb33235aa": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0xbccd416a65e1ae100c689827d7a6c42e3018d262788a21bd80cbe319d18549b5": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0xeb95e26b7db7c270130bc0fa53c0bbd3b0ffaeb093780826ea4879b5020f4d11": "0x0000000000000000000000000000000000000000000000000000000000000001" + } + }, + "Bc10000000000000000000000000000000000007": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063023276f01461002d575b5f5ffd5b61004061003b3660046100f0565b610042565b005b5f5f5f1b82604051610053906100e3565b73ffffffffffffffffffffffffffffffffffffffff90911681526020018190604051809103905ff590508015801561008d573d5f5f3e3d5ffd5b5060405173ffffffffffffffffffffffffffffffffffffffff8083168252919250908316907f587ece4cd19692c5be1a4184503d607d45542d2aca0698c0068f52e09ccb541c9060200160405180910390a25050565b6111178061012b83390190565b5f60208284031215610100575f5ffd5b813573ffffffffffffffffffffffffffffffffffffffff81168114610123575f5ffd5b939250505056fe60c060405234801561000f575f5ffd5b5060405161111738038061111783398101604081905261002e91610233565b806001600160a01b03166306fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa158015610069573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526100909190810190610274565b6040516020016100a0919061033b565b604051602081830303815290604052816001600160a01b03166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa1580156100ea573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526101119190810190610274565b6040516020016101219190610370565b60408051601f19818403018152919052600361013d8382610411565b50600461014a8282610411565b5050505f816001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561018a573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101ae91906104cb565b60ff1690506012811080156101c257505f81115b6102055760405162461bcd60e51b815260206004820152601060248201526f696e76616c696420646563696d616c7360801b604482015260640160405180910390fd5b6001600160a01b03821660805261021d8160126104ff565b61022890600a6105fb565b60a052506106069050565b5f60208284031215610243575f5ffd5b81516001600160a01b0381168114610259575f5ffd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f60208284031215610284575f5ffd5b81516001600160401b03811115610299575f5ffd5b8201601f810184136102a9575f5ffd5b80516001600160401b038111156102c2576102c2610260565b604051601f8201601f19908116603f011681016001600160401b03811182821017156102f0576102f0610260565b604052818152828201602001861015610307575f5ffd5b8160208401602083015e5f91810160200191909152949350505050565b5f81518060208401855e5f93019283525090919050565b5f6103468284610324565b600160fd1b81526f29ba30b73230b932102bb930b83832b960811b60018201526011019392505050565b5f61037b8284610324565b61535760f01b81526002019392505050565b600181811c908216806103a157607f821691505b6020821081036103bf57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561040c57805f5260205f20601f840160051c810160208510156103ea5750805b601f840160051c820191505b81811015610409575f81556001016103f6565b50505b505050565b81516001600160401b0381111561042a5761042a610260565b61043e81610438845461038d565b846103c5565b6020601f821160018114610470575f83156104595750848201515b5f19600385901b1c1916600184901b178455610409565b5f84815260208120601f198516915b8281101561049f578785015182556020948501946001909201910161047f565b50848210156104bc57868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b5f602082840312156104db575f5ffd5b815160ff81168114610259575f5ffd5b634e487b7160e01b5f52601160045260245ffd5b81810381811115610512576105126104eb565b92915050565b6001815b600184111561055357808504811115610537576105376104eb565b600184161561054557908102905b60019390931c92800261051c565b935093915050565b5f8261056957506001610512565b8161057557505f610512565b816001811461058b5760028114610595576105b1565b6001915050610512565b60ff8411156105a6576105a66104eb565b50506001821b610512565b5060208310610133831016604e8410600b84101617156105d4575081810a610512565b6105e05f198484610518565b805f19048211156105f3576105f36104eb565b029392505050565b5f610259838361055b565b60805160a051610acd61064a5f395f818161016d015281816103370152818161038f015261046401525f8181610194015281816103be015261042b0152610acd5ff3fe608060405234801561000f575f5ffd5b50600436106100da575f3560e01c80633ba0b9a91161008857806395d89b411161006357806395d89b41146101f6578063a9059cbb146101fe578063b6b55f2514610211578063dd62ed3e14610224575f5ffd5b80633ba0b9a9146101685780636f307dc31461018f57806370a08231146101ce575f5ffd5b806323b872dd116100b857806323b872dd146101315780632e1a7d4d14610144578063313ce56714610159575f5ffd5b806306fdde03146100de578063095ea7b3146100fc57806318160ddd1461011f575b5f5ffd5b6100e661025c565b6040516100f391906108f6565b60405180910390f35b61010f61010a366004610946565b6102ec565b60405190151581526020016100f3565b6002545b6040519081526020016100f3565b61010f61013f36600461096e565b610305565b6101576101523660046109a8565b610328565b005b604051601281526020016100f3565b6101237f000000000000000000000000000000000000000000000000000000000000000081565b6101b67f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100f3565b6101236101dc3660046109bf565b6001600160a01b03165f9081526020819052604090205490565b6100e66103e9565b61010f61020c366004610946565b6103f8565b61015761021f3660046109a8565b610405565b6101236102323660046109df565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b60606003805461026b90610a10565b80601f016020809104026020016040519081016040528092919081815260200182805461029790610a10565b80156102e25780601f106102b9576101008083540402835291602001916102e2565b820191905f5260205f20905b8154815290600101906020018083116102c557829003601f168201915b5050505050905090565b5f336102f981858561048e565b60019150505b92915050565b5f336103128582856104a0565b61031d858585610520565b506001949350505050565b5f8111801561035e575061035c7f000000000000000000000000000000000000000000000000000000000000000082610a5c565b155b61037b57604051632a9ffab760e21b815260040160405180910390fd5b33610386818361057d565b6103e5816103b47f000000000000000000000000000000000000000000000000000000000000000085610a83565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691906105b1565b5050565b60606004805461026b90610a10565b5f336102f9818585610520565b5f811161042557604051632a9ffab760e21b815260040160405180910390fd5b3361045b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316823085610625565b6103e5816104897f000000000000000000000000000000000000000000000000000000000000000085610a96565b61065e565b61049b8383836001610692565b505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f19811461051a578181101561050c57604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064015b60405180910390fd5b61051a84848484035f610692565b50505050565b6001600160a01b03831661054957604051634b637e8f60e11b81525f6004820152602401610503565b6001600160a01b0382166105725760405163ec442f0560e01b81525f6004820152602401610503565b61049b838383610764565b6001600160a01b0382166105a657604051634b637e8f60e11b81525f6004820152602401610503565b6103e5825f83610764565b6040516001600160a01b0383811660248301526044820183905261049b91859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061088a565b6040516001600160a01b03848116602483015283811660448301526064820183905261051a9186918216906323b872dd906084016105de565b6001600160a01b0382166106875760405163ec442f0560e01b81525f6004820152602401610503565b6103e55f8383610764565b6001600160a01b0384166106bb5760405163e602df0560e01b81525f6004820152602401610503565b6001600160a01b0383166106e457604051634a1406b160e11b81525f6004820152602401610503565b6001600160a01b038085165f908152600160209081526040808320938716835292905220829055801561051a57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161075691815260200190565b60405180910390a350505050565b6001600160a01b03831661078e578060025f8282546107839190610aad565b909155506107fe9050565b6001600160a01b0383165f90815260208190526040902054818110156107e05760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401610503565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b03821661081a57600280548290039055610838565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161087d91815260200190565b60405180910390a3505050565b5f5f60205f8451602086015f885af1806108a9576040513d5f823e3d81fd5b50505f513d915081156108c05780600114156108cd565b6001600160a01b0384163b155b1561051a57604051635274afe760e01b81526001600160a01b0385166004820152602401610503565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b0381168114610941575f5ffd5b919050565b5f5f60408385031215610957575f5ffd5b6109608361092b565b946020939093013593505050565b5f5f5f60608486031215610980575f5ffd5b6109898461092b565b92506109976020850161092b565b929592945050506040919091013590565b5f602082840312156109b8575f5ffd5b5035919050565b5f602082840312156109cf575f5ffd5b6109d88261092b565b9392505050565b5f5f604083850312156109f0575f5ffd5b6109f98361092b565b9150610a076020840161092b565b90509250929050565b600181811c90821680610a2457607f821691505b602082108103610a4257634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601260045260245ffd5b5f82610a6a57610a6a610a48565b500690565b634e487b7160e01b5f52601160045260245ffd5b5f82610a9157610a91610a48565b500490565b80820281158282048414176102ff576102ff610a6f565b808201808211156102ff576102ff610a6f56fea164736f6c634300081b000aa164736f6c634300081b000a", + "storage": {} + }, + "BC10000000000000000000000000000000000Da0": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x6080604052600436106102f0575f3560e01c80637d5e81e211610186578063bc197c81116100dc578063e540d01d11610087578063f23a6e6111610062578063f23a6e611461097e578063f8ce560a146109a9578063fc0c546a146109c8575f5ffd5b8063e540d01d14610921578063eb9019d414610940578063ece40cc11461095f575f5ffd5b8063c59057e4116100b7578063c59057e41461088a578063dd4e2ba5146108a9578063deaaa7cc146108ee575f5ffd5b8063bc197c811461082d578063c01f9e3714610858578063c28bc2fa14610877575f5ffd5b806397c3d3341161013c578063a9a9529411610117578063a9a95294146107c4578063ab58fb8e146107e3578063b58131b014610819575f5ffd5b806397c3d3341461077e5780639a802a6d14610791578063a7713a70146107b0575f5ffd5b806384b0196e1161016c57806384b0196e1461070d5780638ff262e31461073457806391ddadf414610753575f5ffd5b80637d5e81e2146106ba5780637ecebe00146106d9575f5ffd5b80633e4f49e61161024657806356781388116101f157806360c4247f116101cc57806360c4247f1461065d578063790518871461067c5780637b3c71d31461069b575f5ffd5b806356781388146106005780635b8d0e0d1461061f5780635f398a141461063e575f5ffd5b80634bf5d7e9116102215780634bf5d7e914610570578063544ffc9c1461058457806354fd4d50146105d7575f5ffd5b80633e4f49e6146104dd5780634385963214610509578063452115d614610551575f5ffd5b8063150b7a02116102a65780632d63f693116102815780632d63f6931461045c5780632fe3e261146104965780633932abb1146104c9575f5ffd5b8063150b7a02146103e7578063160cbed71461042a5780632656227d14610449575f5ffd5b806306f3f9e6116102d657806306f3f9e61461035b57806306fdde031461037a578063143489d01461039b575f5ffd5b806301ffc9a7146102fc57806302a251a314610330575f5ffd5b366102f8575b005b5f5ffd5b348015610307575f5ffd5b5061031b610316366004612c6c565b6109fa565b60405190151581526020015b60405180910390f35b34801561033b575f5ffd5b50600854600160301b900463ffffffff165b604051908152602001610327565b348015610366575f5ffd5b506102f6610375366004612c93565b610a50565b348015610385575f5ffd5b5061038e610a64565b6040516103279190612cd8565b3480156103a6575f5ffd5b506103cf6103b5366004612c93565b5f908152600460205260409020546001600160a01b031690565b6040516001600160a01b039091168152602001610327565b3480156103f2575f5ffd5b50610411610401366004612dc5565b630a85bd0160e11b949350505050565b6040516001600160e01b03199091168152602001610327565b348015610435575f5ffd5b5061034d610444366004612f88565b610af4565b61034d610457366004612f88565b610b3c565b348015610467575f5ffd5b5061034d610476366004612c93565b5f90815260046020526040902054600160a01b900465ffffffffffff1690565b3480156104a1575f5ffd5b5061034d7f3e83946653575f9a39005e1545185629e92736b7528ab20ca3816f315424a81181565b3480156104d4575f5ffd5b5061034d610c7f565b3480156104e8575f5ffd5b506104fc6104f7366004612c93565b610c91565b6040516103279190613052565b348015610514575f5ffd5b5061031b610523366004613060565b5f8281526009602090815260408083206001600160a01b038516845260030190915290205460ff1692915050565b34801561055c575f5ffd5b5061034d61056b366004612f88565b610dda565b34801561057b575f5ffd5b5061038e610e46565b34801561058f575f5ffd5b506105bc61059e366004612c93565b5f908152600960205260409020805460018201546002909201549092565b60408051938452602084019290925290820152606001610327565b3480156105e2575f5ffd5b506040805180820190915260018152603160f81b602082015261038e565b34801561060b575f5ffd5b5061034d61061a36600461309a565b610f06565b34801561062a575f5ffd5b5061034d610639366004613100565b610f2d565b348015610649575f5ffd5b5061034d6106583660046131bd565b611089565b348015610668575f5ffd5b5061034d610677366004612c93565b6110dc565b348015610687575f5ffd5b506102f6610696366004613253565b611168565b3480156106a6575f5ffd5b5061034d6106b536600461326e565b611179565b3480156106c5575f5ffd5b5061034d6106d43660046132c4565b6111bf565b3480156106e4575f5ffd5b5061034d6106f3366004613384565b6001600160a01b03165f9081526002602052604090205490565b348015610718575f5ffd5b50610721611275565b60405161032797969594939291906133d7565b34801561073f575f5ffd5b5061034d61074e366004613444565b6112b7565b34801561075e575f5ffd5b50610767611386565b60405165ffffffffffff9091168152602001610327565b348015610789575f5ffd5b50606461034d565b34801561079c575f5ffd5b5061034d6107ab366004613490565b61140d565b3480156107bb575f5ffd5b5061034d611423565b3480156107cf575f5ffd5b5061031b6107de366004612c93565b505f90565b3480156107ee575f5ffd5b5061034d6107fd366004612c93565b5f9081526004602052604090206001015465ffffffffffff1690565b348015610824575f5ffd5b5061034d61143c565b348015610838575f5ffd5b506104116108473660046134e3565b63bc197c8160e01b95945050505050565b348015610863575f5ffd5b5061034d610872366004612c93565b611446565b6102f6610885366004613579565b611488565b348015610895575f5ffd5b5061034d6108a4366004612f88565b611504565b3480156108b4575f5ffd5b506040805180820190915260208082527f737570706f72743d627261766f2671756f72756d3d666f722c6162737461696e9082015261038e565b3480156108f9575f5ffd5b5061034d7ff2aad550cf55f045cb27e9c559f9889fdfb6e6cdaa032301d6ea397784ae51d781565b34801561092c575f5ffd5b506102f661093b3660046135b7565b61153d565b34801561094b575f5ffd5b5061034d61095a3660046135da565b61154e565b34801561096a575f5ffd5b506102f6610979366004612c93565b61156d565b348015610989575f5ffd5b50610411610998366004613602565b63f23a6e6160e01b95945050505050565b3480156109b4575f5ffd5b5061034d6109c3366004612c93565b61157e565b3480156109d3575f5ffd5b507f000000000000000000000000bc100000000000000000000000000000000000016103cf565b5f6001600160e01b031982166332a2ad4360e11b1480610a2a57506001600160e01b03198216630271189760e51b145b80610a4557506301ffc9a760e01b6001600160e01b03198316145b92915050565b905090565b610a58611588565b610a61816115bf565b50565b606060038054610a7390613656565b80601f0160208091040260200160405190810160405280929190818152602001828054610a9f90613656565b8015610aea5780601f10610ac157610100808354040283529160200191610aea565b820191905f5260205f20905b815481529060010190602001808311610acd57829003601f168201915b5050505050905090565b5f5f610b0286868686611504565b9050610b1781610b126004611654565b611676565b505f604051634844252360e11b815260040160405180910390fd5b5095945050505050565b5f5f610b4a86868686611504565b9050610b6a81610b5a6005611654565b610b646004611654565b17611676565b505f81815260046020526040902080547fff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16600160f01b17905530610bac3090565b6001600160a01b031614610c35575f5b8651811015610c3357306001600160a01b0316878281518110610be157610be161368e565b60200260200101516001600160a01b031603610c2b57610c2b858281518110610c0c57610c0c61368e565b60200260200101518051906020012060056116b390919063ffffffff16565b600101610bbc565b505b610c428187878787611726565b6040518181527f712ae1383f79ac853f8d882153778e0260ef8f03b504e2866e0593e04d2b291f906020015b60405180910390a195945050505050565b5f610a4b60085465ffffffffffff1690565b5f818152600460205260408120805460ff600160f01b8204811691600160f81b9004168115610cc557506007949350505050565b8015610cd657506002949350505050565b5f85815260046020526040812054600160a01b900465ffffffffffff169050805f03610d1d57604051636ad0607560e01b8152600481018790526024015b60405180910390fd5b5f610d26611386565b65ffffffffffff169050808210610d4357505f9695505050505050565b5f610d4d88611446565b9050818110610d6457506001979650505050505050565b610d6d886117fb565b1580610d8c57505f888152600960205260409020805460019091015411155b15610d9f57506003979650505050505050565b5f8881526004602052604090206001015465ffffffffffff165f03610dcc57506004979650505050505050565b506005979650505050505050565b5f5f610de886868686611504565b9050610df781610b125f611654565b505f818152600460205260409020546001600160a01b03163314610e305760405163233d98e360e01b8152336004820152602401610d14565b610e3c8686868661184b565b9695505050505050565b60607f000000000000000000000000bc100000000000000000000000000000000000016001600160a01b0316634bf5d7e96040518163ffffffff1660e01b81526004015f60405180830381865afa925050508015610ec557506040513d5f823e601f3d908101601f19168201604052610ec291908101906136a2565b60015b610f01575060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b919050565b5f80339050610f2584828560405180602001604052805f815250611912565b949350505050565b5f5f61100e876110087f3e83946653575f9a39005e1545185629e92736b7528ab20ca3816f315424a8118c8c8c610f808e6001600160a01b03165f90815260026020526040902080546001810190915590565b8d8d604051610f90929190613717565b60405180910390208c80519060200120604051602001610fed9796959493929190968752602087019590955260ff9390931660408601526001600160a01b03919091166060850152608084015260a083015260c082015260e00190565b6040516020818303038152906040528051906020012061193c565b85611968565b905080611039576040516394ab6c0760e01b81526001600160a01b0388166004820152602401610d14565b61107c89888a89898080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b92506119d8915050565b9998505050505050505050565b5f803390506110d187828888888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a92506119d8915050565b979650505050505050565b600a80545f9182906110ef60018461373a565b815481106110ff576110ff61368e565b5f918252602090912001805490915065ffffffffffff811690600160301b90046001600160d01b0316858211611141576001600160d01b031695945050505050565b61115561114d87611acb565b600a90611b01565b6001600160d01b03169695505050505050565b611170611588565b610a6181611bb0565b5f80339050610e3c86828787878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061191292505050565b5f336111cb8184611c16565b6111f35760405163d9b3955760e01b81526001600160a01b0382166004820152602401610d14565b5f6111fc61143c565b90508015611268575f61122a836001611213611386565b61121d919061374d565b65ffffffffffff1661154e565b90508181101561126657604051636121770b60e11b81526001600160a01b03841660048201526024810182905260448101839052606401610d14565b505b6110d18787878786611d34565b5f6060805f5f5f6060611286611f8a565b61128e611fb6565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b5f5f611341846110087ff2aad550cf55f045cb27e9c559f9889fdfb6e6cdaa032301d6ea397784ae51d789898961130a8b6001600160a01b03165f90815260026020526040902080546001810190915590565b60408051602081019690965285019390935260ff90911660608401526001600160a01b0316608083015260a082015260c001610fed565b90508061136c576040516394ab6c0760e01b81526001600160a01b0385166004820152602401610d14565b610e3c86858760405180602001604052805f815250611912565b5f7f000000000000000000000000bc100000000000000000000000000000000000016001600160a01b03166391ddadf46040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611401575060408051601f3d908101601f191682019092526113fe9181019061376b565b60015b610f0157610a4b611fe3565b5f611419848484611fed565b90505b9392505050565b5f61142e600a612080565b6001600160d01b0316905090565b5f610a4b60075490565b5f8181526004602052604081205461147a90600160d01b810463ffffffff1690600160a01b900465ffffffffffff16613786565b65ffffffffffff1692915050565b611490611588565b5f5f856001600160a01b03168585856040516114ad929190613717565b5f6040518083038185875af1925050503d805f81146114e7576040519150601f19603f3d011682016040523d82523d5f602084013e6114ec565b606091505b50915091506114fb82826120b7565b50505050505050565b5f8484848460405160200161151c9493929190613837565b60408051601f19818403018152919052805160209091012095945050505050565b611545611588565b610a61816120d3565b5f61141c838361156860408051602081019091525f815290565b611fed565b611575611588565b610a618161216f565b5f610a45826121b0565b3033146115aa576040516347096e4760e01b8152336004820152602401610d14565b565b806115b76005612257565b036115ac5750565b6064808211156115ec5760405163243e544560e01b81526004810183905260248101829052604401610d14565b5f6115f5611423565b9050611614611602611386565b61160b856122d6565b600a9190612309565b505060408051828152602081018590527f0553476bf02ef2726e8ce5ced78d63e26e602e4a2257b1f559418e24b4633997910160405180910390a1505050565b5f8160078111156116675761166761301e565b600160ff919091161b92915050565b5f5f61168184610c91565b90505f8361168e83611654565b160361141c578381846040516331b75e4d60e01b8152600401610d1493929190613881565b81546fffffffffffffffffffffffffffffffff600160801b8204811691811660018301909116036116e8576116e86041612323565b6fffffffffffffffffffffffffffffffff8082165f90815260018086016020526040909120939093558354919092018216600160801b029116179055565b5f5b84518110156117f3575f5f8683815181106117455761174561368e565b60200260200101516001600160a01b03168684815181106117685761176861368e565b60200260200101518685815181106117825761178261368e565b602002602001015160405161179791906138a3565b5f6040518083038185875af1925050503d805f81146117d1576040519150601f19603f3d011682016040523d82523d5f602084013e6117d6565b606091505b50915091506117e582826120b7565b505050806001019050611728565b505050505050565b5f8181526009602052604081206002810154600182015461181c91906138b9565b5f8481526004602052604090205461184290600160a01b900465ffffffffffff1661157e565b11159392505050565b5f5f61185986868686611504565b90506118a7816118696007611654565b6118736006611654565b61187d6002611654565b600161188a6007826138cc565b6118959060026139c0565b61189f919061373a565b181818611676565b505f818152600460205260409081902080547effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16600160f81b179055517f789cf55be980739dad1d0699b93b58e806b51c9d96619bfa8fe0a28abaa7b30c90610c6e9083815260200190565b5f6119338585858561192e60408051602081019091525f815290565b6119d8565b95945050505050565b5f610a45611948612334565b8360405161190160f01b8152600281019290925260228201526042902090565b5f836001600160a01b03163b5f036119c6575f5f611986858561245d565b5090925090505f81600381111561199f5761199f61301e565b1480156119bd5750856001600160a01b0316826001600160a01b0316145b9250505061141c565b6119d18484846124a6565b905061141c565b5f6119e786610b126001611654565b505f86815260046020526040812054611a11908790600160a01b900465ffffffffffff1685611fed565b90505f611a218888888588612591565b905083515f03611a7757866001600160a01b03167fb8e138887d0aa13bab447e82de9d5c1777041ecd21ca36ba824ff1e6c07ddda489888489604051611a6a94939291906139ce565b60405180910390a26110d1565b866001600160a01b03167fe2babfbac5889a709b63bb7f598b324e08bc5a4fb9ec647fb3cbc9ec07eb87128988848989604051611ab89594939291906139f5565b60405180910390a2979650505050505050565b5f65ffffffffffff821115611afd576040516306dfcc6560e41b81526030600482015260248101839052604401610d14565b5090565b81545f9081816005811115611b5d575f611b1a8461268d565b611b24908561373a565b5f8881526020902090915081015465ffffffffffff9081169087161015611b4d57809150611b5b565b611b588160016138b9565b92505b505b5f611b6a878785856127e5565b90508015611ba457611b8e87611b8160018461373a565b5f91825260209091200190565b54600160301b90046001600160d01b03166110d1565b5f979650505050505050565b6008546040805165ffffffffffff928316815291831660208301527fc565b045403dc03c2eea82b81a0465edad9e2e7fc4d97e11421c209da93d7a93910160405180910390a16008805465ffffffffffff191665ffffffffffff92909216919091179055565b80515f906034811015611c2d576001915050610a45565b828101601319015173ffffffffffffffffffffffffffffffffffffffff1981167f2370726f706f7365723d3078000000000000000000000000000000000000000014611c7e57600192505050610a45565b5f80611c8b60288561373a565b90505b83811015611d13575f5f611cd9888481518110611cad57611cad61368e565b01602001517fff0000000000000000000000000000000000000000000000000000000000000016612844565b9150915081611cf15760019650505050505050610a45565b8060ff166004856001600160a01b0316901b1793505050806001019050611c8e565b50856001600160a01b0316816001600160a01b031614935050505092915050565b5f611d488686868680519060200120611504565b905084518651141580611d5d57508351865114155b80611d6757508551155b15611d9c57855184518651604051630447b05d60e41b8152600481019390935260248301919091526044820152606401610d14565b5f81815260046020526040902054600160a01b900465ffffffffffff1615611de55780611dc882610c91565b6040516331b75e4d60e01b8152610d149291905f90600401613881565b5f611dee610c7f565b611df6611386565b65ffffffffffff16611e0891906138b9565b90505f611e2260085463ffffffff600160301b9091041690565b5f848152600460205260409020805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b038716178155909150611e6183611acb565b815465ffffffffffff91909116600160a01b027fffffffffffff000000000000ffffffffffffffffffffffffffffffffffffffff909116178155611ea4826128d4565b815463ffffffff91909116600160d01b027fffff00000000ffffffffffffffffffffffffffffffffffffffffffffffffffff90911617815588517f7d84a6263ae0d98d3329bd7b46bb4e8d6f98cd35a7adb45c274c8b7fd5ebd5e090859087908c908c9067ffffffffffffffff811115611f2057611f20612d00565b604051908082528060200260200182016040528015611f5357816020015b6060815260200190600190039081611f3e5790505b508c89611f608a826138b9565b8e604051611f7699989796959493929190613a3a565b60405180910390a150505095945050505050565b6060610a4b7f476f617444414f000000000000000000000000000000000000000000000000075f612904565b6060610a4b7f31000000000000000000000000000000000000000000000000000000000000016001612904565b5f610a4b43611acb565b5f7f000000000000000000000000bc10000000000000000000000000000000000001604051630748d63560e31b81526001600160a01b038681166004830152602482018690529190911690633a46b1a890604401602060405180830381865afa15801561205c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114199190613b14565b80545f9080156120af5761209983611b8160018461373a565b54600160301b90046001600160d01b031661141c565b5f9392505050565b6060826120cc576120c7826129ad565b610a45565b5080610a45565b8063ffffffff165f036120fb5760405163f1cfbf0560e01b81525f6004820152602401610d14565b6008546040805163ffffffff600160301b9093048316815291831660208301527f7e3f7f0708a84de9203036abaa450dccc85ad5ff52f78c170f3edb55cf5e8828910160405180910390a16008805463ffffffff909216600160301b0269ffffffff00000000000019909216919091179055565b60075460408051918252602082018390527fccb45da8d5717e6c4544694297c4ba5cf151d455c9bb0ed4fc7a38411bc05461910160405180910390a1600755565b5f60646121bc836110dc565b604051632394e7a360e21b8152600481018590526001600160a01b037f000000000000000000000000bc100000000000000000000000000000000000011690638e539e8c90602401602060405180830381865afa15801561221f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122439190613b14565b61224d9190613b2b565b610a459190613b56565b80545f906fffffffffffffffffffffffffffffffff80821691600160801b9004168103612288576122886031612323565b6fffffffffffffffffffffffffffffffff8181165f908152600185810160205260408220805492905585546fffffffffffffffffffffffffffffffff19169301909116919091179092555090565b5f6001600160d01b03821115611afd576040516306dfcc6560e41b815260d0600482015260248101839052604401610d14565b5f806123168585856129d6565b915091505b935093915050565b634e487b715f52806020526024601cfd5b5f306001600160a01b037f000000000000000000000000cf7ed3acca5a467e9e704c703e8d87f634fb0fc91614801561238c57507f000000000000000000000000000000000000000000000000000000000000092946145b156123b657507f11edf9fdf74ba9ddace6e4419fc288cc48a4df2998d6128b49c405cedad7355890565b610a4b604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f7081057b801cf71f391bb13ad68bb1be4f896665916f118ed4c6811f09fe527c918101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b5f5f5f8351604103612494576020840151604085015160608601515f1a61248688828585612b26565b95509550955050505061249f565b505081515f91506002905b9250925092565b5f5f5f856001600160a01b031685856040516024016124c6929190613b75565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16630b135d3f60e11b1790525161251091906138a3565b5f60405180830381855afa9150503d805f8114612548576040519150601f19603f3d011682016040523d82523d5f602084013e61254d565b606091505b509150915081801561256157506020815110155b8015610e3c57508051630b135d3f60e11b906125869083016020908101908401613b14565b149695505050505050565b5f8581526009602090815260408083206001600160a01b03881684526003810190925282205460ff16156125e3576040516371c6af4960e01b81526001600160a01b0387166004820152602401610d14565b6001600160a01b0386165f9081526003820160205260409020805460ff1916600117905560ff851661262c5783815f015f82825461262191906138b9565b909155506126829050565b5f1960ff86160161264a5783816001015f82825461262191906138b9565b60011960ff8616016126695783816002015f82825461262191906138b9565b6040516303599be160e11b815260040160405180910390fd5b509195945050505050565b5f6001821161269a575090565b816001600160801b82106126b35760809190911c9060401b5b6801000000000000000082106126ce5760409190911c9060201b5b64010000000082106126e55760209190911c9060101b5b6201000082106126fa5760109190911c9060081b5b610100821061270e5760089190911c9060041b5b601082106127215760049190911c9060021b5b6004821061272d5760011b5b600302600190811c9081858161274557612745613b42565b048201901c9050600181858161275d5761275d613b42565b048201901c9050600181858161277557612775613b42565b048201901c9050600181858161278d5761278d613b42565b048201901c905060018185816127a5576127a5613b42565b048201901c905060018185816127bd576127bd613b42565b048201901c90506127dc8185816127d6576127d6613b42565b04821190565b90039392505050565b5f5b8183101561283c575f6127fa8484612bee565b5f8781526020902090915065ffffffffffff86169082015465ffffffffffff16111561282857809250612836565b6128338160016138b9565b93505b506127e7565b509392505050565b5f8060f883901c602f8111801561285e5750603a8160ff16105b1561287357600194602f199091019350915050565b8060ff166040108015612889575060478160ff16105b1561289e576001946036199091019350915050565b8060ff1660601080156128b4575060678160ff16105b156128c9576001946056199091019350915050565b505f93849350915050565b5f63ffffffff821115611afd576040516306dfcc6560e41b81526020600482015260248101839052604401610d14565b606060ff831461291e5761291783612c08565b9050610a45565b81805461292a90613656565b80601f016020809104026020016040519081016040528092919081815260200182805461295690613656565b80156129a15780601f10612978576101008083540402835291602001916129a1565b820191905f5260205f20905b81548152906001019060200180831161298457829003601f168201915b50505050509050610a45565b8051156129bd5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b82545f9081908015612acc575f6129f287611b8160018561373a565b805490915065ffffffffffff80821691600160301b90046001600160d01b0316908816821115612a3557604051632520601d60e01b815260040160405180910390fd5b8765ffffffffffff168265ffffffffffff1603612a6e57825465ffffffffffff16600160301b6001600160d01b03891602178355612abe565b6040805180820190915265ffffffffffff808a1682526001600160d01b03808a1660208085019182528d54600181018f555f8f81529190912094519151909216600160301b029216919091179101555b945085935061231b92505050565b50506040805180820190915265ffffffffffff80851682526001600160d01b0380851660208085019182528854600181018a555f8a815291822095519251909316600160301b02919093161792019190915590508161231b565b5f80807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115612b5f57505f91506003905082612be4565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015612bb0573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b038116612bdb57505f925060019150829050612be4565b92505f91508190505b9450945094915050565b5f612bfc6002848418613b56565b61141c908484166138b9565b60605f612c1483612c45565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f60ff8216601f811115610a4557604051632cd44ac360e21b815260040160405180910390fd5b5f60208284031215612c7c575f5ffd5b81356001600160e01b03198116811461141c575f5ffd5b5f60208284031215612ca3575f5ffd5b5035919050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f61141c6020830184612caa565b80356001600160a01b0381168114610f01575f5ffd5b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612d3d57612d3d612d00565b604052919050565b5f67ffffffffffffffff821115612d5e57612d5e612d00565b50601f01601f191660200190565b5f612d7e612d7984612d45565b612d14565b9050828152838383011115612d91575f5ffd5b828260208301375f602084830101529392505050565b5f82601f830112612db6575f5ffd5b61141c83833560208501612d6c565b5f5f5f5f60808587031215612dd8575f5ffd5b612de185612cea565b9350612def60208601612cea565b925060408501359150606085013567ffffffffffffffff811115612e11575f5ffd5b612e1d87828801612da7565b91505092959194509250565b5f67ffffffffffffffff821115612e4257612e42612d00565b5060051b60200190565b5f82601f830112612e5b575f5ffd5b8135612e69612d7982612e29565b8082825260208201915060208360051b860101925085831115612e8a575f5ffd5b602085015b83811015610b3257612ea081612cea565b835260209283019201612e8f565b5f82601f830112612ebd575f5ffd5b8135612ecb612d7982612e29565b8082825260208201915060208360051b860101925085831115612eec575f5ffd5b602085015b83811015610b32578035835260209283019201612ef1565b5f82601f830112612f18575f5ffd5b8135612f26612d7982612e29565b8082825260208201915060208360051b860101925085831115612f47575f5ffd5b602085015b83811015610b3257803567ffffffffffffffff811115612f6a575f5ffd5b612f79886020838a0101612da7565b84525060209283019201612f4c565b5f5f5f5f60808587031215612f9b575f5ffd5b843567ffffffffffffffff811115612fb1575f5ffd5b612fbd87828801612e4c565b945050602085013567ffffffffffffffff811115612fd9575f5ffd5b612fe587828801612eae565b935050604085013567ffffffffffffffff811115613001575f5ffd5b61300d87828801612f09565b949793965093946060013593505050565b634e487b7160e01b5f52602160045260245ffd5b6008811061304e57634e487b7160e01b5f52602160045260245ffd5b9052565b60208101610a458284613032565b5f5f60408385031215613071575f5ffd5b8235915061308160208401612cea565b90509250929050565b803560ff81168114610f01575f5ffd5b5f5f604083850312156130ab575f5ffd5b823591506130816020840161308a565b5f5f83601f8401126130cb575f5ffd5b50813567ffffffffffffffff8111156130e2575f5ffd5b6020830191508360208285010111156130f9575f5ffd5b9250929050565b5f5f5f5f5f5f5f60c0888a031215613116575f5ffd5b873596506131266020890161308a565b955061313460408901612cea565b9450606088013567ffffffffffffffff81111561314f575f5ffd5b61315b8a828b016130bb565b909550935050608088013567ffffffffffffffff81111561317a575f5ffd5b6131868a828b01612da7565b92505060a088013567ffffffffffffffff8111156131a2575f5ffd5b6131ae8a828b01612da7565b91505092959891949750929550565b5f5f5f5f5f608086880312156131d1575f5ffd5b853594506131e16020870161308a565b9350604086013567ffffffffffffffff8111156131fc575f5ffd5b613208888289016130bb565b909450925050606086013567ffffffffffffffff811115613227575f5ffd5b61323388828901612da7565b9150509295509295909350565b65ffffffffffff81168114610a61575f5ffd5b5f60208284031215613263575f5ffd5b813561141c81613240565b5f5f5f5f60608587031215613281575f5ffd5b843593506132916020860161308a565b9250604085013567ffffffffffffffff8111156132ac575f5ffd5b6132b8878288016130bb565b95989497509550505050565b5f5f5f5f608085870312156132d7575f5ffd5b843567ffffffffffffffff8111156132ed575f5ffd5b6132f987828801612e4c565b945050602085013567ffffffffffffffff811115613315575f5ffd5b61332187828801612eae565b935050604085013567ffffffffffffffff81111561333d575f5ffd5b61334987828801612f09565b925050606085013567ffffffffffffffff811115613365575f5ffd5b8501601f81018713613375575f5ffd5b612e1d87823560208401612d6c565b5f60208284031215613394575f5ffd5b61141c82612cea565b5f8151808452602084019350602083015f5b828110156133cd5781518652602095860195909101906001016133af565b5093949350505050565b60ff60f81b8816815260e060208201525f6133f560e0830189612caa565b82810360408401526134078189612caa565b90508660608401526001600160a01b03861660808401528460a084015282810360c0840152613436818561339d565b9a9950505050505050505050565b5f5f5f5f60808587031215613457575f5ffd5b843593506134676020860161308a565b925061347560408601612cea565b9150606085013567ffffffffffffffff811115612e11575f5ffd5b5f5f5f606084860312156134a2575f5ffd5b6134ab84612cea565b925060208401359150604084013567ffffffffffffffff8111156134cd575f5ffd5b6134d986828701612da7565b9150509250925092565b5f5f5f5f5f60a086880312156134f7575f5ffd5b61350086612cea565b945061350e60208701612cea565b9350604086013567ffffffffffffffff811115613529575f5ffd5b61353588828901612eae565b935050606086013567ffffffffffffffff811115613551575f5ffd5b61355d88828901612eae565b925050608086013567ffffffffffffffff811115613227575f5ffd5b5f5f5f5f6060858703121561358c575f5ffd5b61359585612cea565b935060208501359250604085013567ffffffffffffffff8111156132ac575f5ffd5b5f602082840312156135c7575f5ffd5b813563ffffffff8116811461141c575f5ffd5b5f5f604083850312156135eb575f5ffd5b6135f483612cea565b946020939093013593505050565b5f5f5f5f5f60a08688031215613616575f5ffd5b61361f86612cea565b945061362d60208701612cea565b93506040860135925060608601359150608086013567ffffffffffffffff811115613227575f5ffd5b600181811c9082168061366a57607f821691505b60208210810361368857634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156136b2575f5ffd5b815167ffffffffffffffff8111156136c8575f5ffd5b8201601f810184136136d8575f5ffd5b80516136e6612d7982612d45565b8181528560208385010111156136fa575f5ffd5b8160208401602083015e5f91810160200191909152949350505050565b818382375f9101908152919050565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610a4557610a45613726565b65ffffffffffff8281168282160390811115610a4557610a45613726565b5f6020828403121561377b575f5ffd5b815161141c81613240565b65ffffffffffff8181168382160190811115610a4557610a45613726565b5f8151808452602084019350602083015f5b828110156133cd5781516001600160a01b03168652602095860195909101906001016137b6565b5f82825180855260208501945060208160051b830101602085015f5b8381101561382b57601f19858403018852613815838351612caa565b60209889019890935091909101906001016137f9565b50909695505050505050565b608081525f61384960808301876137a4565b828103602084015261385b818761339d565b9050828103604084015261386f81866137dd565b91505082606083015295945050505050565b838152606081016138956020830185613032565b826040830152949350505050565b5f82518060208501845e5f920191825250919050565b80820180821115610a4557610a45613726565b60ff8181168382160190811115610a4557610a45613726565b6001815b600184111561231b5780850481111561390457613904613726565b600184161561391257908102905b60019390931c9280026138e9565b5f8261392e57506001610a45565b8161393a57505f610a45565b8160018114613950576002811461395a57613976565b6001915050610a45565b60ff84111561396b5761396b613726565b50506001821b610a45565b5060208310610133831016604e8410600b8410161715613999575081810a610a45565b6139a55f1984846138e5565b805f19048211156139b8576139b8613726565b029392505050565b5f61141c60ff841683613920565b84815260ff84166020820152826040820152608060608201525f610e3c6080830184612caa565b85815260ff8516602082015283604082015260a060608201525f613a1c60a0830185612caa565b8281036080840152613a2e8185612caa565b98975050505050505050565b8981526001600160a01b038916602082015261012060408201525f613a6361012083018a6137a4565b8281036060840152613a75818a61339d565b9050828103608084015280885180835260208301915060208160051b84010160208b015f5b83811015613acc57601f19868403018552613ab6838351612caa565b6020958601959093509190910190600101613a9a565b505085810360a0870152613ae0818b6137dd565b93505050508560c08401528460e0840152828103610100840152613b048185612caa565b9c9b505050505050505050505050565b5f60208284031215613b24575f5ffd5b5051919050565b8082028115828204841417610a4557610a45613726565b634e487b7160e01b5f52601260045260245ffd5b5f82613b7057634e487b7160e01b5f52601260045260245ffd5b500490565b828152604060208201525f6114196040830184612caa56fea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000003": "0x476f617444414f0000000000000000000000000000000000000000000000000e", + "0x0000000000000000000000000000000000000000000000000000000000000007": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000008": "0x0000000000000000000000000000000000000000000000093a80000000015180", + "0x000000000000000000000000000000000000000000000000000000000000000a": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8": "0x0000000000000000000000000000000000000000000000000004000000000004" + } + } + }, + "number": "0x0", + "gasUsed": "0x0", + "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "baseFeePerGas": 2028449 +} diff --git a/crates/primitives/src/genesis/48816.json b/crates/primitives/src/genesis/48816.json new file mode 100644 index 0000000..7ae9d63 --- /dev/null +++ b/crates/primitives/src/genesis/48816.json @@ -0,0 +1,184 @@ +{ + "config": { + "chainId": 48816, + "homesteadBlock": 0, + "eip150Block": 0, + "eip155Block": 0, + "eip158Block": 0, + "byzantiumBlock": 0, + "constantinopleBlock": 0, + "petersburgBlock": 0, + "istanbulBlock": 0, + "muirGlacierBlock": 0, + "berlinBlock": 0, + "londonBlock": 0, + "arrowGlacierBlock": 0, + "grayGlacierBlock": 0, + "shanghaiTime": 0, + "cancunTime": 0, + "terminalTotalDifficulty": 0, + "goat": {} + }, + "nonce": "0x0", + "timestamp": "0x67345ba0", + "extraData": "0x0056e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421", + "gasLimit": "0x1c9c380", + "difficulty": "0x0", + "mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "coinbase": "0x0000000000000000000000000000000000000000", + "alloc": { + "4e59b44847b379578588920ca78fbf26c0b4956c": { + "code": "0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe03601600081602082378035828234f58015156039578182fd5b8082525050506014600cf3", + "balance": "0x0" + }, + "1820a4B7618BdE71Dce8cdc73aAB6C95905faD24": { + "code": "0x608060405234801561001057600080fd5b50600436106100a5576000357c010000000000000000000000000000000000000000000000000000000090048063a41e7d5111610078578063a41e7d51146101d4578063aabbb8ca1461020a578063b705676514610236578063f712f3e814610280576100a5565b806329965a1d146100aa5780633d584063146100e25780635df8122f1461012457806365ba36c114610152575b600080fd5b6100e0600480360360608110156100c057600080fd5b50600160a060020a038135811691602081013591604090910135166102b6565b005b610108600480360360208110156100f857600080fd5b5035600160a060020a0316610570565b60408051600160a060020a039092168252519081900360200190f35b6100e06004803603604081101561013a57600080fd5b50600160a060020a03813581169160200135166105bc565b6101c26004803603602081101561016857600080fd5b81019060208101813564010000000081111561018357600080fd5b82018360208201111561019557600080fd5b803590602001918460018302840111640100000000831117156101b757600080fd5b5090925090506106b3565b60408051918252519081900360200190f35b6100e0600480360360408110156101ea57600080fd5b508035600160a060020a03169060200135600160e060020a0319166106ee565b6101086004803603604081101561022057600080fd5b50600160a060020a038135169060200135610778565b61026c6004803603604081101561024c57600080fd5b508035600160a060020a03169060200135600160e060020a0319166107ef565b604080519115158252519081900360200190f35b61026c6004803603604081101561029657600080fd5b508035600160a060020a03169060200135600160e060020a0319166108aa565b6000600160a060020a038416156102cd57836102cf565b335b9050336102db82610570565b600160a060020a031614610339576040805160e560020a62461bcd02815260206004820152600f60248201527f4e6f7420746865206d616e616765720000000000000000000000000000000000604482015290519081900360640190fd5b6103428361092a565b15610397576040805160e560020a62461bcd02815260206004820152601a60248201527f4d757374206e6f7420626520616e204552433136352068617368000000000000604482015290519081900360640190fd5b600160a060020a038216158015906103b85750600160a060020a0382163314155b156104ff5760405160200180807f455243313832305f4143434550545f4d4147494300000000000000000000000081525060140190506040516020818303038152906040528051906020012082600160a060020a031663249cb3fa85846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600160a060020a0316600160a060020a031681526020019250505060206040518083038186803b15801561047e57600080fd5b505afa158015610492573d6000803e3d6000fd5b505050506040513d60208110156104a857600080fd5b5051146104ff576040805160e560020a62461bcd02815260206004820181905260248201527f446f6573206e6f7420696d706c656d656e742074686520696e74657266616365604482015290519081900360640190fd5b600160a060020a03818116600081815260208181526040808320888452909152808220805473ffffffffffffffffffffffffffffffffffffffff19169487169485179055518692917f93baa6efbd2244243bfee6ce4cfdd1d04fc4c0e9a786abd3a41313bd352db15391a450505050565b600160a060020a03818116600090815260016020526040812054909116151561059a5750806105b7565b50600160a060020a03808216600090815260016020526040902054165b919050565b336105c683610570565b600160a060020a031614610624576040805160e560020a62461bcd02815260206004820152600f60248201527f4e6f7420746865206d616e616765720000000000000000000000000000000000604482015290519081900360640190fd5b81600160a060020a031681600160a060020a0316146106435780610646565b60005b600160a060020a03838116600081815260016020526040808220805473ffffffffffffffffffffffffffffffffffffffff19169585169590951790945592519184169290917f605c2dbf762e5f7d60a546d42e7205dcb1b011ebc62a61736a57c9089d3a43509190a35050565b600082826040516020018083838082843780830192505050925050506040516020818303038152906040528051906020012090505b92915050565b6106f882826107ef565b610703576000610705565b815b600160a060020a03928316600081815260208181526040808320600160e060020a031996909616808452958252808320805473ffffffffffffffffffffffffffffffffffffffff19169590971694909417909555908152600284528181209281529190925220805460ff19166001179055565b600080600160a060020a038416156107905783610792565b335b905061079d8361092a565b156107c357826107ad82826108aa565b6107b85760006107ba565b815b925050506106e8565b600160a060020a0390811660009081526020818152604080832086845290915290205416905092915050565b6000808061081d857f01ffc9a70000000000000000000000000000000000000000000000000000000061094c565b909250905081158061082d575080155b1561083d576000925050506106e8565b61084f85600160e060020a031961094c565b909250905081158061086057508015155b15610870576000925050506106e8565b61087a858561094c565b909250905060018214801561088f5750806001145b1561089f576001925050506106e8565b506000949350505050565b600160a060020a0382166000908152600260209081526040808320600160e060020a03198516845290915281205460ff1615156108f2576108eb83836107ef565b90506106e8565b50600160a060020a03808316600081815260208181526040808320600160e060020a0319871684529091529020549091161492915050565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff161590565b6040517f01ffc9a7000000000000000000000000000000000000000000000000000000008082526004820183905260009182919060208160248189617530fa90519096909550935050505056fea165627a7a72305820377f4a2d4301ede9949f163f319021a6e9c687c292a5e2b2c4734c126b524e6c0029", + "balance": "0x0" + }, + "13b0D85CcB8bf860b6b79AF3029fCA081AE9beF2": { + "code": "0x6080604052600436106100435760003560e01c8063076c37b21461004f578063481286e61461007157806356299481146100ba57806366cfa057146100da57600080fd5b3661004a57005b600080fd5b34801561005b57600080fd5b5061006f61006a366004610327565b6100fa565b005b34801561007d57600080fd5b5061009161008c366004610327565b61014a565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b3480156100c657600080fd5b506100916100d5366004610349565b61015d565b3480156100e657600080fd5b5061006f6100f53660046103ca565b610172565b61014582826040518060200161010f9061031a565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe082820381018352601f90910116604052610183565b505050565b600061015683836102e7565b9392505050565b600061016a8484846102f0565b949350505050565b61017d838383610183565b50505050565b6000834710156101f4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f437265617465323a20696e73756666696369656e742062616c616e636500000060448201526064015b60405180910390fd5b815160000361025f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f437265617465323a2062797465636f6465206c656e677468206973207a65726f60448201526064016101eb565b8282516020840186f5905073ffffffffffffffffffffffffffffffffffffffff8116610156576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f437265617465323a204661696c6564206f6e206465706c6f790000000000000060448201526064016101eb565b60006101568383305b6000604051836040820152846020820152828152600b8101905060ff815360559020949350505050565b61014e806104ad83390190565b6000806040838503121561033a57600080fd5b50508035926020909101359150565b60008060006060848603121561035e57600080fd5b8335925060208401359150604084013573ffffffffffffffffffffffffffffffffffffffff8116811461039057600080fd5b809150509250925092565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000806000606084860312156103df57600080fd5b8335925060208401359150604084013567ffffffffffffffff8082111561040557600080fd5b818601915086601f83011261041957600080fd5b81358181111561042b5761042b61039b565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f011681019083821181831017156104715761047161039b565b8160405282815289602084870101111561048a57600080fd5b826020860160208301376000602084830101528095505050505050925092509256fe608060405234801561001057600080fd5b5061012e806100206000396000f3fe6080604052348015600f57600080fd5b506004361060285760003560e01c8063249cb3fa14602d575b600080fd5b603c603836600460b1565b604e565b60405190815260200160405180910390f35b60008281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915281205460ff16608857600060aa565b7fa2ef4600d742022d532d4747cb3547474667d6f13804902513b2ec01c848f4b45b9392505050565b6000806040838503121560c357600080fd5b82359150602083013573ffffffffffffffffffffffffffffffffffffffff8116811460ed57600080fd5b80915050925092905056fea26469706673582212205ffd4e6cede7d06a5daf93d48d0541fc68189eeb16608c1999a82063b666eb1164736f6c63430008130033a2646970667358221220fdc4a0fe96e3b21c108ca155438d37c9143fb01278a3c1d274948bad89c564ba64736f6c63430008130033", + "balance": "0x0" + }, + "000F3df6D732807Ef1319fB7B8bB8522d0Beac02": { + "code": "0x3373fffffffffffffffffffffffffffffffffffffffe14604d57602036146024575f5ffd5b5f35801560495762001fff810690815414603c575f5ffd5b62001fff01545f5260205ff35b5f5ffd5b62001fff42064281555f359062001fff015500", + "balance": "0x0" + }, + "ba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed": { + "code": "0x60806040526004361061018a5760003560e01c806381503da1116100d6578063d323826a1161007f578063e96deee411610059578063e96deee414610395578063f5745aba146103a8578063f9664498146103bb57600080fd5b8063d323826a1461034f578063ddda0acb1461036f578063e437252a1461038257600080fd5b80639c36a286116100b05780639c36a28614610316578063a7db93f214610329578063c3fe107b1461033c57600080fd5b806381503da1146102d0578063890c283b146102e357806398e810771461030357600080fd5b80632f990e3f116101385780636cec2536116101125780636cec25361461027d57806374637a7a1461029d5780637f565360146102bd57600080fd5b80632f990e3f1461023757806331a7c8c81461024a57806342d654fc1461025d57600080fd5b806327fe18221161016957806327fe1822146101f15780632852527a1461020457806328ddd0461461021757600080fd5b8062d84acb1461018f57806326307668146101cb57806326a32fc7146101de575b600080fd5b6101a261019d366004612915565b6103ce565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390f35b6101a26101d9366004612994565b6103e6565b6101a26101ec3660046129db565b610452565b6101a26101ff3660046129db565b6104de565b6101a2610212366004612a39565b610539565b34801561022357600080fd5b506101a2610232366004612a90565b6106fe565b6101a2610245366004612aa9565b61072a565b6101a2610258366004612aa9565b6107bb565b34801561026957600080fd5b506101a2610278366004612b1e565b6107c9565b34801561028957600080fd5b506101a2610298366004612a90565b610823565b3480156102a957600080fd5b506101a26102b8366004612b4a565b61084f565b6101a26102cb3660046129db565b611162565b6101a26102de366004612b74565b6111e8565b3480156102ef57600080fd5b506101a26102fe366004612bac565b611276565b6101a2610311366004612bce565b6112a3565b6101a2610324366004612994565b611505565b6101a2610337366004612c49565b6116f1565b6101a261034a366004612aa9565b611964565b34801561035b57600080fd5b506101a261036a366004612cd9565b6119ed565b6101a261037d366004612c49565b611a17565b6101a2610390366004612bce565b611e0c565b6101a26103a3366004612915565b611e95565b6101a26103b6366004612bce565b611ea4565b6101a26103c9366004612b74565b611f2d565b60006103dd8585858533611a17565b95945050505050565b6000806103f2846120db565b90508083516020850134f59150610408826123d3565b604051819073ffffffffffffffffffffffffffffffffffffffff8416907fb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f790600090a35092915050565b60006104d86104d260408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b836103e6565b92915050565b600081516020830134f090506104f3816123d3565b60405173ffffffffffffffffffffffffffffffffffffffff8216907f4db17dd5e4732fb6da34a148104a592783ca119a1e7bb8829eba6cbadef0b51190600090a2919050565b600080610545856120db565b905060008460601b90506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160148201527f5af43d82803e903d91602b57fd5bf300000000000000000000000000000000006028820152826037826000f593505073ffffffffffffffffffffffffffffffffffffffff8316610635576040517fc05cee7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed1660048201526024015b60405180910390fd5b604051829073ffffffffffffffffffffffffffffffffffffffff8516907fb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f790600090a36000808473ffffffffffffffffffffffffffffffffffffffff1634876040516106a19190612d29565b60006040518083038185875af1925050503d80600081146106de576040519150601f19603f3d011682016040523d82523d6000602084013e6106e3565b606091505b50915091506106f382828961247d565b505050509392505050565b60006104d87f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed8361084f565b60006107b36107aa60408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b85858533611a17565b949350505050565b60006107b3848484336112a3565b60006040518260005260ff600b53836020527f21c35dbe1b344a2488cf3321d6ce542f8e9f305544ff09e4993a62319a497c1f6040526055600b20601452806040525061d694600052600160345350506017601e20919050565b60006104d8827f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed6107c9565b600060607f9400000000000000000000000000000000000000000000000000000000000000610887600167ffffffffffffffff612d45565b67ffffffffffffffff16841115610902576040517f3c55ab3b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b836000036109c7576040517fd60000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f800000000000000000000000000000000000000000000000000000000000000060368201526037015b6040516020818303038152906040529150611152565b607f8411610a60576040517fd60000000000000000000000000000000000000000000000000000000000000060208201527fff0000000000000000000000000000000000000000000000000000000000000080831660218301527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606088901b16602283015260f886901b1660368201526037016109b1565b60ff8411610b1f576040517fd70000000000000000000000000000000000000000000000000000000000000060208201527fff0000000000000000000000000000000000000000000000000000000000000080831660218301527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606088901b1660228301527f8100000000000000000000000000000000000000000000000000000000000000603683015260f886901b1660378201526038016109b1565b61ffff8411610bff576040517fd80000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f820000000000000000000000000000000000000000000000000000000000000060368201527fffff00000000000000000000000000000000000000000000000000000000000060f086901b1660378201526039016109b1565b62ffffff8411610ce0576040517fd90000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f830000000000000000000000000000000000000000000000000000000000000060368201527fffffff000000000000000000000000000000000000000000000000000000000060e886901b166037820152603a016109b1565b63ffffffff8411610dc2576040517fda0000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f840000000000000000000000000000000000000000000000000000000000000060368201527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b166037820152603b016109b1565b64ffffffffff8411610ea5576040517fdb0000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f850000000000000000000000000000000000000000000000000000000000000060368201527fffffffffff00000000000000000000000000000000000000000000000000000060d886901b166037820152603c016109b1565b65ffffffffffff8411610f89576040517fdc0000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f860000000000000000000000000000000000000000000000000000000000000060368201527fffffffffffff000000000000000000000000000000000000000000000000000060d086901b166037820152603d016109b1565b66ffffffffffffff841161106e576040517fdd0000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f870000000000000000000000000000000000000000000000000000000000000060368201527fffffffffffffff0000000000000000000000000000000000000000000000000060c886901b166037820152603e016109b1565b6040517fde0000000000000000000000000000000000000000000000000000000000000060208201527fff00000000000000000000000000000000000000000000000000000000000000821660218201527fffffffffffffffffffffffffffffffffffffffff000000000000000000000000606087901b1660228201527f880000000000000000000000000000000000000000000000000000000000000060368201527fffffffffffffffff00000000000000000000000000000000000000000000000060c086901b166037820152603f0160405160208183030381529060405291505b5080516020909101209392505050565b60006104d86111e260408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b83611505565b600061126f61126860408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b8484610539565b9392505050565b600061126f83837f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed6119ed565b60008451602086018451f090506112b9816123d3565b60405173ffffffffffffffffffffffffffffffffffffffff8216907f4db17dd5e4732fb6da34a148104a592783ca119a1e7bb8829eba6cbadef0b51190600090a26000808273ffffffffffffffffffffffffffffffffffffffff168560200151876040516113279190612d29565b60006040518083038185875af1925050503d8060008114611364576040519150601f19603f3d011682016040523d82523d6000602084013e611369565b606091505b5091509150816113c9577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed816040517fa57ca23900000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed1631156114fb578373ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed73ffffffffffffffffffffffffffffffffffffffff163160405160006040518083038185875af1925050503d8060008114611495576040519150601f19603f3d011682016040523d82523d6000602084013e61149a565b606091505b509092509050816114fb577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed816040517fc2b3f44500000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b5050949350505050565b600080611511846120db565b905060006040518060400160405280601081526020017f67363d3d37363d34f03d5260086018f30000000000000000000000000000000081525090506000828251602084016000f5905073ffffffffffffffffffffffffffffffffffffffff81166115e0576040517fc05cee7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b604051839073ffffffffffffffffffffffffffffffffffffffff8316907f2feea65dd4e9f9cbd86b74b7734210c59a1b2981b5b137bd0ee3e208200c906790600090a361162c83610823565b935060008173ffffffffffffffffffffffffffffffffffffffff1634876040516116569190612d29565b60006040518083038185875af1925050503d8060008114611693576040519150601f19603f3d011682016040523d82523d6000602084013e611698565b606091505b505090506116a681866124ff565b60405173ffffffffffffffffffffffffffffffffffffffff8616907f4db17dd5e4732fb6da34a148104a592783ca119a1e7bb8829eba6cbadef0b51190600090a25050505092915050565b6000806116fd876120db565b9050808651602088018651f59150611714826123d3565b604051819073ffffffffffffffffffffffffffffffffffffffff8416907fb8fda7e00c6b06a2b54e58521bc5894fee35f1090e5a3bb6390bfe2b98b497f790600090a36000808373ffffffffffffffffffffffffffffffffffffffff168660200151886040516117849190612d29565b60006040518083038185875af1925050503d80600081146117c1576040519150601f19603f3d011682016040523d82523d6000602084013e6117c6565b606091505b509150915081611826577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed816040517fa57ca23900000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed163115611958578473ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed73ffffffffffffffffffffffffffffffffffffffff163160405160006040518083038185875af1925050503d80600081146118f2576040519150601f19603f3d011682016040523d82523d6000602084013e6118f7565b606091505b50909250905081611958577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed816040517fc2b3f44500000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b50505095945050505050565b60006107b36119e460408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b858585336116f1565b6000604051836040820152846020820152828152600b8101905060ff815360559020949350505050565b600080611a23876120db565b905060006040518060400160405280601081526020017f67363d3d37363d34f03d5260086018f30000000000000000000000000000000081525090506000828251602084016000f5905073ffffffffffffffffffffffffffffffffffffffff8116611af2576040517fc05cee7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b604051839073ffffffffffffffffffffffffffffffffffffffff8316907f2feea65dd4e9f9cbd86b74b7734210c59a1b2981b5b137bd0ee3e208200c906790600090a3611b3e83610823565b935060008173ffffffffffffffffffffffffffffffffffffffff1687600001518a604051611b6c9190612d29565b60006040518083038185875af1925050503d8060008114611ba9576040519150601f19603f3d011682016040523d82523d6000602084013e611bae565b606091505b50509050611bbc81866124ff565b60405173ffffffffffffffffffffffffffffffffffffffff8616907f4db17dd5e4732fb6da34a148104a592783ca119a1e7bb8829eba6cbadef0b51190600090a260608573ffffffffffffffffffffffffffffffffffffffff1688602001518a604051611c299190612d29565b60006040518083038185875af1925050503d8060008114611c66576040519150601f19603f3d011682016040523d82523d6000602084013e611c6b565b606091505b50909250905081611ccc577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed816040517fa57ca23900000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b73ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed163115611dfe578673ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed73ffffffffffffffffffffffffffffffffffffffff163160405160006040518083038185875af1925050503d8060008114611d98576040519150601f19603f3d011682016040523d82523d6000602084013e611d9d565b606091505b50909250905081611dfe577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed816040517fc2b3f44500000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b505050505095945050505050565b60006103dd611e8c60408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b868686866116f1565b60006103dd85858585336116f1565b60006103dd611f2460408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b86868686611a17565b6000808360601b90506040517f3d602d80600a3d3981f3363d3d373d3d3d363d7300000000000000000000000081528160148201527f5af43d82803e903d91602b57fd5bf3000000000000000000000000000000000060288201526037816000f092505073ffffffffffffffffffffffffffffffffffffffff8216612016576040517fc05cee7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b60405173ffffffffffffffffffffffffffffffffffffffff8316907f4db17dd5e4732fb6da34a148104a592783ca119a1e7bb8829eba6cbadef0b51190600090a26000808373ffffffffffffffffffffffffffffffffffffffff1634866040516120809190612d29565b60006040518083038185875af1925050503d80600081146120bd576040519150601f19603f3d011682016040523d82523d6000602084013e6120c2565b606091505b50915091506120d282828861247d565b50505092915050565b60008060006120e9846125b3565b9092509050600082600281111561210257612102612e02565b1480156121205750600081600281111561211e5761211e612e02565b145b1561215e57604080513360208201524691810191909152606081018590526080016040516020818303038152906040528051906020012092506123cc565b600082600281111561217257612172612e02565b1480156121905750600181600281111561218e5761218e612e02565b145b156121b0576121a9338560009182526020526040902090565b92506123cc565b60008260028111156121c4576121c4612e02565b03612233576040517f13b3a2a100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b600182600281111561224757612247612e02565b1480156122655750600081600281111561226357612263612e02565b145b1561227e576121a9468560009182526020526040902090565b600182600281111561229257612292612e02565b1480156122b0575060028160028111156122ae576122ae612e02565b145b1561231f576040517f13b3a2a100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b61239a60408051437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101406020830152419282019290925260608101919091524260808201524460a08201524660c08201523360e08201526000906101000160405160208183030381529060405280519060200120905090565b84036123a657836123c9565b604080516020810186905201604051602081830303815290604052805190602001205b92505b5050919050565b73ffffffffffffffffffffffffffffffffffffffff8116158061240b575073ffffffffffffffffffffffffffffffffffffffff81163b155b1561247a576040517fc05cee7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b50565b82158061249f575073ffffffffffffffffffffffffffffffffffffffff81163b155b156124fa577f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed826040517fa57ca23900000000000000000000000000000000000000000000000000000000815260040161062c929190612d94565b505050565b811580612520575073ffffffffffffffffffffffffffffffffffffffff8116155b80612540575073ffffffffffffffffffffffffffffffffffffffff81163b155b156125af576040517fc05cee7a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000ba5ed099633d3b313e4d5f7bdc1305d3c28ba5ed16600482015260240161062c565b5050565b600080606083901c3314801561261057508260141a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f0100000000000000000000000000000000000000000000000000000000000000145b1561262057506000905080915091565b606083901c3314801561265a57507fff00000000000000000000000000000000000000000000000000000000000000601484901a60f81b16155b1561266b5750600090506001915091565b33606084901c036126825750600090506002915091565b606083901c1580156126db57508260141a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f0100000000000000000000000000000000000000000000000000000000000000145b156126ec5750600190506000915091565b606083901c15801561272557507fff00000000000000000000000000000000000000000000000000000000000000601484901a60f81b16155b1561273557506001905080915091565b606083901c61274a5750600190506002915091565b8260141a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f0100000000000000000000000000000000000000000000000000000000000000036127a55750600290506000915091565b8260141a60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166000036127e15750600290506001915091565b506002905080915091565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f83011261282c57600080fd5b813567ffffffffffffffff80821115612847576128476127ec565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f0116810190828211818310171561288d5761288d6127ec565b816040528381528660208588010111156128a657600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000604082840312156128d857600080fd5b6040516040810181811067ffffffffffffffff821117156128fb576128fb6127ec565b604052823581526020928301359281019290925250919050565b60008060008060a0858703121561292b57600080fd5b84359350602085013567ffffffffffffffff8082111561294a57600080fd5b6129568883890161281b565b9450604087013591508082111561296c57600080fd5b506129798782880161281b565b92505061298986606087016128c6565b905092959194509250565b600080604083850312156129a757600080fd5b82359150602083013567ffffffffffffffff8111156129c557600080fd5b6129d18582860161281b565b9150509250929050565b6000602082840312156129ed57600080fd5b813567ffffffffffffffff811115612a0457600080fd5b6107b38482850161281b565b803573ffffffffffffffffffffffffffffffffffffffff81168114612a3457600080fd5b919050565b600080600060608486031215612a4e57600080fd5b83359250612a5e60208501612a10565b9150604084013567ffffffffffffffff811115612a7a57600080fd5b612a868682870161281b565b9150509250925092565b600060208284031215612aa257600080fd5b5035919050565b600080600060808486031215612abe57600080fd5b833567ffffffffffffffff80821115612ad657600080fd5b612ae28783880161281b565b94506020860135915080821115612af857600080fd5b50612b058682870161281b565b925050612b1585604086016128c6565b90509250925092565b60008060408385031215612b3157600080fd5b82359150612b4160208401612a10565b90509250929050565b60008060408385031215612b5d57600080fd5b612b6683612a10565b946020939093013593505050565b60008060408385031215612b8757600080fd5b612b9083612a10565b9150602083013567ffffffffffffffff8111156129c557600080fd5b60008060408385031215612bbf57600080fd5b50508035926020909101359150565b60008060008060a08587031215612be457600080fd5b843567ffffffffffffffff80821115612bfc57600080fd5b612c088883890161281b565b95506020870135915080821115612c1e57600080fd5b50612c2b8782880161281b565b935050612c3b86604087016128c6565b915061298960808601612a10565b600080600080600060c08688031215612c6157600080fd5b85359450602086013567ffffffffffffffff80821115612c8057600080fd5b612c8c89838a0161281b565b95506040880135915080821115612ca257600080fd5b50612caf8882890161281b565b935050612cbf87606088016128c6565b9150612ccd60a08701612a10565b90509295509295909350565b600080600060608486031215612cee57600080fd5b8335925060208401359150612b1560408501612a10565b60005b83811015612d20578181015183820152602001612d08565b50506000910152565b60008251612d3b818460208701612d05565b9190910192915050565b67ffffffffffffffff828116828216039080821115612d8d577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5092915050565b73ffffffffffffffffffffffffffffffffffffffff831681526040602082015260008251806040840152612dcf816060850160208701612d05565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016060019392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fdfea164736f6c6343000817000a", + "balance": "0x0" + }, + "cA11bde05977b3631167028862bE2a173976CA11": { + "code": "0x6080604052600436106100f35760003560e01c80634d2301cc1161008a578063a8b0574e11610059578063a8b0574e1461025a578063bce38bd714610275578063c3077fa914610288578063ee82ac5e1461029b57600080fd5b80634d2301cc146101ec57806372425d9d1461022157806382ad56cb1461023457806386d516e81461024757600080fd5b80633408e470116100c65780633408e47014610191578063399542e9146101a45780633e64a696146101c657806342cbb15c146101d957600080fd5b80630f28c97d146100f8578063174dea711461011a578063252dba421461013a57806327e86d6e1461015b575b600080fd5b34801561010457600080fd5b50425b6040519081526020015b60405180910390f35b61012d610128366004610a85565b6102ba565b6040516101119190610bbe565b61014d610148366004610a85565b6104ef565b604051610111929190610bd8565b34801561016757600080fd5b50437fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0140610107565b34801561019d57600080fd5b5046610107565b6101b76101b2366004610c60565b610690565b60405161011193929190610cba565b3480156101d257600080fd5b5048610107565b3480156101e557600080fd5b5043610107565b3480156101f857600080fd5b50610107610207366004610ce2565b73ffffffffffffffffffffffffffffffffffffffff163190565b34801561022d57600080fd5b5044610107565b61012d610242366004610a85565b6106ab565b34801561025357600080fd5b5045610107565b34801561026657600080fd5b50604051418152602001610111565b61012d610283366004610c60565b61085a565b6101b7610296366004610a85565b610a1a565b3480156102a757600080fd5b506101076102b6366004610d18565b4090565b60606000828067ffffffffffffffff8111156102d8576102d8610d31565b60405190808252806020026020018201604052801561031e57816020015b6040805180820190915260008152606060208201528152602001906001900390816102f65790505b5092503660005b8281101561047757600085828151811061034157610341610d60565b6020026020010151905087878381811061035d5761035d610d60565b905060200281019061036f9190610d8f565b6040810135958601959093506103886020850185610ce2565b73ffffffffffffffffffffffffffffffffffffffff16816103ac6060870187610dcd565b6040516103ba929190610e32565b60006040518083038185875af1925050503d80600081146103f7576040519150601f19603f3d011682016040523d82523d6000602084013e6103fc565b606091505b50602080850191909152901515808452908501351761046d577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260846000fd5b5050600101610325565b508234146104e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f4d756c746963616c6c333a2076616c7565206d69736d6174636800000000000060448201526064015b60405180910390fd5b50505092915050565b436060828067ffffffffffffffff81111561050c5761050c610d31565b60405190808252806020026020018201604052801561053f57816020015b606081526020019060019003908161052a5790505b5091503660005b8281101561068657600087878381811061056257610562610d60565b90506020028101906105749190610e42565b92506105836020840184610ce2565b73ffffffffffffffffffffffffffffffffffffffff166105a66020850185610dcd565b6040516105b4929190610e32565b6000604051808303816000865af19150503d80600081146105f1576040519150601f19603f3d011682016040523d82523d6000602084013e6105f6565b606091505b5086848151811061060957610609610d60565b602090810291909101015290508061067d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060448201526064016104dd565b50600101610546565b5050509250929050565b43804060606106a086868661085a565b905093509350939050565b6060818067ffffffffffffffff8111156106c7576106c7610d31565b60405190808252806020026020018201604052801561070d57816020015b6040805180820190915260008152606060208201528152602001906001900390816106e55790505b5091503660005b828110156104e657600084828151811061073057610730610d60565b6020026020010151905086868381811061074c5761074c610d60565b905060200281019061075e9190610e76565b925061076d6020840184610ce2565b73ffffffffffffffffffffffffffffffffffffffff166107906040850185610dcd565b60405161079e929190610e32565b6000604051808303816000865af19150503d80600081146107db576040519150601f19603f3d011682016040523d82523d6000602084013e6107e0565b606091505b506020808401919091529015158083529084013517610851577f08c379a000000000000000000000000000000000000000000000000000000000600052602060045260176024527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060445260646000fd5b50600101610714565b6060818067ffffffffffffffff81111561087657610876610d31565b6040519080825280602002602001820160405280156108bc57816020015b6040805180820190915260008152606060208201528152602001906001900390816108945790505b5091503660005b82811015610a105760008482815181106108df576108df610d60565b602002602001015190508686838181106108fb576108fb610d60565b905060200281019061090d9190610e42565b925061091c6020840184610ce2565b73ffffffffffffffffffffffffffffffffffffffff1661093f6020850185610dcd565b60405161094d929190610e32565b6000604051808303816000865af19150503d806000811461098a576040519150601f19603f3d011682016040523d82523d6000602084013e61098f565b606091505b506020830152151581528715610a07578051610a07576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f4d756c746963616c6c333a2063616c6c206661696c656400000000000000000060448201526064016104dd565b506001016108c3565b5050509392505050565b6000806060610a2b60018686610690565b919790965090945092505050565b60008083601f840112610a4b57600080fd5b50813567ffffffffffffffff811115610a6357600080fd5b6020830191508360208260051b8501011115610a7e57600080fd5b9250929050565b60008060208385031215610a9857600080fd5b823567ffffffffffffffff811115610aaf57600080fd5b610abb85828601610a39565b90969095509350505050565b6000815180845260005b81811015610aed57602081850181015186830182015201610ad1565b81811115610aff576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b84811015610bb1578583037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe001895281518051151584528401516040858501819052610b9d81860183610ac7565b9a86019a9450505090830190600101610b4f565b5090979650505050505050565b602081526000610bd16020830184610b32565b9392505050565b600060408201848352602060408185015281855180845260608601915060608160051b870101935082870160005b82811015610c52577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa0888703018452610c40868351610ac7565b95509284019290840190600101610c06565b509398975050505050505050565b600080600060408486031215610c7557600080fd5b83358015158114610c8557600080fd5b9250602084013567ffffffffffffffff811115610ca157600080fd5b610cad86828701610a39565b9497909650939450505050565b838152826020820152606060408201526000610cd96060830184610b32565b95945050505050565b600060208284031215610cf457600080fd5b813573ffffffffffffffffffffffffffffffffffffffff81168114610bd157600080fd5b600060208284031215610d2a57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81833603018112610dc357600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112610e0257600080fd5b83018035915067ffffffffffffffff821115610e1d57600080fd5b602001915036819003821315610a7e57600080fd5b8183823760009101908152919050565b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc1833603018112610dc357600080fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa1833603018112610dc357600080fdfea2646970667358221220bb2b5c71a328032f97c676ae39a1ec2148d3e5d6f73d95e9b17910152d61f16264736f6c634300080c0033", + "balance": "0x0" + }, + "bC10000000000000000000000000000000000000": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x6080604052600436106100e7575f3560e01c806370a0823111610087578063a9059cbb11610057578063a9059cbb1461026c578063d0e30db01461028b578063d505accf14610293578063dd62ed3e146102b2575f5ffd5b806370a08231146101de5780637ecebe001461021257806384b0196e1461023157806395d89b4114610258575f5ffd5b806323b872dd116100c257806323b872dd146101715780632e1a7d4d14610190578063313ce567146101af5780633644e515146101ca575f5ffd5b806306fdde03146100fa578063095ea7b31461012457806318160ddd14610153575f5ffd5b366100f6576100f46102f6565b005b5f5ffd5b348015610105575f5ffd5b5061010e610337565b60405161011b9190610e91565b60405180910390f35b34801561012f575f5ffd5b5061014361013e366004610ec5565b6103c7565b604051901515815260200161011b565b34801561015e575f5ffd5b506002545b60405190815260200161011b565b34801561017c575f5ffd5b5061014361018b366004610eed565b6103e0565b34801561019b575f5ffd5b506100f46101aa366004610f27565b610403565b3480156101ba575f5ffd5b506040516012815260200161011b565b3480156101d5575f5ffd5b5061016361044f565b3480156101e9575f5ffd5b506101636101f8366004610f3e565b6001600160a01b03165f9081526020819052604090205490565b34801561021d575f5ffd5b5061016361022c366004610f3e565b61045d565b34801561023c575f5ffd5b5061024561047a565b60405161011b9796959493929190610f57565b348015610263575f5ffd5b5061010e6104bc565b348015610277575f5ffd5b50610143610286366004610ec5565b6104cb565b6100f46102f6565b34801561029e575f5ffd5b506100f46102ad366004610fed565b6104d8565b3480156102bd575f5ffd5b506101636102cc36600461105a565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6103003334610613565b60405134815233907fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c9060200160405180910390a2565b6060600380546103469061108b565b80601f01602080910402602001604051908101604052809291908181526020018280546103729061108b565b80156103bd5780601f10610394576101008083540402835291602001916103bd565b820191905f5260205f20905b8154815290600101906020018083116103a057829003601f168201915b5050505050905090565b5f336103d481858561064b565b60019150505b92915050565b5f336103ed85828561065d565b6103f88585856106d8565b506001949350505050565b61040d3382610735565b6104173382610769565b60405181815233907f7fcf532c15f0a6db0bd6d0e038bea71d30d808c7d98cb3bf7268a95bf5081b659060200160405180910390a250565b5f610458610803565b905090565b6001600160a01b0381165f908152600760205260408120546103da565b5f6060805f5f5f606061048b61092c565b610493610959565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b6060600480546103469061108b565b5f336103d48185856106d8565b834211156105015760405163313c898160e11b8152600481018590526024015b60405180910390fd5b5f7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c988888861054c8c6001600160a01b03165f90815260076020526040902080546001810190915590565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090505f6105a682610986565b90505f6105b5828787876109b2565b9050896001600160a01b0316816001600160a01b0316146105fc576040516325c0072360e11b81526001600160a01b0380831660048301528b1660248201526044016104f8565b6106078a8a8a61064b565b50505050505050505050565b6001600160a01b03821661063c5760405163ec442f0560e01b81525f60048201526024016104f8565b6106475f83836109de565b5050565b6106588383836001610b04565b505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f1981146106d257818110156106c457604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064016104f8565b6106d284848484035f610b04565b50505050565b6001600160a01b03831661070157604051634b637e8f60e11b81525f60048201526024016104f8565b6001600160a01b03821661072a5760405163ec442f0560e01b81525f60048201526024016104f8565b6106588383836109de565b6001600160a01b03821661075e57604051634b637e8f60e11b81525f60048201526024016104f8565b610647825f836109de565b804710156107935760405163cf47918160e01b8152476004820152602481018290526044016104f8565b5f826001600160a01b0316826040515f6040518083038185875af1925050503d805f81146107dc576040519150601f19603f3d011682016040523d82523d5f602084013e6107e1565b606091505b50509050806106585760405163d6bda27560e01b815260040160405180910390fd5b5f306001600160a01b037f0000000000000000000000000165878a594ca255338adfa4d48449f69242eb8f1614801561085b57507f000000000000000000000000000000000000000000000000000000000000beb046145b1561088557507f7f72c2e6bc58e9cdd90f0a36a5b202a9f24beaea0a7988cae6caf49d13c5a2a290565b610458604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527fd3974318b35c22bdad78531c2e406ce004418eec475a02ecc063f209cbf20828918101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b60606104587f57474254430000000000000000000000000000000000000000000000000000056005610bd6565b60606104587f31000000000000000000000000000000000000000000000000000000000000016006610bd6565b5f6103da610992610803565b8360405161190160f01b8152600281019290925260228201526042902090565b5f5f5f5f6109c288888888610c7f565b9250925092506109d28282610d47565b50909695505050505050565b6001600160a01b038316610a08578060025f8282546109fd91906110c3565b90915550610a789050565b6001600160a01b0383165f9081526020819052604090205481811015610a5a5760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016104f8565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b038216610a9457600280548290039055610ab2565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610af791815260200190565b60405180910390a3505050565b6001600160a01b038416610b2d5760405163e602df0560e01b81525f60048201526024016104f8565b6001600160a01b038316610b5657604051634a1406b160e11b81525f60048201526024016104f8565b6001600160a01b038085165f90815260016020908152604080832093871683529290522082905580156106d257826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610bc891815260200190565b60405180910390a350505050565b606060ff8314610bf057610be983610dff565b90506103da565b818054610bfc9061108b565b80601f0160208091040260200160405190810160405280929190818152602001828054610c289061108b565b8015610c735780601f10610c4a57610100808354040283529160200191610c73565b820191905f5260205f20905b815481529060010190602001808311610c5657829003601f168201915b505050505090506103da565b5f80807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115610cb857505f91506003905082610d3d565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015610d09573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b038116610d3457505f925060019150829050610d3d565b92505f91508190505b9450945094915050565b5f826003811115610d5a57610d5a6110e2565b03610d63575050565b6001826003811115610d7757610d776110e2565b03610d955760405163f645eedf60e01b815260040160405180910390fd5b6002826003811115610da957610da96110e2565b03610dca5760405163fce698f760e01b8152600481018290526024016104f8565b6003826003811115610dde57610dde6110e2565b03610647576040516335e2f38360e21b8152600481018290526024016104f8565b60605f610e0b83610e3c565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f60ff8216601f8111156103da57604051632cd44ac360e21b815260040160405180910390fd5b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f610ea36020830184610e63565b9392505050565b80356001600160a01b0381168114610ec0575f5ffd5b919050565b5f5f60408385031215610ed6575f5ffd5b610edf83610eaa565b946020939093013593505050565b5f5f5f60608486031215610eff575f5ffd5b610f0884610eaa565b9250610f1660208501610eaa565b929592945050506040919091013590565b5f60208284031215610f37575f5ffd5b5035919050565b5f60208284031215610f4e575f5ffd5b610ea382610eaa565b60ff60f81b8816815260e060208201525f610f7560e0830189610e63565b8281036040840152610f878189610e63565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b81811015610fdc578351835260209384019390920191600101610fbe565b50909b9a5050505050505050505050565b5f5f5f5f5f5f5f60e0888a031215611003575f5ffd5b61100c88610eaa565b965061101a60208901610eaa565b95506040880135945060608801359350608088013560ff8116811461103d575f5ffd5b9699959850939692959460a0840135945060c09093013592915050565b5f5f6040838503121561106b575f5ffd5b61107483610eaa565b915061108260208401610eaa565b90509250929050565b600181811c9082168061109f57607f821691505b6020821081036110bd57634e487b7160e01b5f52602260045260245ffd5b50919050565b808201808211156103da57634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52602160045260245ffdfea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000003": "0x5772617070656420476f617420426974636f696e000000000000000000000028", + "0x0000000000000000000000000000000000000000000000000000000000000004": "0x574742544300000000000000000000000000000000000000000000000000000a" + } + }, + "bC10000000000000000000000000000000000001": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x608060405234801561000f575f5ffd5b506004361061019a575f3560e01c806370a08231116100e857806395d89b4111610093578063c3cda5201161006e578063c3cda52014610392578063d505accf146103a5578063dd62ed3e146103b8578063f1127ed8146103f0575f5ffd5b806395d89b41146103645780639ab24eb01461036c578063a9059cbb1461037f575f5ffd5b806384b0196e116100c357806384b0196e146103175780638e539e8c1461033257806391ddadf414610345575f5ffd5b806370a08231146102c957806379cc6790146102f15780637ecebe0014610304575f5ffd5b80633a46b1a811610148578063587cde1e11610123578063587cde1e1461024b5780635c19a95c1461028e5780636fcfff45146102a1575f5ffd5b80633a46b1a81461021b57806342966c681461022e5780634bf5d7e914610243575f5ffd5b806323b872dd1161017857806323b872dd146101f1578063313ce567146102045780633644e51514610213575f5ffd5b806306fdde031461019e578063095ea7b3146101bc57806318160ddd146101df575b5f5ffd5b6101a661042f565b6040516101b39190611a59565b60405180910390f35b6101cf6101ca366004611a86565b6104bf565b60405190151581526020016101b3565b6002545b6040519081526020016101b3565b6101cf6101ff366004611aae565b6104d8565b604051601281526020016101b3565b6101e36104fb565b6101e3610229366004611a86565b610509565b61024161023c366004611ae8565b61058d565b005b6101a661059a565b610276610259366004611aff565b6001600160a01b039081165f908152600860205260409020541690565b6040516001600160a01b0390911681526020016101b3565b61024161029c366004611aff565b610612565b6102b46102af366004611aff565b610621565b60405163ffffffff90911681526020016101b3565b6101e36102d7366004611aff565b6001600160a01b03165f9081526020819052604090205490565b6102416102ff366004611a86565b61062b565b6101e3610312366004611aff565b610640565b61031f61064a565b6040516101b39796959493929190611b18565b6101e3610340366004611ae8565b61068c565b61034d6106f5565b60405165ffffffffffff90911681526020016101b3565b6101a66106fe565b6101e361037a366004611aff565b61070d565b6101cf61038d366004611a86565b61073c565b6102416103a0366004611bbe565b610749565b6102416103b3366004611c12565b610805565b6101e36103c6366004611c78565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b6104036103fe366004611ca9565b61093b565b60408051825165ffffffffffff1681526020928301516001600160d01b031692810192909252016101b3565b60606003805461043e90611ce6565b80601f016020809104026020016040519081016040528092919081815260200182805461046a90611ce6565b80156104b55780601f1061048c576101008083540402835291602001916104b5565b820191905f5260205f20905b81548152906001019060200180831161049857829003601f168201915b5050505050905090565b5f336104cc818585610975565b60019150505b92915050565b5f336104e5858285610987565b6104f0858585610a02565b506001949350505050565b5f610504610a5f565b905090565b5f5f6105136106f5565b90508065ffffffffffff16831061055357604051637669fc0f60e11b81526004810184905265ffffffffffff821660248201526044015b60405180910390fd5b61057c61055f84610b88565b6001600160a01b0386165f90815260096020526040902090610bbe565b6001600160d01b0316949350505050565b6105973382610c71565b50565b60606105a4610ca5565b65ffffffffffff166105b46106f5565b65ffffffffffff16146105da576040516301bfc1c560e61b815260040160405180910390fd5b5060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b3361061d8183610caf565b5050565b5f6104d282610d38565b610636823383610987565b61061d8282610c71565b5f6104d282610d59565b5f6060805f5f5f606061065b610d76565b610663610da3565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b5f5f6106966106f5565b90508065ffffffffffff1683106106d157604051637669fc0f60e11b81526004810184905265ffffffffffff8216602482015260440161054a565b6106e56106dd84610b88565b600a90610bbe565b6001600160d01b03169392505050565b5f610504610ca5565b60606004805461043e90611ce6565b6001600160a01b0381165f90815260096020526040812061072d90610dd0565b6001600160d01b031692915050565b5f336104cc818585610a02565b8342111561076d57604051632341d78760e11b81526004810185905260240161054a565b604080517fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60208201526001600160a01b0388169181019190915260608101869052608081018590525f906107e6906107de9060a00160405160208183030381529060405280519060200120610e0a565b858585610e36565b90506107f28187610e62565b6107fc8188610caf565b50505050505050565b834211156108295760405163313c898160e11b81526004810185905260240161054a565b5f7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886108748c6001600160a01b03165f90815260076020526040902080546001810190915590565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090505f6108ce82610e0a565b90505f6108dd82878787610e36565b9050896001600160a01b0316816001600160a01b031614610924576040516325c0072360e11b81526001600160a01b0380831660048301528b16602482015260440161054a565b61092f8a8a8a610975565b50505050505050505050565b604080518082019091525f80825260208201526109588383610eb4565b9392505050565b5f6109588284611d32565b5f6109588284611d51565b6109828383836001610ee8565b505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f1981146109fc57818110156109ee57604051637dc7a0d960e11b81526001600160a01b0384166004820152602481018290526044810183905260640161054a565b6109fc84848484035f610ee8565b50505050565b6001600160a01b038316610a2b57604051634b637e8f60e11b81525f600482015260240161054a565b6001600160a01b038216610a545760405163ec442f0560e01b81525f600482015260240161054a565b610982838383610fba565b5f306001600160a01b037f0000000000000000000000005fbdb2315678afecb367f032d93f642f64180aa316148015610ab757507f000000000000000000000000000000000000000000000000000000000000beb046145b15610ae157507fbdee81e7eb1c2ddc71067db771819a5ce89a96e369cfdb7f4ac9b387fa9258e490565b610504604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f37c469dadd9df9fb454182ffced72eec76a99c56ccde61f27666b040e87df709918101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b5f65ffffffffffff821115610bba576040516306dfcc6560e41b8152603060048201526024810183905260440161054a565b5090565b81545f9081816005811115610c1a575f610bd784610fc5565b610be19085611d70565b5f8881526020902090915081015465ffffffffffff9081169087161015610c0a57809150610c18565b610c15816001611d83565b92505b505b5f610c278787858561112a565b90508015610c6457610c4b87610c3e600184611d70565b5f91825260209091200190565b54660100000000000090046001600160d01b0316610c66565b5f5b979650505050505050565b6001600160a01b038216610c9a57604051634b637e8f60e11b81525f600482015260240161054a565b61061d825f83610fba565b5f61050443610b88565b6001600160a01b038281165f8181526008602052604080822080548686167fffffffffffffffffffffffff0000000000000000000000000000000000000000821681179092559151919094169392849290917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a46109828183610d3386611189565b6111a6565b6001600160a01b0381165f908152600960205260408120546104d29061130f565b6001600160a01b0381165f908152600760205260408120546104d2565b60606105047f474f415400000000000000000000000000000000000000000000000000000004600561133f565b60606105047f3100000000000000000000000000000000000000000000000000000000000001600661133f565b80545f908015610e0257610de983610c3e600184611d70565b54660100000000000090046001600160d01b0316610958565b5f9392505050565b5f6104d2610e16610a5f565b8360405161190160f01b8152600281019290925260228201526042902090565b5f5f5f5f610e46888888886113e8565b925092509250610e5682826114b0565b50909695505050505050565b6001600160a01b0382165f908152600760205260409020805460018101909155818114610982576040516301d4b62360e61b81526001600160a01b03841660048201526024810182905260440161054a565b604080518082019091525f80825260208201526001600160a01b0383165f9081526009602052604090206109589083611568565b6001600160a01b038416610f115760405163e602df0560e01b81525f600482015260240161054a565b6001600160a01b038316610f3a57604051634a1406b160e11b81525f600482015260240161054a565b6001600160a01b038085165f90815260016020908152604080832093871683529290522082905580156109fc57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92584604051610fac91815260200190565b60405180910390a350505050565b6109828383836115d8565b5f60018211610fd2575090565b8160017001000000000000000000000000000000008210610ff85760809190911c9060401b5b6801000000000000000082106110135760409190911c9060201b5b640100000000821061102a5760209190911c9060101b5b62010000821061103f5760109190911c9060081b5b61010082106110535760089190911c9060041b5b601082106110665760049190911c9060021b5b600482106110725760011b5b600302600190811c9081858161108a5761108a611d96565b048201901c905060018185816110a2576110a2611d96565b048201901c905060018185816110ba576110ba611d96565b048201901c905060018185816110d2576110d2611d96565b048201901c905060018185816110ea576110ea611d96565b048201901c9050600181858161110257611102611d96565b048201901c905061112181858161111b5761111b611d96565b04821190565b90039392505050565b5f5b81831015611181575f61113f848461163e565b5f8781526020902090915065ffffffffffff86169082015465ffffffffffff16111561116d5780925061117b565b611178816001611d83565b93505b5061112c565b509392505050565b6001600160a01b0381165f908152602081905260408120546104d2565b816001600160a01b0316836001600160a01b0316141580156111c757505f81115b15610982576001600160a01b0383161561126e576001600160a01b0383165f90815260096020526040812081906112099061096a61120486611658565b61168b565b6001600160d01b031691506001600160d01b03169150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051611263929190918252602082015260400190565b60405180910390a250505b6001600160a01b03821615610982576001600160a01b0382165f90815260096020526040812081906112a69061095f61120486611658565b6001600160d01b031691506001600160d01b03169150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051611300929190918252602082015260400190565b60405180910390a25050505050565b5f63ffffffff821115610bba576040516306dfcc6560e41b8152602060048201526024810183905260440161054a565b606060ff831461135957611352836116c3565b90506104d2565b81805461136590611ce6565b80601f016020809104026020016040519081016040528092919081815260200182805461139190611ce6565b80156113dc5780601f106113b3576101008083540402835291602001916113dc565b820191905f5260205f20905b8154815290600101906020018083116113bf57829003601f168201915b505050505090506104d2565b5f80807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561142157505f915060039050826114a6565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015611472573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b03811661149d57505f9250600191508290506114a6565b92505f91508190505b9450945094915050565b5f8260038111156114c3576114c3611daa565b036114cc575050565b60018260038111156114e0576114e0611daa565b036114fe5760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561151257611512611daa565b036115335760405163fce698f760e01b81526004810182905260240161054a565b600382600381111561154757611547611daa565b0361061d576040516335e2f38360e21b81526004810182905260240161054a565b604080518082019091525f8082526020820152825f018263ffffffff168154811061159557611595611dbe565b5f9182526020918290206040805180820190915291015465ffffffffffff81168252660100000000000090046001600160d01b0316918101919091529392505050565b6115e3838383611700565b6001600160a01b038316611633575f6115fb60025490565b90506001600160d01b038082111561163057604051630e58ae9360e11b8152600481018390526024810182905260440161054a565b50505b610982838383611826565b5f61164c6002848418611dd2565b61095890848416611d83565b5f6001600160d01b03821115610bba576040516306dfcc6560e41b815260d060048201526024810183905260440161054a565b5f5f6116b66116986106f5565b6116ae6116a488610dd0565b868863ffffffff16565b87919061189b565b915091505b935093915050565b60605f6116cf836118a8565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b6001600160a01b03831661172a578060025f82825461171f9190611d83565b9091555061179a9050565b6001600160a01b0383165f908152602081905260409020548181101561177c5760405163391434e360e21b81526001600160a01b0385166004820152602481018290526044810183905260640161054a565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b0382166117b6576002805482900390556117d4565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161181991815260200190565b60405180910390a3505050565b6001600160a01b03831661184857611845600a61095f61120484611658565b50505b6001600160a01b03821661186a57611867600a61096a61120484611658565b50505b6001600160a01b038381165f90815260086020526040808220548584168352912054610982929182169116836111a6565b5f806116b68585856118cf565b5f60ff8216601f8111156104d257604051632cd44ac360e21b815260040160405180910390fd5b82545f90819080156119ce575f6118eb87610c3e600185611d70565b805490915065ffffffffffff80821691660100000000000090046001600160d01b031690881682111561193157604051632520601d60e01b815260040160405180910390fd5b8765ffffffffffff168265ffffffffffff160361196d57825465ffffffffffff1666010000000000006001600160d01b038916021783556119c0565b6040805180820190915265ffffffffffff808a1682526001600160d01b03808a1660208085019182528d54600181018f555f8f815291909120945191519092166601000000000000029216919091179101555b94508593506116bb92505050565b50506040805180820190915265ffffffffffff80851682526001600160d01b0380851660208085019182528854600181018a555f8a81529182209551925190931666010000000000000291909316179201919091559050816116bb565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6109586020830184611a2b565b80356001600160a01b0381168114611a81575f5ffd5b919050565b5f5f60408385031215611a97575f5ffd5b611aa083611a6b565b946020939093013593505050565b5f5f5f60608486031215611ac0575f5ffd5b611ac984611a6b565b9250611ad760208501611a6b565b929592945050506040919091013590565b5f60208284031215611af8575f5ffd5b5035919050565b5f60208284031215611b0f575f5ffd5b61095882611a6b565b60ff60f81b8816815260e060208201525f611b3660e0830189611a2b565b8281036040840152611b488189611a2b565b606084018890526001600160a01b038716608085015260a0840186905283810360c0850152845180825260208087019350909101905f5b81811015611b9d578351835260209384019390920191600101611b7f565b50909b9a5050505050505050505050565b803560ff81168114611a81575f5ffd5b5f5f5f5f5f5f60c08789031215611bd3575f5ffd5b611bdc87611a6b565b95506020870135945060408701359350611bf860608801611bae565b9598949750929560808101359460a0909101359350915050565b5f5f5f5f5f5f5f60e0888a031215611c28575f5ffd5b611c3188611a6b565b9650611c3f60208901611a6b565b95506040880135945060608801359350611c5b60808901611bae565b9699959850939692959460a0840135945060c09093013592915050565b5f5f60408385031215611c89575f5ffd5b611c9283611a6b565b9150611ca060208401611a6b565b90509250929050565b5f5f60408385031215611cba575f5ffd5b611cc383611a6b565b9150602083013563ffffffff81168114611cdb575f5ffd5b809150509250929050565b600181811c90821680611cfa57607f821691505b602082108103611d1857634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b6001600160d01b0381811683821601908111156104d2576104d2611d1e565b6001600160d01b0382811682821603908111156104d2576104d2611d1e565b818103818111156104d2576104d2611d1e565b808201808211156104d2576104d2611d1e565b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52602160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b5f82611dec57634e487b7160e01b5f52601260045260245ffd5b50049056fea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000002": "0x0000000000000000000000000000000000000000033b2e3c9fd0803ce8000000", + "0x0000000000000000000000000000000000000000000000000000000000000003": "0x474f415400000000000000000000000000000000000000000000000000000008", + "0x0000000000000000000000000000000000000000000000000000000000000004": "0x474f415400000000000000000000000000000000000000000000000000000008", + "0x000000000000000000000000000000000000000000000000000000000000000a": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x175f40481e668931adde1e373cc3c3442587409cf537d95148649dad47b3a6c5": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x42df54d978308232df5f7d63c0445e00c9e9f8c4eb4d4c22b0f8badf086d40da": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x540b5a72faa2463ad7b6e96257f3df9adbe15e6f4ef1a160019203de6a3b6c17": "0x000000000000000000000000000000000000000000a56fa5b99019a5c8000000", + "0x55b0fb7ee6854a4c90517d06cee035cb67a225460ad0f72a5ba96fbf9c7f69fa": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x5eff886ea0ce6ca488a3d6e336d6c0f75f46d19b42c06ce5ee98e42c96d256c7": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x723077b8a1b173adc35e5f0e7e3662fd1208212cb629f9c128551ea7168da722": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0xaba3651eb38256f942270b1b147383dadaba11a46edd8370c7c491fcb78f6de5": "0x00000000000000000000000000000000000000000295be96e640669720000000", + "0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8": "0x0000000000000000000000000000033b2e3c9fd0803ce8000000000000000001" + } + }, + "Bc10000000000000000000000000000000000002": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x608060405260043610610071575f3560e01c80639db5dbe41161004c5780639db5dbe4146101245780639e976db114610143578063a9059cbb14610163578063f2fde38b14610182575f5ffd5b806301ffc9a7146100b4578063715018a6146100e85780638da5cb5b146100fe575f5ffd5b366100b057604080513381523460208201527f0553260a2e46b0577270d8992db02d30856ca880144c72d6e9503760946aef13910160405180910390a1005b5f5ffd5b3480156100bf575f5ffd5b506100d36100ce3660046106a3565b6101a1565b60405190151581526020015b60405180910390f35b3480156100f3575f5ffd5b506100fc6101d7565b005b348015610109575f5ffd5b505f546040516001600160a01b0390911681526020016100df565b34801561012f575f5ffd5b506100fc61013e3660046106de565b6101ea565b61015661015136600461071c565b61020b565b6040516100df91906107a3565b34801561016e575f5ffd5b506100fc61017d3660046107d8565b6102d8565b34801561018d575f5ffd5b506100fc61019c366004610802565b610339565b5f6001600160e01b031982166301ffc9a760e01b14806101d157506001600160e01b03198216635513957760e11b145b92915050565b6101df610376565b6101e85f6103a2565b565b6101f2610376565b6102066001600160a01b0384168383610409565b505050565b6060610215610376565b5f546001600160a01b03166001600160a01b0316856001600160a01b0316036102855760405162461bcd60e51b815260206004820152600660248201527f216f776e6572000000000000000000000000000000000000000000000000000060448201526064015b60405180910390fd5b6102cf84848080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525050506001600160a01b03881691905084610470565b95945050505050565b6102e0610376565b6102f36001600160a01b03831682610512565b604080516001600160a01b0384168152602081018390527f69ca02dd4edd7bf0a4abb9ed3b7af3f14778db5d61921c7dc7cd545266326de2910160405180910390a15050565b610341610376565b6001600160a01b03811661036a57604051631e4fbdf760e01b81525f600482015260240161027c565b610373816103a2565b50565b5f546001600160a01b031633146101e85760405163118cdaa760e01b815233600482015260240161027c565b5f80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1663a9059cbb60e01b1790526102069084906105ac565b60608147101561049c5760405163cf47918160e01b81524760048201526024810183905260440161027c565b5f5f856001600160a01b031684866040516104b7919061081d565b5f6040518083038185875af1925050503d805f81146104f1576040519150601f19603f3d011682016040523d82523d5f602084013e6104f6565b606091505b509150915061050686838361061e565b925050505b9392505050565b8047101561053c5760405163cf47918160e01b81524760048201526024810182905260440161027c565b5f826001600160a01b0316826040515f6040518083038185875af1925050503d805f8114610585576040519150601f19603f3d011682016040523d82523d5f602084013e61058a565b606091505b50509050806102065760405163d6bda27560e01b815260040160405180910390fd5b5f5f60205f8451602086015f885af1806105cb576040513d5f823e3d81fd5b50505f513d915081156105e25780600114156105ef565b6001600160a01b0384163b155b1561061857604051635274afe760e01b81526001600160a01b038516600482015260240161027c565b50505050565b6060826106335761062e8261067a565b61050b565b815115801561064a57506001600160a01b0384163b155b1561067357604051639996b31560e01b81526001600160a01b038516600482015260240161027c565b508061050b565b80511561068a5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b5f602082840312156106b3575f5ffd5b81356001600160e01b03198116811461050b575f5ffd5b6001600160a01b0381168114610373575f5ffd5b5f5f5f606084860312156106f0575f5ffd5b83356106fb816106ca565b9250602084013561070b816106ca565b929592945050506040919091013590565b5f5f5f5f6060858703121561072f575f5ffd5b843561073a816106ca565b9350602085013567ffffffffffffffff811115610755575f5ffd5b8501601f81018713610765575f5ffd5b803567ffffffffffffffff81111561077b575f5ffd5b87602082840101111561078c575f5ffd5b949760209190910196509394604001359392505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f5f604083850312156107e9575f5ffd5b82356107f4816106ca565b946020939093013593505050565b5f60208284031215610812575f5ffd5b813561050b816106ca565b5f82518060208501845e5f92019182525091905056fea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000000": "0x000000000000000000000000360268e8c47b01ea615bbd8b682ee69608304603" + } + }, + "BC10000000000000000000000000000000000003": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x60806040526004361061018e575f3560e01c80638da5cb5b116100dc578063b3dd64dd11610087578063b9cf8c8f11610062578063b9cf8c8f14610484578063c19dd32014610528578063c8c3c6b614610547578063f2fde38b14610566575f5ffd5b8063b3dd64dd14610427578063b3f33eda14610446578063b670ab5e14610465575f5ffd5b8063a2215ab4116100b7578063a2215ab4146103e7578063a5517aff146103fc578063a81de86914610414575f5ffd5b80638da5cb5b14610383578063904183cb146103a9578063a0ea8451146103c8575f5ffd5b80634e0cd7991161013c578063715018a611610117578063715018a61461033157806384a64c12146103455780638aa4af8914610364575f5ffd5b80634e0cd7991461027a5780635c6650ac1461028e5780635cc0707614610300575f5ffd5b8063278ecde11161016c578063278ecde1146102075780632eff14ec146102285780633396c80914610247575f5ffd5b806301ffc9a7146101925780631af87ddf146101c65780631ccc92c7146101e8575b5f5ffd5b34801561019d575f5ffd5b506101b16101ac366004611a62565b610585565b60405190151581526020015b60405180910390f35b3480156101d1575f5ffd5b506101da6105d6565b6040519081526020016101bd565b3480156101f3575f5ffd5b506101b1610202366004611aa8565b6105ea565b348015610212575f5ffd5b50610226610221366004611ad2565b610644565b005b348015610233575f5ffd5b50610226610242366004611afa565b610750565b348015610252575f5ffd5b506101da7f000000000000000000000000000000000000000000000000000000000000002081565b348015610285575f5ffd5b506101da610820565b348015610299575f5ffd5b506005546102d29067ffffffffffffffff8082169161ffff68010000000000000000820416916a01000000000000000000009091041683565b6040805167ffffffffffffffff948516815261ffff90931660208401529216918101919091526060016101bd565b34801561030b575f5ffd5b5061031f61031a366004611ad2565b610831565b6040516101bd96959493929190611b27565b34801561033c575f5ffd5b50610226610889565b348015610350575f5ffd5b5061022661035f366004611ad2565b61089c565b34801561036f575f5ffd5b5061022661037e366004611b97565b6109bd565b34801561038e575f5ffd5b505f546040516001600160a01b0390911681526020016101bd565b3480156103b4575f5ffd5b506102266103c3366004611bd5565b610b34565b3480156103d3575f5ffd5b506102266103e2366004611c1f565b610c8e565b3480156103f2575f5ffd5b506101da61012c81565b348015610407575f5ffd5b506101da6402540be40081565b610226610422366004611c38565b610d5f565b348015610432575f5ffd5b50610226610441366004611cb4565b611109565b348015610451575f5ffd5b50610226610460366004611b97565b611316565b348015610470575f5ffd5b5061022661047f366004611cd5565b6114a5565b34801561048f575f5ffd5b506004546104e69060e081901b9067ffffffffffffffff640100000000820481169161ffff6c0100000000000000000000000082048116926e01000000000000000000000000000083041691600160b01b90041685565b604080516001600160e01b0319909616865267ffffffffffffffff948516602087015261ffff938416908601529216606084015216608082015260a0016101bd565b348015610533575f5ffd5b50610226610542366004611ad2565b61161c565b348015610552575f5ffd5b50610226610561366004611c1f565b611714565b348015610571575f5ffd5b50610226610580366004611d0f565b6117eb565b5f6001600160e01b031982166301ffc9a760e01b14806105b557506001600160e01b03198216634388643560e01b145b806105d057506001600160e01b03198216630ff038eb60e31b145b92915050565b6105e76402540be40061012c611d3c565b81565b5f5f838360405160200161061592919091825260e01b6001600160e01b031916602082015260240190565b60408051808303601f1901815291815281516020928301205f908152600690925290205460ff16949350505050565b5f6007828154811061065857610658611d53565b5f9182526020909120600490910201905060038154600160b01b900460ff16600581111561068857610688611b13565b146106a657604051631dd2188d60e31b815260040160405180910390fd5b805476040000000000000000000000000000000000000000000060ff60b01b1982161782556001600160a01b03163381146106f457604051634ca8886760e01b815260040160405180910390fd5b426003830155600282015460018301546107219161071191611d67565b6001600160a01b03831690611828565b60405183907f2e1897b0591d764356194f7a795238a87c1987c7a877568e50d829d547c92b97905f90a2505050565b6107586118c7565b5f8161ffff16116107b05760405162461bcd60e51b815260206004820152600e60248201527f6e756d62657220746f6f206c6f7700000000000000000000000000000000000060448201526064015b60405180910390fd5b600480547fffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffffffff16600160b01b61ffff8416908102919091179091556040519081527f30b92002139b64ec601b714d1ecccba1212034e735773b3de088e8876f4dfb659060200160405180910390a150565b6105e76402540be4006103e8611d3c565b60078181548110610840575f80fd5b5f91825260209091206004909102018054600182015460028301546003909301546001600160a01b0383169450600160a01b830461ffff1693600160b01b90930460ff16929086565b6108916118c7565b61089a5f6118f3565b565b6108a733600161195a565b5f600782815481106108bb576108bb611d53565b5f9182526020909120600490910201905060018154600160b01b900460ff1660058111156108eb576108eb611b13565b1461090957604051631dd2188d60e31b815260040160405180910390fd5b80546001600160a01b0316331461093357604051634ca8886760e01b815260040160405180910390fd5b61012c8160030154426109469190611d7a565b101561096557604051633234675360e21b815260040160405180910390fd5b426003820155805460ff60b01b191676020000000000000000000000000000000000000000000017815560405182907f0106f4416537efff55311ef5e2f9c2a48204fcf84731f2b9d5091d23fc52160c905f90a25050565b6109c56118c7565b818161ffff821615610a6557670de0b6b3a76400008167ffffffffffffffff161080156109fb57505f8167ffffffffffffffff16115b8015610a1d5750610a1b6402540be40067ffffffffffffffff8316611da1565b155b610a3a576040516337d4ed5b60e01b815260040160405180910390fd5b6127108261ffff1610610a60576040516337d4ed5b60e01b815260040160405180910390fd5b610a8e565b67ffffffffffffffff811615610a8e576040516337d4ed5b60e01b815260040160405180910390fd5b6005805471ffffffffffffffffffff000000000000000019166801000000000000000061ffff871690810271ffffffffffffffff000000000000000000001916919091176a010000000000000000000067ffffffffffffffff8716908102919091179092556040805191825260208201929092527f59b73ca79bcb3dcb02c4d2b81e1a2da4c9fd9857ed81cfb16c5431b502f8c71b91015b60405180910390a150505050565b3373bc1000000000000000000000000000000000100014610b6857604051634ca8886760e01b815260040160405180910390fd5b5f8585604051602001610b9292919091825260e01b6001600160e01b031916602082015260240190565b60408051601f1981840301815291815281516020928301205f818152600690935291205490915060ff1615610c095760405162461bcd60e51b815260206004820152600a60248201527f6475706c6963617465640000000000000000000000000000000000000000000060448201526064016107a7565b5f8181526006602052604090819020805460ff19166001179055516001600160a01b038516907f4d2c35ab224c2e654f91bb91c9f4081beef0e0abfc8a59df04254f6d0232213290610c7e90899089908890889093845263ffffffff9290921660208401526040830152606082015260800190565b60405180910390a2505050505050565b610c966118c7565b80670de0b6b3a76400008167ffffffffffffffff16108015610cc85750655af3107a40008167ffffffffffffffff1610155b8015610cea5750610ce86402540be40067ffffffffffffffff8316611da1565b155b610d075760405163aabd5a0960e01b815260040160405180910390fd5b6005805467ffffffffffffffff191667ffffffffffffffff84169081179091556040519081527f69458aa02de2093876897ec9cd5653bbdd83360ef731be0da0e3c94bf9a22dba906020015b60405180910390a15050565b610d6a33600161195a565b81602181118015610d7b5750605b81105b610dc75760405162461bcd60e51b815260206004820152600f60248201527f696e76616c69642061646472657373000000000000000000000000000000000060448201526064016107a7565b6040805160608101825260055467ffffffffffffffff80821680845261ffff6801000000000000000084041660208501526a0100000000000000000000909204169282019290925234915f9190831015610e635760405162461bcd60e51b815260206004820152600e60248201527f616d6f756e7420746f6f206c6f7700000000000000000000000000000000000060448201526064016107a7565b602081015161ffff1615610ec957612710816020015161ffff1684610e889190611d3c565b610e929190611db4565b9150806040015167ffffffffffffffff16821115610ebc57806040015167ffffffffffffffff1691505b610ec68284611d7a565b92505b5f610ed96402540be40085611da1565b90508015610efa57610eeb8184611d67565b9250610ef78185611d7a565b93505b5f8661ffff1611610f405760405162461bcd60e51b815260206004820152601060248201526f696e76616c696420747820707269636560801b60448201526064016107a7565b610f516402540be40061012c611d3c565b610f5f9061ffff8816611d3c565b610f706402540be4006103e8611d3c565b610f7a9190611d67565b8411610fb75760405162461bcd60e51b815260206004820152600c60248201526b756e6166666f726461626c6560a01b60448201526064016107a7565b600780546040805160c08101825233815261ffff8a8116602083019081526001938301848152606084018b9052608084018a90524260a085015293850186555f9590955281517fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688600486020180549651909216600160a01b027fffffffffffffffffffff000000000000000000000000000000000000000000009096166001600160a01b0390911617949094178085559151929390929091829060ff60b01b1916600160b01b83600581111561108f5761108f611b13565b0217905550606082015181600101556080820151816002015560a082015181600301555050336001600160a01b0316817fbe7c38d37e8132b1d2b29509df9bf58cf1126edf2563c00db0ef3a271fb9f35b87878b8e8e6040516110f6959493929190611dc7565b60405180910390a3505050505050505050565b61111433600161195a565b5f6007838154811061112857611128611d53565b5f9182526020909120600490910201905060018154600160b01b900460ff16600581111561115857611158611b13565b1461117657604051631dd2188d60e31b815260040160405180910390fd5b80546001600160a01b031633146111a057604051634ca8886760e01b815260040160405180910390fd5b61012c8160030154426111b39190611d7a565b10156111d257604051633234675360e21b815260040160405180910390fd5b805461ffff600160a01b9091048116908316116112245760405162461bcd60e51b815260206004820152601060248201526f696e76616c696420747820707269636560801b60448201526064016107a7565b6112356402540be40061012c611d3c565b6112439061ffff8416611d3c565b6112546402540be4006103e8611d3c565b61125e9190611d67565b81600101541161129f5760405162461bcd60e51b815260206004820152600c60248201526b756e6166666f726461626c6560a01b60448201526064016107a7565b80547fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff16600160a01b61ffff841690810291909117825542600383015560405190815283907f19875a7124af51c604454b74336ce2168c45bceade9d9a1e6dfae9ba7d31b7fa9060200160405180910390a2505050565b61131e6118c7565b818161ffff8216156113be57670de0b6b3a76400008167ffffffffffffffff1610801561135457505f8167ffffffffffffffff16115b801561137657506113746402540be40067ffffffffffffffff8316611da1565b155b611393576040516337d4ed5b60e01b815260040160405180910390fd5b6127108261ffff16106113b9576040516337d4ed5b60e01b815260040160405180910390fd5b6113e7565b67ffffffffffffffff8116156113e7576040516337d4ed5b60e01b815260040160405180910390fd5b600480547fffffffffffffffffffff00000000000000000000ffffffffffffffffffffffff166c0100000000000000000000000061ffff87169081027fffffffffffffffffffff0000000000000000ffffffffffffffffffffffffffff16919091176e01000000000000000000000000000067ffffffffffffffff8716908102919091179092556040805191825260208201929092527f1007ff7aec53e9626ce51f25d4e093f290f60da8019c8cf489f0ae2f21ebf76a9101610b26565b3373bc10000000000000000000000000000000001000146114d957604051634ca8886760e01b815260040160405180910390fd5b5f600785815481106114ed576114ed611d53565b5f91825260209091206004909102018054909150600160b01b900460ff16600181600581111561151f5761151f611b13565b148061153c5750600281600581111561153a5761153a611b13565b145b611544575f5ffd5b815460ff60b01b1916760500000000000000000000000000000000000000000000178255426003830155600282015480156115975761159773bc1000000000000000000000000000000000000282611828565b60018301546040515f91906115ab90611a56565b82906040518091039083f5915050801580156115c9573d5f5f3e3d5ffd5b50506040805187815263ffffffff8716602082015290810185905287907fb74f5dbf34aabe02f20ff775b898acf1a9f70e4fbd48ad50548acae86e1ccd789060600160405180910390a250505050505050565b3373bc100000000000000000000000000000000010001461165057604051634ca8886760e01b815260040160405180910390fd5b5f6007828154811061166457611664611d53565b5f91825260209091206004909102018054909150600160b01b900460ff16600181600581111561169657611696611b13565b14806116b3575060028160058111156116b1576116b1611b13565b145b6116bb575f5ffd5b815460ff60b01b191676030000000000000000000000000000000000000000000017825542600383015560405183907f829a8683c544ad289ce92d3ce06e9ebad69b18a6916e60ec766c2c217461d8e9905f90a2505050565b61171c6118c7565b80670de0b6b3a76400008167ffffffffffffffff1610801561174e5750655af3107a40008167ffffffffffffffff1610155b8015611770575061176e6402540be40067ffffffffffffffff8316611da1565b155b61178d5760405163aabd5a0960e01b815260040160405180910390fd5b600480546bffffffffffffffff00000000191664010000000067ffffffffffffffff8516908102919091179091556040519081527f7aa20a242ea0b0f7b0141c56aaad636eb2b2077c9c27d09a8282f6931f486a2190602001610d53565b6117f36118c7565b6001600160a01b03811661181c57604051631e4fbdf760e01b81525f60048201526024016107a7565b611825816118f3565b50565b804710156118525760405163cf47918160e01b8152476004820152602481018290526044016107a7565b5f826001600160a01b0316826040515f6040518083038185875af1925050503d805f811461189b576040519150601f19603f3d011682016040523d82523d5f602084013e6118a0565b606091505b50509050806118c25760405163d6bda27560e01b815260040160405180910390fd5b505050565b5f546001600160a01b0316331461089a5760405163118cdaa760e01b81523360048201526024016107a7565b5f80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b7f0000000000000000000000000000000000000000000000000000000000000000156119d3576001600160a01b0382165f908152600360205260409020544390036119b857604051631736a31960e01b815260040160405180910390fd5b6001600160a01b0382165f9081526003602052604090204390555b805f036119de575050565b6001544303611a055780600180015f8282546119fa9190611d67565b90915550611a0f9050565b4360015560028190555b6002547f00000000000000000000000000000000000000000000000000000000000000201015611a525760405163a74c1c5f60e01b815260040160405180910390fd5b5050565b600880611e0f83390190565b5f60208284031215611a72575f5ffd5b81356001600160e01b031981168114611a89575f5ffd5b9392505050565b803563ffffffff81168114611aa3575f5ffd5b919050565b5f5f60408385031215611ab9575f5ffd5b82359150611ac960208401611a90565b90509250929050565b5f60208284031215611ae2575f5ffd5b5035919050565b803561ffff81168114611aa3575f5ffd5b5f60208284031215611b0a575f5ffd5b611a8982611ae9565b634e487b7160e01b5f52602160045260245ffd5b6001600160a01b038716815261ffff8616602082015260c0810160068610611b5d57634e487b7160e01b5f52602160045260245ffd5b8560408301528460608301528360808301528260a0830152979650505050505050565b803567ffffffffffffffff81168114611aa3575f5ffd5b5f5f60408385031215611ba8575f5ffd5b611bb183611ae9565b9150611ac960208401611b80565b80356001600160a01b0381168114611aa3575f5ffd5b5f5f5f5f5f60a08688031215611be9575f5ffd5b85359450611bf960208701611a90565b9350611c0760408701611bbf565b94979396509394606081013594506080013592915050565b5f60208284031215611c2f575f5ffd5b611a8982611b80565b5f5f5f60408486031215611c4a575f5ffd5b833567ffffffffffffffff811115611c60575f5ffd5b8401601f81018613611c70575f5ffd5b803567ffffffffffffffff811115611c86575f5ffd5b866020828401011115611c97575f5ffd5b602091820194509250611cab908501611ae9565b90509250925092565b5f5f60408385031215611cc5575f5ffd5b82359150611ac960208401611ae9565b5f5f5f5f60808587031215611ce8575f5ffd5b8435935060208501359250611cff60408601611a90565b9396929550929360600135925050565b5f60208284031215611d1f575f5ffd5b611a8982611bbf565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176105d0576105d0611d28565b634e487b7160e01b5f52603260045260245ffd5b808201808211156105d0576105d0611d28565b818103818111156105d0576105d0611d28565b634e487b7160e01b5f52601260045260245ffd5b5f82611daf57611daf611d8d565b500690565b5f82611dc257611dc2611d8d565b500490565b85815284602082015261ffff8416604082015260806060820152816080820152818360a08301375f81830160a090810191909152601f909201601f1916010194935050505056fe608060405230fffea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000000": "0x0000000000000000000000001d13bb7a0ed6a050e72dfe021fd639e0aeab27c3", + "0x0000000000000000000000000000000000000000000000000000000000000004": "0x00000000000000000014000000000000000000000001c6bf5263400047543356", + "0x0000000000000000000000000000000000000000000000000000000000000005": "0x000000000000000000000000000000071afd498d000000020001c6bf52634000", + "0x31f85800935b82ff60256eaa9a3061e7e4656648283ed18142d119373d2e9115": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x3c5c0524bd960f72bf0839a0572cafe45b18fec7e9e193adb5cbddf131f1818e": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0xed541fd2139a6e7c726bcb95000991702417012aebbc4e50b6436330cb608399": "0x0000000000000000000000000000000000000000000000000000000000000001" + } + }, + "bC10000000000000000000000000000000000004": { + "balance": "0x53444835ec580000", + "nonce": "0x1", + "code": "0x6080604052600436106101d9575f3560e01c80635ba3a6a5116100fd578063bc01763711610092578063e486033911610062578063e4860339146105c4578063e4a28a521461063d578063e6a36cb61461066c578063f2fde38b1461068b575f5ffd5b8063bc01763714610548578063bd12835014610567578063bd9fadb514610586578063daea85c5146105a5575f5ffd5b80638da5cb5b116100cd5780638da5cb5b146104e15780639d879990146104fd578063aa94def21461051c578063af38d7571461052f575f5ffd5b80635ba3a6a51461045c5780635d0341ba1461047b578063715018a6146104b957806380e9071b146104cd575f5ffd5b806323435e2f1161017357806349a0bf8e1161014357806349a0bf8e146103d1578063505bd3da146103e5578063551b3cd21461041057806359e5332d1461043b575f5ffd5b806323435e2f14610341578063293cdbf1146103775780633396c8091461038b578063423905f2146103be575f5ffd5b80631485ff78116101ae5780631485ff78146102a1578063160e3f3d146102c45780631eeea1f3146102e357806321c0b34214610322575f5ffd5b806252c9e1146101dd578062aba51a146101fe578063022914a71461021d57806309e3faa71461026e575b5f5ffd5b3480156101e8575f5ffd5b506101fc6101f73660046125d6565b6106aa565b005b348015610209575f5ffd5b506101fc61021836600461261e565b61078d565b348015610228575f5ffd5b50610251610237366004612666565b60086020525f90815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b348015610279575f5ffd5b506102517f000000000000000000000000bc1000000000000000000000000000000000000181565b3480156102ac575f5ffd5b506102b660055481565b604051908152602001610265565b3480156102cf575f5ffd5b506101fc6102de366004612686565b6108aa565b3480156102ee575f5ffd5b506103026102fd3660046126b3565b610954565b604080516001600160a01b03938416815292909116602083015201610265565b34801561032d575f5ffd5b506101fc61033c3660046125d6565b610971565b34801561034c575f5ffd5b506102b661035b3660046125d6565b600b60209081525f928352604080842090915290825290205481565b348015610382575f5ffd5b506101fc610a99565b348015610396575f5ffd5b506102b67f000000000000000000000000000000000000000000000000000000000000002081565b6101fc6103cc3660046126db565b610afc565b3480156103dc575f5ffd5b506102b6600881565b3480156103f0575f5ffd5b506102b66103ff366004612666565b600c6020525f908152604090205481565b34801561041b575f5ffd5b506102b661042a366004612666565b600a6020525f908152604090205481565b348015610446575f5ffd5b5061044f610d1c565b6040516102659190612721565b348015610467575f5ffd5b506101fc610476366004612778565b610e0d565b348015610486575f5ffd5b506104a9610495366004612666565b600d6020525f908152604090205460ff1681565b6040519015158152602001610265565b3480156104c4575f5ffd5b506101fc611115565b3480156104d8575f5ffd5b506101fc611128565b3480156104ec575f5ffd5b505f546001600160a01b0316610251565b348015610508575f5ffd5b506101fc6105173660046127b7565b6111bf565b6101fc61052a366004612827565b611450565b34801561053a575f5ffd5b506007546104a99060ff1681565b348015610553575f5ffd5b506101fc6105623660046127b7565b611537565b348015610572575f5ffd5b506101fc610581366004612876565b6115e0565b348015610591575f5ffd5b506101fc6105a036600461289e565b611883565b3480156105b0575f5ffd5b506101fc6105bf366004612666565b611a0b565b3480156105cf575f5ffd5b506106126105de366004612666565b60096020525f908152604090208054600182015460029092015460ff82169261010090920467ffffffffffffffff16919084565b60408051941515855267ffffffffffffffff9093166020850152918301526060820152608001610265565b348015610648575f5ffd5b50610653620f424081565b60405167ffffffffffffffff9091168152602001610265565b348015610677575f5ffd5b506101fc6106863660046128c8565b611a9f565b348015610696575f5ffd5b506101fc6106a5366004612666565b611ce7565b6001600160a01b038083165f90815260086020526040902054839116803381146106f8576040516370a4337d60e11b81526001600160a01b0390911660048201526024015b60405180910390fd5b506001600160a01b0383166107205760405163f6b2911f60e01b815260040160405180910390fd5b6001600160a01b038481165f8181526008602090815260409182902080546001600160a01b031916948816948517905581519283528201929092527fadd4071c89e561d58065ade5130c43b17b1101714bca7d91d2515ba1cb9fc97691015b60405180910390a150505050565b833373bc10000000000000000000000000000000001001146107c25760405163a8af0d7960e01b815260040160405180910390fd5b67ffffffffffffffff81165f908152600e6020526040902054819060ff161561080b57604051639e5ce1a360e01b815267ffffffffffffffff90911660048201526024016106ef565b5067ffffffffffffffff81165f908152600e60205260409020805460ff191660011790556001600160a01b0383161580159061084657505f82115b1561085f5761085f6001600160a01b0384168584611d21565b6040805167ffffffffffffffff87168152602081018490527f31fa984883dfea329532d399d9106031006364f445ef2351a45c0d9cbc4ec72791015b60405180910390a15050505050565b6108b2611d9a565b5f81116108d257604051630dd484e760e41b815260040160405180910390fd5b6109076001600160a01b037f000000000000000000000000bc1000000000000000000000000000000000000116333084611dc6565b8060055f8282546109189190612939565b90915550506040518181527f41891e803e84c188180caa0f073ce4235b8002dac887a69fcdcae1d295951fa0906020015b60405180910390a150565b5f5f61095f83611dff565b61096884611f17565b91509150915091565b6001600160a01b038083165f90815260086020526040902054839116803381146109ba576040516370a4337d60e11b81526001600160a01b0390911660048201526024016106ef565b508360016109c88282611f47565b6001600160a01b0385166109ef5760405163f6b2911f60e01b815260040160405180910390fd5b600480547fa983a6cfc4bd1095dac7b145ae020ba08e16cc7efa2051cc6b77e4011b9ee99b9167ffffffffffffffff909116905f610a2c8361294c565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508787604051610a899392919067ffffffffffffffff9390931683526001600160a01b03918216602084015216604082015260600190565b60405180910390a1505050505050565b610aa1611d9a565b60075460ff1615610ac55760405163eef336d960e01b815260040160405180910390fd5b6007805460ff191660011790556040517f8b1bc2671f5913bb778240df66342565720db9b7a01e7e78190ae6aa1e4bd0f3905f90a1565b600654610b1c576040516314d2abd360e21b815260040160405180910390fd5b5f610b2685611dff565b90505f468233604051602001610b6593929190928352606091821b6bffffffffffffffffffffffff199081166020850152911b16603482015260480190565b604051602081830303815290604052805190602001209050610b898184878761203f565b6001600160a01b0316610b9b87611f17565b6001600160a01b031614610bc257604051630e751dc360e31b815260040160405180910390fd5b6001600160a01b038281165f9081526008602052604090205483911615610c085760405163107f863360e21b81526001600160a01b0390911660048201526024016106ef565b506001600160a01b0382165f908152600d602052604090205460ff1680610c5857505f8052600d6020527f81955a0a11e65eac625c29e8882660bae4e165a75d72780094acae8ece9a29ee5460ff165b8290610c8357604051633e55e12b60e11b81526001600160a01b0390911660048201526024016106ef565b50600654610c9d908390610c98906001612939565b611f47565b6001600160a01b0382165f908152600860205260409081902080546001600160a01b0319163390811790915590517ff3aa84440b70359721372633122645674adb6dbb72622a222627248ef053a7dd91610cfb918591908a90612978565b60405180910390a1610d1482610d0f610d1c565b61206b565b505050505050565b6006546060905f9067ffffffffffffffff811115610d3c57610d3c61299f565b604051908082528060200260200182016040528015610d8057816020015b604080518082019091525f8082526020820152815260200190600190039081610d5a5790505b5090505f5b600654811015610e07575f60068281548110610da357610da36129b3565b5f9182526020808320909101546040805180820182526001600160a01b039092168083528085526009845293206002015491810191909152845191925090849084908110610df357610df36129b3565b602090810291909101015250600101610d85565b50919050565b610e15611d9a565b6001600160a01b0384165f9081526009602052604090205460ff1615610e4e57604051632ae3f45d60e11b815260040160405180910390fd5b6001600160a01b0384161580610ec65750836001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e9b573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebf91906129c7565b60ff166012145b610ee357604051638785ff4f60e01b815260040160405180910390fd5b5f8367ffffffffffffffff16118015610f085750620f424067ffffffffffffffff8416105b610f255760405163018a49e560e01b815260040160405180910390fd5b60408051608081018252600180825267ffffffffffffffff8681166020808501828152858701898152606087018981526001600160a01b038d165f818152600986528a902098518954945168ffffffffffffffffff1990951690151568ffffffffffffffff0019161761010094909716939093029590951787555194860194909455915160029094019390935583519182528101919091527fb59bf4596e5415117fb4625044cb5b0ca5b273742825b026d06afe82a48e6217910160405180910390a1604080516001600160a01b0386168152602081018490527f60ae001243ab6d87904798d941cb0935a98451d5ddac12c259193ddc12db0ae9910160405180910390a1801561110f5781158061103d5750808210155b828290916110675760405163068ade6560e31b8152600481019290925260248201526044016106ef565b505060065460081161108c57604051632970307360e11b815260040160405180910390fd5b600680546001810182555f919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0319166001600160a01b03861690811790915560408051918252602082018390527f326e29ab1c62c7d77fdfb302916e82e1a54f3b9961db75ee7e18afe488a0e92d910161077f565b50505050565b61111d611d9a565b6111265f612380565b565b60075460ff1661114b576040516335b43c0360e11b815260040160405180910390fd5b335f908152600c602052604090205480611178576040516301e1880f60e51b815260040160405180910390fd5b335f818152600c60205260408120556111bc907f000000000000000000000000bc100000000000000000000000000000000000016001600160a01b03169083611d21565b50565b6111c7611d9a565b6001600160a01b0382165f90815260096020526040902054829060ff1661120d5760405163de6137d160e01b81526001600160a01b0390911660048201526024016106ef565b506001600160a01b0382165f908152600960205260409020600201548181036112495760405163aabb9c6360e01b815260040160405180910390fd5b6001600160a01b0383165f81815260096020908152604091829020600201859055815192835282018490527f326e29ab1c62c7d77fdfb302916e82e1a54f3b9961db75ee7e18afe488a0e92d910160405180910390a1801580156112ac57505f82115b15611325576006546008116112d457604051632970307360e11b815260040160405180910390fd5b50600680546001810182555f919091527ff652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f0180546001600160a01b0384166001600160a01b03199091161790555050565b5f8111801561133357505f82115b1561133d57505050565b5f5b60065481101561110f57836001600160a01b031660068281548110611366576113666129b3565b5f918252602090912001546001600160a01b0316036114445760065461138e906001906129e2565b811461140b57600680546113a4906001906129e2565b815481106113b4576113b46129b3565b5f91825260209091200154600680546001600160a01b0390921691839081106113df576113df6129b3565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055505b600680548061141c5761141c6129f5565b5f8281526020902081015f1990810180546001600160a01b03191690550190555061144c9050565b60010161133f565b5050565b6001600160a01b038084165f9081526008602052604090205484911680338114611499576040516370a4337d60e11b81526001600160a01b0390911660048201526024016106ef565b5084836114a68282611f47565b84158015906114b6575060088511155b6114d357604051632970307360e11b815260040160405180910390fd5b61152e878787808060200260200160405190810160405280939291908181526020015f905b828210156115245761151560408302860136819003810190612a09565b815260200190600101906114f8565b505050505061206b565b50505050505050565b61153f611d9a565b6001600160a01b0382165f90815260096020526040902054829060ff166115855760405163de6137d160e01b81526001600160a01b0390911660048201526024016106ef565b506001600160a01b0382165f81815260096020908152604091829020600101849055815192835282018390527f60ae001243ab6d87904798d941cb0935a98451d5ddac12c259193ddc12db0ae9910160405180910390a15050565b6115e8611d9a565b6001600160a01b0382165f90815260096020526040902054829060ff1661162e5760405163de6137d160e01b81526001600160a01b0390911660048201526024016106ef565b50620f424067ffffffffffffffff82161061165c5760405163018a49e560e01b815260040160405180910390fd5b604080516001600160a01b038416815267ffffffffffffffff831660208201527fb59bf4596e5415117fb4625044cb5b0ca5b273742825b026d06afe82a48e6217910160405180910390a167ffffffffffffffff8116156116f4576001600160a01b0382165f908152600960205260409020805467ffffffffffffffff83166101000268ffffffffffffffff00199091161790555050565b6001600160a01b0382165f908152600960205260408120600281018054825468ffffffffffffffffff1916835560019092018390559190915515158061173957505050565b5f5b60065481101561110f57836001600160a01b031660068281548110611762576117626129b3565b5f918252602090912001546001600160a01b03160361187b5760065461178a906001906129e2565b811461180757600680546117a0906001906129e2565b815481106117b0576117b06129b3565b5f91825260209091200154600680546001600160a01b0390921691839081106117db576117db6129b3565b905f5260205f20015f6101000a8154816001600160a01b0302191690836001600160a01b031602179055505b6006805480611818576118186129f5565b5f82815260208082205f19908401810180546001600160a01b0319169055909201909255604080516001600160a01b0388168152918201929092527f326e29ab1c62c7d77fdfb302916e82e1a54f3b9961db75ee7e18afe488a0e92d910161077f565b60010161173b565b833373bc10000000000000000000000000000000001001146118b85760405163a8af0d7960e01b815260040160405180910390fd5b67ffffffffffffffff81165f908152600e6020526040902054819060ff161561190157604051639e5ce1a360e01b815267ffffffffffffffff90911660048201526024016106ef565b5067ffffffffffffffff81165f908152600e60205260409020805460ff191660011790556005548311156119355760055492505b82156119c35760075460ff161561197f5761197a6001600160a01b037f000000000000000000000000bc10000000000000000000000000000000000001168585611d21565b6119ac565b6001600160a01b0384165f908152600c6020526040812080548592906119a6908490612939565b90915550505b8260055f8282546119bd91906129e2565b90915550505b6040805167ffffffffffffffff87168152602081018590529081018390527f2b02cde117ae53d66dc4d0bdf72b2146e0e1070c1428d6274b0f98d628ad99c49060600161089b565b611a13611d9a565b6001600160a01b0381165f908152600d602052604090205460ff1615611a4c57604051632ef470fd60e11b815260040160405180910390fd5b6001600160a01b0381165f818152600d6020908152604091829020805460ff1916600117905590519182527f19996ea5aede4d14af17b07567999b4c9d512663cfdaa4b01313d0c4af7a6ce79101610949565b6001600160a01b038085165f9081526008602052604090205485911680338114611ae8576040516370a4337d60e11b81526001600160a01b0390911660048201526024016106ef565b508583611af58282611f47565b8415801590611b05575060088511155b611b2257604051632970307360e11b815260040160405180910390fd5b6001600160a01b038716611b495760405163f6b2911f60e01b815260040160405180910390fd5b5f5b85811015611cdc575f878783818110611b6657611b666129b3565b905060400201803603810190611b7c9190612a09565b90505f816020015111611ba257604051630dd484e760e41b815260040160405180910390fd5b6020808201516001600160a01b03808d165f908152600b8452604080822086519093168252919093528220805491929091611bde9084906129e2565b909155505060208082015182516001600160a01b03165f908152600a90925260408220805491929091611c129084906129e2565b9091555050600480547f40f2a8c5e2e2a9ad2f4e4dfc69825595b526178445c3eb22b02edfd190601db79167ffffffffffffffff909116905f611c548361294c565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055508b8b845f01518560200151604051611ccb95949392919067ffffffffffffffff9590951685526001600160a01b03938416602086015291831660408501529091166060830152608082015260a00190565b60405180910390a150600101611b4b565b505050505050505050565b611cef611d9a565b6001600160a01b038116611d1857604051631e4fbdf760e01b81525f60048201526024016106ef565b6111bc81612380565b6040516001600160a01b03838116602483015260448201839052611d9591859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506123cf565b505050565b5f546001600160a01b031633146111265760405163118cdaa760e01b81523360048201526024016106ef565b6040516001600160a01b03848116602483015283811660448301526064820183905261110f9186918216906323b872dd90608401611d4e565b5f80602083013560011615611e1857600360f81b611e1e565b600160f91b5b6040517fff0000000000000000000000000000000000000000000000000000000000000082166020820152843560218201529091505f9060029060410160408051601f1981840301815290829052611e7591612a6b565b602060405180830381855afa158015611e90573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190611eb39190612a81565b9050600381604051602001611eca91815260200190565b60408051601f1981840301815290829052611ee491612a6b565b602060405180830381855afa158015611eff573d5f5f3e3d5ffd5b5050604051516001600160a01b031695945050505050565b5f81604051602001611f299190612a98565b60408051601f19818403018152919052805160209091012092915050565b7f000000000000000000000000000000000000000000000000000000000000000115611fc0576001600160a01b0382165f90815260036020526040902054439003611fa557604051631736a31960e01b815260040160405180910390fd5b6001600160a01b0382165f9081526003602052604090204390555b805f03611fcb575050565b6001544303611ff25780600180015f828254611fe79190612939565b90915550611ffc9050565b4360015560028190555b6002547f0000000000000000000000000000000000000000000000000000000000000020101561144c5760405163a74c1c5f60e01b815260040160405180910390fd5b5f5f5f5f61204f8888888861243b565b92509250925061205f8282612503565b50909695505050505050565b345f5b825181101561235c575f83828151811061208a5761208a6129b3565b60209081029190910181015180516001600160a01b03165f908152600983526040908190208151608081018352815460ff811615158252610100900467ffffffffffffffff16818601526001820154928101929092526002015460608201529181015190925061210d57604051630dd484e760e41b815260040160405180910390fd5b602081015182519067ffffffffffffffff166121485760405163de6137d160e01b81526001600160a01b0390911660048201526024016106ef565b506001600160a01b038087165f908152600b6020908152604080832086519094168352929052205460608201518110156121ce575f81836060015161218d91906129e2565b6020850151855191925082908111156121ca576040516349cd40ff60e01b81526001600160a01b03909216600483015260248201526044016106ef565b5050505b82516001600160a01b031661220e57602083015185811461220557604051630a61be9f60e41b81526004016106ef91815260200190565b505f945061222e565b6020830151835161222e916001600160a01b039091169033903090611dc6565b60208084015184516001600160a01b03165f908152600a90925260408220546122579190612939565b905082604001515f148061226f575080836040015110155b8451604085015190916122a65760405163421dca0560e11b81526001600160a01b03909216600483015260248201526044016106ef565b505083516001600160a01b039081165f908152600a60209081526040808320859055818801518c85168452600b83528184208951909516845293909152812080549091906122f5908490612939565b90915550508351602080860151604080516001600160a01b038d811682529094169284019290925282820152517fec36c0364d931187a76cf66d7eee08fad0ec2e8b7458a8d8b26b36769d4d13f39181900360600190a150506001909201915061206e9050565b505f811561110f57604051630a61be9f60e41b81526004016106ef91815260200190565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f5f60205f8451602086015f885af1806123ee576040513d5f823e3d81fd5b50505f513d91508115612405578060011415612412565b6001600160a01b0384163b155b1561110f57604051635274afe760e01b81526001600160a01b03851660048201526024016106ef565b5f80807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561247457505f915060039050826124f9565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa1580156124c5573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b0381166124f057505f9250600191508290506124f9565b92505f91508190505b9450945094915050565b5f82600381111561251657612516612aa5565b0361251f575050565b600182600381111561253357612533612aa5565b036125515760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561256557612565612aa5565b036125865760405163fce698f760e01b8152600481018290526024016106ef565b600382600381111561259a5761259a612aa5565b0361144c576040516335e2f38360e21b8152600481018290526024016106ef565b80356001600160a01b03811681146125d1575f5ffd5b919050565b5f5f604083850312156125e7575f5ffd5b6125f0836125bb565b91506125fe602084016125bb565b90509250929050565b803567ffffffffffffffff811681146125d1575f5ffd5b5f5f5f5f60808587031215612631575f5ffd5b61263a85612607565b9350612648602086016125bb565b9250612656604086016125bb565b9396929550929360600135925050565b5f60208284031215612676575f5ffd5b61267f826125bb565b9392505050565b5f60208284031215612696575f5ffd5b5035919050565b80604081018310156126ad575f5ffd5b92915050565b5f604082840312156126c3575f5ffd5b61267f838361269d565b60ff811681146111bc575f5ffd5b5f5f5f5f60a085870312156126ee575f5ffd5b6126f8868661269d565b935060408501359250606085013591506080850135612716816126cd565b939692955090935050565b602080825282518282018190525f918401906040840190835b8181101561276d57835180516001600160a01b03168452602090810151818501529093019260409092019160010161273a565b509095945050505050565b5f5f5f5f6080858703121561278b575f5ffd5b612794856125bb565b93506127a260208601612607565b93969395505050506040820135916060013590565b5f5f604083850312156127c8575f5ffd5b6127d1836125bb565b946020939093013593505050565b5f5f83601f8401126127ef575f5ffd5b50813567ffffffffffffffff811115612806575f5ffd5b6020830191508360208260061b8501011115612820575f5ffd5b9250929050565b5f5f5f60408486031215612839575f5ffd5b612842846125bb565b9250602084013567ffffffffffffffff81111561285d575f5ffd5b612869868287016127df565b9497909650939450505050565b5f5f60408385031215612887575f5ffd5b612890836125bb565b91506125fe60208401612607565b5f5f5f5f608085870312156128b1575f5ffd5b6128ba85612607565b93506127a2602086016125bb565b5f5f5f5f606085870312156128db575f5ffd5b6128e4856125bb565b93506128f2602086016125bb565b9250604085013567ffffffffffffffff81111561290d575f5ffd5b612919878288016127df565b95989497509550505050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156126ad576126ad612925565b5f67ffffffffffffffff821667ffffffffffffffff810361296f5761296f612925565b60010192915050565b6001600160a01b038481168252831660208201526080810160408381840137949350505050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156129d7575f5ffd5b815161267f816126cd565b818103818111156126ad576126ad612925565b634e487b7160e01b5f52603160045260245ffd5b5f6040828403128015612a1a575f5ffd5b506040805190810167ffffffffffffffff81118282101715612a4a57634e487b7160e01b5f52604160045260245ffd5b604052612a56836125bb565b81526020928301359281019290925250919050565b5f82518060208501845e5f920191825250919050565b5f60208284031215612a91575f5ffd5b5051919050565b6040828237604001919050565b634e487b7160e01b5f52602160045260245ffdfea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000000": "0x0000000000000000000000005e87b3d603818159c71dbb840d68662e9ce19321", + "0x0000000000000000000000000000000000000000000000000000000000000001": "0x0000000000000000000000000000000000000000000000000000000000000024", + "0x0000000000000000000000000000000000000000000000000000000000000002": "0x0000000000000000000000000000000000000000000000000000000000000002", + "0x0000000000000000000000000000000000000000000000000000000000000005": "0x000000000000000000000000000000000000000000a56fa5b99019a5c8000000", + "0x0000000000000000000000000000000000000000000000000000000000000006": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x055b4019b88f7aa71b7fa33ca0687db78d4fda597c5ec85623eb9ed6cc0ae25d": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x13da86008ba1c6922daee3e07db95305ef49ebced9f5467a0b8613fcc6b343e3": "0x00000000000000000000000000000000000000000000000053444835ec580000", + "0x38616d077d268694dde564ae0a05ba993927a08552aa7364445831f6b818cdb7": "0x0000000000000000000000000000000000000000000000001bc16d674ec80000", + "0x3979c60a57c119fc597d83cf015d5c660d8f20fcb45f3407449591212753ecaa": "0x000000000000000000000000000000000000000000000000000000000000001e", + "0x4e74f95a34c1682602dc02abf3e60537359d1ff5d942a93007d299abfe7071c5": "0x0000000000000000000000000000000000000000000000001bc16d674ec80000", + "0x57e1d877fd7b6bc2412a34cb73f519ae4c6d112c9cb5da99c33baa9902cd4e41": "0x0000000000000000000000007d9fb1017422e8a31fe0010c31650c9932fac1a1", + "0x6f1cd4958dc6b992af15a2e753d9785c14dc589f544909d2410557a3e3001ce7": "0x0000000000000000000000000000000000000000000000001bc16d674ec80000", + "0x8078c54fe6f1a87fbd97770d8302f107462594a95794569dfeb8e849e89d6064": "0x0000000000000000000000000000000000000000000000000000000000000021", + "0x85836a4c50cae6315b1e47a39914f1aaef059b70f9c10c63bdb186b8da23394d": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x9900e33d9f78931e8785a44cff3dee398e4c033db0b0377a91a243cc1a2c9f01": "0x0000000000000000000000000000000000000000000000000000000000000024", + "0xc8bd50701570438e690cc5fcf3ae413672e0a694f8321610a7a02e912136e0cd": "0x0000000000000000000000004f42539e37f7ec121007d2f0e43866985f8534b0", + "0xdf16dabd34abcab4b8a813f4ba256d0152cc0c430c937d23d7af7614bbc8bb0d": "0x00000000000000000000000025877253d48d0386fe5655522a1b04425220ebf7", + "0xe34e0bbb96e5fa39956146a56ce75486313e2fadbc7a8bfde4d7dd622446175e": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0xec8156718a8372b1db44bb411437d0870f3e3790d4a08526d024ce1b0b668f6b": "0x00000000000000000000000000000000000000000000000000000000002ee001", + "0xec8156718a8372b1db44bb411437d0870f3e3790d4a08526d024ce1b0b668f6c": "0x00000000000000000000000000000000000000000000002b5e3af16b18800000", + "0xec8156718a8372b1db44bb411437d0870f3e3790d4a08526d024ce1b0b668f6d": "0x0000000000000000000000000000000000000000000000001bc16d674ec80000", + "0xf652222313e28459528d920b65115c16c04f3efc82aaedc97be59f3f377c0d3f": "0x0000000000000000000000000000000000000000000000000000000000000000" + } + }, + "bc10000000000000000000000000000000000005": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x608060405234801561000f575f5ffd5b5060043610610064575f3560e01c806385df51fd1161004d57806385df51fd1461009d57806394f490bd146100bc578063e405bbc3146100d1575f5ffd5b8063107bf28c1461006857806326a6557a14610086575b5f5ffd5b6100706100da565b60405161007d91906101fe565b60405180910390f35b61008f60015481565b60405190815260200161007d565b61008f6100ab366004610233565b5f9081526003602052604090205490565b6100cf6100ca366004610233565b610165565b005b61008f60025481565b5f80546100e69061024a565b80601f01602080910402602001604051908101604052809291908181526020018280546101129061024a565b801561015d5780601f106101345761010080835404028352916020019161015d565b820191905f5260205f20905b81548152906001019060200180831161014057829003601f168201915b505050505081565b3373bc100000000000000000000000000000000010001461019957604051634ca8886760e01b815260040160405180910390fd5b5f60025f81546101a890610282565b91829055505f8181526003602052604090819020849055519091507fdd5483f1119d050d70b0fe3ed9db0b5f41b3ec55838346cbb624efe0565b0133906101f29083815260200190565b60405180910390a15050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f60208284031215610243575f5ffd5b5035919050565b600181811c9082168061025e57607f821691505b60208210810361027c57634e487b7160e01b5f52602260045260245ffd5b50919050565b5f6001820161029f57634e487b7160e01b5f52601160045260245ffd5b506001019056fea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000000": "0x746573746e657433000000000000000000000000000000000000000000000010", + "0x0000000000000000000000000000000000000000000000000000000000000001": "0x00000000000000000000000000000000000000000000000000000000003464af", + "0x0000000000000000000000000000000000000000000000000000000000000002": "0x00000000000000000000000000000000000000000000000000000000003464af", + "0xcb1e7cde6c7e7b67fd2e6b7837024d28c05b0f892234598df9504fe968ad07a6": "0xefb879bdda4c62a568ef5354d9ebf705d748d257d93cacc9a289440100000000" + } + }, + "BC10000000000000000000000000000000000006": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x608060405234801561000f575f5ffd5b50600436106100b9575f3560e01c80638da5cb5b11610072578063a3ec138d11610058578063a3ec138d1461015e578063cd57654314610180578063f2fde38b146101a2575f5ffd5b80638da5cb5b1461011257806398611f121461012c575f5ffd5b8063715018a6116100a2578063715018a6146100ee578063827fb811146100f657806386c1ff68146100ff575f5ffd5b80632ddbd13a146100bd5780637090a943146100d9575b5f5ffd5b6100c660015481565b6040519081526020015b60405180910390f35b6100ec6100e7366004610602565b6101b5565b005b6100ec6103c4565b6100c661010081565b6100ec61010d36600461062a565b6103d7565b5f546040516001600160a01b0390911681526020016100d0565b61014e61013a36600461064a565b60026020525f908152604090205460ff1681565b60405190151581526020016100d0565b61014e61016c36600461062a565b60036020525f908152604090205460ff1681565b61014e61018e36600461062a565b60046020525f908152604090205460ff1681565b6100ec6101b036600461062a565b610517565b6101bd610554565b5f8181526002602052604090205460ff16156102205760405162461bcd60e51b815260206004820152600e60248201527f6475706c696361746564206b657900000000000000000000000000000000000060448201526064015b60405180910390fd5b6001600160a01b0382165f9081526003602052604090205460ff16156102885760405162461bcd60e51b815260206004820152601060248201527f6475706c69636174656420766f746572000000000000000000000000000000006044820152606401610217565b6001600160a01b0382165f9081526004602052604090205460ff16156102f05760405162461bcd60e51b815260206004820152600d60248201527f64656c6574656420766f746572000000000000000000000000000000000000006044820152606401610217565b61010060015f815461030190610675565b9182905550106103535760405162461bcd60e51b815260206004820152600f60248201527f746f6f206d616e7920766f7465727300000000000000000000000000000000006044820152606401610217565b6001600160a01b0382165f8181526003602090815260408083208054600160ff199182168117909255868552600284529382902080549094161790925590518381527f101c617f43dd1b8a54a9d747d9121bbc55e93b88bc50560d782a79c4e28fc838910160405180910390a25050565b6103cc610554565b6103d55f610580565b565b6103df610554565b6001600160a01b0381165f9081526003602052604090205460ff166104465760405162461bcd60e51b815260206004820152600f60248201527f766f746572206e6f7420666f756e6400000000000000000000000000000000006044820152606401610217565b60018054116104975760405162461bcd60e51b815260206004820152600e60248201527f746f6f2066657720766f746572730000000000000000000000000000000000006044820152606401610217565b6001600160a01b0381165f908152600360209081526040808320805460ff1990811690915560049092528220805490911660019081179091558054916104dc8361068d565b90915550506040516001600160a01b038216907f183393fc5cffbfc7d03d623966b85f76b9430f42d3aada2ac3f3deabc78899e8905f90a250565b61051f610554565b6001600160a01b03811661054857604051631e4fbdf760e01b81525f6004820152602401610217565b61055181610580565b50565b5f546001600160a01b031633146103d55760405163118cdaa760e01b8152336004820152602401610217565b5f80546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b03811681146105fd575f5ffd5b919050565b5f5f60408385031215610613575f5ffd5b61061c836105e7565b946020939093013593505050565b5f6020828403121561063a575f5ffd5b610643826105e7565b9392505050565b5f6020828403121561065a575f5ffd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b5f6001820161068657610686610661565b5060010190565b5f8161069b5761069b610661565b505f19019056fea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000000": "0x000000000000000000000000f0c9583e7004bda697666b45b225d59f9cc636b9", + "0x0000000000000000000000000000000000000000000000000000000000000001": "0x0000000000000000000000000000000000000000000000000000000000000003", + "0x484a6b01b3e3e52bc3f41ff5e9e71bca633f8152e8d3f69d34ca0bef2f2260a2": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x63e0bc436493695952b42e19f4944c3ef36a24b839195b32ba6c8226ef6caaca": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0x6c79f5296e50ab3c976bfd2a389ab8350bbb40a5dbf74ebed1d2846f1e92112f": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x7e6cb734332efe99706b67232cd79fc8d72b531a8e9f840ce92f3b2ca9490652": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0xb022734f5b831968a51f5277286e2e269e555a21e37762696fb3bb8082e89504": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0xb20e607d76705630552b187de3fd439159f1e5bec17afe65f401d37d5221266d": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0xdb30e2252c21185def5fe74a21888911a0ab486372eae0475125ea9b74c60292": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0xe1f14e470c445296d843a101cc9ae22da12ef251d20e4bb8fa4f40e821f32a2b": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0xf9c6f15cfc2e56c85274b24a3e2e58e18f64bebbbbcbb7a0fa45e9c1118d2ca4": "0x0000000000000000000000000000000000000000000000000000000000000001" + } + }, + "Bc10000000000000000000000000000000000007": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x608060405234801561000f575f5ffd5b5060043610610029575f3560e01c8063023276f01461002d575b5f5ffd5b61004061003b3660046100f0565b610042565b005b5f5f5f1b82604051610053906100e3565b73ffffffffffffffffffffffffffffffffffffffff90911681526020018190604051809103905ff590508015801561008d573d5f5f3e3d5ffd5b5060405173ffffffffffffffffffffffffffffffffffffffff8083168252919250908316907f587ece4cd19692c5be1a4184503d607d45542d2aca0698c0068f52e09ccb541c9060200160405180910390a25050565b6111178061012b83390190565b5f60208284031215610100575f5ffd5b813573ffffffffffffffffffffffffffffffffffffffff81168114610123575f5ffd5b939250505056fe60c060405234801561000f575f5ffd5b5060405161111738038061111783398101604081905261002e91610233565b806001600160a01b03166306fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa158015610069573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526100909190810190610274565b6040516020016100a0919061033b565b604051602081830303815290604052816001600160a01b03166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa1580156100ea573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526101119190810190610274565b6040516020016101219190610370565b60408051601f19818403018152919052600361013d8382610411565b50600461014a8282610411565b5050505f816001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa15801561018a573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101ae91906104cb565b60ff1690506012811080156101c257505f81115b6102055760405162461bcd60e51b815260206004820152601060248201526f696e76616c696420646563696d616c7360801b604482015260640160405180910390fd5b6001600160a01b03821660805261021d8160126104ff565b61022890600a6105fb565b60a052506106069050565b5f60208284031215610243575f5ffd5b81516001600160a01b0381168114610259575f5ffd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f60208284031215610284575f5ffd5b81516001600160401b03811115610299575f5ffd5b8201601f810184136102a9575f5ffd5b80516001600160401b038111156102c2576102c2610260565b604051601f8201601f19908116603f011681016001600160401b03811182821017156102f0576102f0610260565b604052818152828201602001861015610307575f5ffd5b8160208401602083015e5f91810160200191909152949350505050565b5f81518060208401855e5f93019283525090919050565b5f6103468284610324565b600160fd1b81526f29ba30b73230b932102bb930b83832b960811b60018201526011019392505050565b5f61037b8284610324565b61535760f01b81526002019392505050565b600181811c908216806103a157607f821691505b6020821081036103bf57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561040c57805f5260205f20601f840160051c810160208510156103ea5750805b601f840160051c820191505b81811015610409575f81556001016103f6565b50505b505050565b81516001600160401b0381111561042a5761042a610260565b61043e81610438845461038d565b846103c5565b6020601f821160018114610470575f83156104595750848201515b5f19600385901b1c1916600184901b178455610409565b5f84815260208120601f198516915b8281101561049f578785015182556020948501946001909201910161047f565b50848210156104bc57868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b5f602082840312156104db575f5ffd5b815160ff81168114610259575f5ffd5b634e487b7160e01b5f52601160045260245ffd5b81810381811115610512576105126104eb565b92915050565b6001815b600184111561055357808504811115610537576105376104eb565b600184161561054557908102905b60019390931c92800261051c565b935093915050565b5f8261056957506001610512565b8161057557505f610512565b816001811461058b5760028114610595576105b1565b6001915050610512565b60ff8411156105a6576105a66104eb565b50506001821b610512565b5060208310610133831016604e8410600b84101617156105d4575081810a610512565b6105e05f198484610518565b805f19048211156105f3576105f36104eb565b029392505050565b5f610259838361055b565b60805160a051610acd61064a5f395f818161016d015281816103370152818161038f015261046401525f8181610194015281816103be015261042b0152610acd5ff3fe608060405234801561000f575f5ffd5b50600436106100da575f3560e01c80633ba0b9a91161008857806395d89b411161006357806395d89b41146101f6578063a9059cbb146101fe578063b6b55f2514610211578063dd62ed3e14610224575f5ffd5b80633ba0b9a9146101685780636f307dc31461018f57806370a08231146101ce575f5ffd5b806323b872dd116100b857806323b872dd146101315780632e1a7d4d14610144578063313ce56714610159575f5ffd5b806306fdde03146100de578063095ea7b3146100fc57806318160ddd1461011f575b5f5ffd5b6100e661025c565b6040516100f391906108f6565b60405180910390f35b61010f61010a366004610946565b6102ec565b60405190151581526020016100f3565b6002545b6040519081526020016100f3565b61010f61013f36600461096e565b610305565b6101576101523660046109a8565b610328565b005b604051601281526020016100f3565b6101237f000000000000000000000000000000000000000000000000000000000000000081565b6101b67f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100f3565b6101236101dc3660046109bf565b6001600160a01b03165f9081526020819052604090205490565b6100e66103e9565b61010f61020c366004610946565b6103f8565b61015761021f3660046109a8565b610405565b6101236102323660046109df565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b60606003805461026b90610a10565b80601f016020809104026020016040519081016040528092919081815260200182805461029790610a10565b80156102e25780601f106102b9576101008083540402835291602001916102e2565b820191905f5260205f20905b8154815290600101906020018083116102c557829003601f168201915b5050505050905090565b5f336102f981858561048e565b60019150505b92915050565b5f336103128582856104a0565b61031d858585610520565b506001949350505050565b5f8111801561035e575061035c7f000000000000000000000000000000000000000000000000000000000000000082610a5c565b155b61037b57604051632a9ffab760e21b815260040160405180910390fd5b33610386818361057d565b6103e5816103b47f000000000000000000000000000000000000000000000000000000000000000085610a83565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691906105b1565b5050565b60606004805461026b90610a10565b5f336102f9818585610520565b5f811161042557604051632a9ffab760e21b815260040160405180910390fd5b3361045b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316823085610625565b6103e5816104897f000000000000000000000000000000000000000000000000000000000000000085610a96565b61065e565b61049b8383836001610692565b505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f19811461051a578181101561050c57604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064015b60405180910390fd5b61051a84848484035f610692565b50505050565b6001600160a01b03831661054957604051634b637e8f60e11b81525f6004820152602401610503565b6001600160a01b0382166105725760405163ec442f0560e01b81525f6004820152602401610503565b61049b838383610764565b6001600160a01b0382166105a657604051634b637e8f60e11b81525f6004820152602401610503565b6103e5825f83610764565b6040516001600160a01b0383811660248301526044820183905261049b91859182169063a9059cbb906064015b604051602081830303815290604052915060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505061088a565b6040516001600160a01b03848116602483015283811660448301526064820183905261051a9186918216906323b872dd906084016105de565b6001600160a01b0382166106875760405163ec442f0560e01b81525f6004820152602401610503565b6103e55f8383610764565b6001600160a01b0384166106bb5760405163e602df0560e01b81525f6004820152602401610503565b6001600160a01b0383166106e457604051634a1406b160e11b81525f6004820152602401610503565b6001600160a01b038085165f908152600160209081526040808320938716835292905220829055801561051a57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161075691815260200190565b60405180910390a350505050565b6001600160a01b03831661078e578060025f8282546107839190610aad565b909155506107fe9050565b6001600160a01b0383165f90815260208190526040902054818110156107e05760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401610503565b6001600160a01b0384165f9081526020819052604090209082900390555b6001600160a01b03821661081a57600280548290039055610838565b6001600160a01b0382165f9081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161087d91815260200190565b60405180910390a3505050565b5f5f60205f8451602086015f885af1806108a9576040513d5f823e3d81fd5b50505f513d915081156108c05780600114156108cd565b6001600160a01b0384163b155b1561051a57604051635274afe760e01b81526001600160a01b0385166004820152602401610503565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b0381168114610941575f5ffd5b919050565b5f5f60408385031215610957575f5ffd5b6109608361092b565b946020939093013593505050565b5f5f5f60608486031215610980575f5ffd5b6109898461092b565b92506109976020850161092b565b929592945050506040919091013590565b5f602082840312156109b8575f5ffd5b5035919050565b5f602082840312156109cf575f5ffd5b6109d88261092b565b9392505050565b5f5f604083850312156109f0575f5ffd5b6109f98361092b565b9150610a076020840161092b565b90509250929050565b600181811c90821680610a2457607f821691505b602082108103610a4257634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601260045260245ffd5b5f82610a6a57610a6a610a48565b500690565b634e487b7160e01b5f52601160045260245ffd5b5f82610a9157610a91610a48565b500490565b80820281158282048414176102ff576102ff610a6f565b808201808211156102ff576102ff610a6f56fea164736f6c634300081b000aa164736f6c634300081b000a", + "storage": {} + }, + "BC10000000000000000000000000000000000Da0": { + "balance": "0x0", + "nonce": "0x1", + "code": "0x6080604052600436106102f0575f3560e01c80637d5e81e211610186578063bc197c81116100dc578063e540d01d11610087578063f23a6e6111610062578063f23a6e611461097e578063f8ce560a146109a9578063fc0c546a146109c8575f5ffd5b8063e540d01d14610921578063eb9019d414610940578063ece40cc11461095f575f5ffd5b8063c59057e4116100b7578063c59057e41461088a578063dd4e2ba5146108a9578063deaaa7cc146108ee575f5ffd5b8063bc197c811461082d578063c01f9e3714610858578063c28bc2fa14610877575f5ffd5b806397c3d3341161013c578063a9a9529411610117578063a9a95294146107c4578063ab58fb8e146107e3578063b58131b014610819575f5ffd5b806397c3d3341461077e5780639a802a6d14610791578063a7713a70146107b0575f5ffd5b806384b0196e1161016c57806384b0196e1461070d5780638ff262e31461073457806391ddadf414610753575f5ffd5b80637d5e81e2146106ba5780637ecebe00146106d9575f5ffd5b80633e4f49e61161024657806356781388116101f157806360c4247f116101cc57806360c4247f1461065d578063790518871461067c5780637b3c71d31461069b575f5ffd5b806356781388146106005780635b8d0e0d1461061f5780635f398a141461063e575f5ffd5b80634bf5d7e9116102215780634bf5d7e914610570578063544ffc9c1461058457806354fd4d50146105d7575f5ffd5b80633e4f49e6146104dd5780634385963214610509578063452115d614610551575f5ffd5b8063150b7a02116102a65780632d63f693116102815780632d63f6931461045c5780632fe3e261146104965780633932abb1146104c9575f5ffd5b8063150b7a02146103e7578063160cbed71461042a5780632656227d14610449575f5ffd5b806306f3f9e6116102d657806306f3f9e61461035b57806306fdde031461037a578063143489d01461039b575f5ffd5b806301ffc9a7146102fc57806302a251a314610330575f5ffd5b366102f8575b005b5f5ffd5b348015610307575f5ffd5b5061031b610316366004612c6c565b6109fa565b60405190151581526020015b60405180910390f35b34801561033b575f5ffd5b50600854600160301b900463ffffffff165b604051908152602001610327565b348015610366575f5ffd5b506102f6610375366004612c93565b610a50565b348015610385575f5ffd5b5061038e610a64565b6040516103279190612cd8565b3480156103a6575f5ffd5b506103cf6103b5366004612c93565b5f908152600460205260409020546001600160a01b031690565b6040516001600160a01b039091168152602001610327565b3480156103f2575f5ffd5b50610411610401366004612dc5565b630a85bd0160e11b949350505050565b6040516001600160e01b03199091168152602001610327565b348015610435575f5ffd5b5061034d610444366004612f88565b610af4565b61034d610457366004612f88565b610b3c565b348015610467575f5ffd5b5061034d610476366004612c93565b5f90815260046020526040902054600160a01b900465ffffffffffff1690565b3480156104a1575f5ffd5b5061034d7f3e83946653575f9a39005e1545185629e92736b7528ab20ca3816f315424a81181565b3480156104d4575f5ffd5b5061034d610c7f565b3480156104e8575f5ffd5b506104fc6104f7366004612c93565b610c91565b6040516103279190613052565b348015610514575f5ffd5b5061031b610523366004613060565b5f8281526009602090815260408083206001600160a01b038516845260030190915290205460ff1692915050565b34801561055c575f5ffd5b5061034d61056b366004612f88565b610dda565b34801561057b575f5ffd5b5061038e610e46565b34801561058f575f5ffd5b506105bc61059e366004612c93565b5f908152600960205260409020805460018201546002909201549092565b60408051938452602084019290925290820152606001610327565b3480156105e2575f5ffd5b506040805180820190915260018152603160f81b602082015261038e565b34801561060b575f5ffd5b5061034d61061a36600461309a565b610f06565b34801561062a575f5ffd5b5061034d610639366004613100565b610f2d565b348015610649575f5ffd5b5061034d6106583660046131bd565b611089565b348015610668575f5ffd5b5061034d610677366004612c93565b6110dc565b348015610687575f5ffd5b506102f6610696366004613253565b611168565b3480156106a6575f5ffd5b5061034d6106b536600461326e565b611179565b3480156106c5575f5ffd5b5061034d6106d43660046132c4565b6111bf565b3480156106e4575f5ffd5b5061034d6106f3366004613384565b6001600160a01b03165f9081526002602052604090205490565b348015610718575f5ffd5b50610721611275565b60405161032797969594939291906133d7565b34801561073f575f5ffd5b5061034d61074e366004613444565b6112b7565b34801561075e575f5ffd5b50610767611386565b60405165ffffffffffff9091168152602001610327565b348015610789575f5ffd5b50606461034d565b34801561079c575f5ffd5b5061034d6107ab366004613490565b61140d565b3480156107bb575f5ffd5b5061034d611423565b3480156107cf575f5ffd5b5061031b6107de366004612c93565b505f90565b3480156107ee575f5ffd5b5061034d6107fd366004612c93565b5f9081526004602052604090206001015465ffffffffffff1690565b348015610824575f5ffd5b5061034d61143c565b348015610838575f5ffd5b506104116108473660046134e3565b63bc197c8160e01b95945050505050565b348015610863575f5ffd5b5061034d610872366004612c93565b611446565b6102f6610885366004613579565b611488565b348015610895575f5ffd5b5061034d6108a4366004612f88565b611504565b3480156108b4575f5ffd5b506040805180820190915260208082527f737570706f72743d627261766f2671756f72756d3d666f722c6162737461696e9082015261038e565b3480156108f9575f5ffd5b5061034d7ff2aad550cf55f045cb27e9c559f9889fdfb6e6cdaa032301d6ea397784ae51d781565b34801561092c575f5ffd5b506102f661093b3660046135b7565b61153d565b34801561094b575f5ffd5b5061034d61095a3660046135da565b61154e565b34801561096a575f5ffd5b506102f6610979366004612c93565b61156d565b348015610989575f5ffd5b50610411610998366004613602565b63f23a6e6160e01b95945050505050565b3480156109b4575f5ffd5b5061034d6109c3366004612c93565b61157e565b3480156109d3575f5ffd5b507f000000000000000000000000bc100000000000000000000000000000000000016103cf565b5f6001600160e01b031982166332a2ad4360e11b1480610a2a57506001600160e01b03198216630271189760e51b145b80610a4557506301ffc9a760e01b6001600160e01b03198316145b92915050565b905090565b610a58611588565b610a61816115bf565b50565b606060038054610a7390613656565b80601f0160208091040260200160405190810160405280929190818152602001828054610a9f90613656565b8015610aea5780601f10610ac157610100808354040283529160200191610aea565b820191905f5260205f20905b815481529060010190602001808311610acd57829003601f168201915b5050505050905090565b5f5f610b0286868686611504565b9050610b1781610b126004611654565b611676565b505f604051634844252360e11b815260040160405180910390fd5b5095945050505050565b5f5f610b4a86868686611504565b9050610b6a81610b5a6005611654565b610b646004611654565b17611676565b505f81815260046020526040902080547fff00ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16600160f01b17905530610bac3090565b6001600160a01b031614610c35575f5b8651811015610c3357306001600160a01b0316878281518110610be157610be161368e565b60200260200101516001600160a01b031603610c2b57610c2b858281518110610c0c57610c0c61368e565b60200260200101518051906020012060056116b390919063ffffffff16565b600101610bbc565b505b610c428187878787611726565b6040518181527f712ae1383f79ac853f8d882153778e0260ef8f03b504e2866e0593e04d2b291f906020015b60405180910390a195945050505050565b5f610a4b60085465ffffffffffff1690565b5f818152600460205260408120805460ff600160f01b8204811691600160f81b9004168115610cc557506007949350505050565b8015610cd657506002949350505050565b5f85815260046020526040812054600160a01b900465ffffffffffff169050805f03610d1d57604051636ad0607560e01b8152600481018790526024015b60405180910390fd5b5f610d26611386565b65ffffffffffff169050808210610d4357505f9695505050505050565b5f610d4d88611446565b9050818110610d6457506001979650505050505050565b610d6d886117fb565b1580610d8c57505f888152600960205260409020805460019091015411155b15610d9f57506003979650505050505050565b5f8881526004602052604090206001015465ffffffffffff165f03610dcc57506004979650505050505050565b506005979650505050505050565b5f5f610de886868686611504565b9050610df781610b125f611654565b505f818152600460205260409020546001600160a01b03163314610e305760405163233d98e360e01b8152336004820152602401610d14565b610e3c8686868661184b565b9695505050505050565b60607f000000000000000000000000bc100000000000000000000000000000000000016001600160a01b0316634bf5d7e96040518163ffffffff1660e01b81526004015f60405180830381865afa925050508015610ec557506040513d5f823e601f3d908101601f19168201604052610ec291908101906136a2565b60015b610f01575060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b919050565b5f80339050610f2584828560405180602001604052805f815250611912565b949350505050565b5f5f61100e876110087f3e83946653575f9a39005e1545185629e92736b7528ab20ca3816f315424a8118c8c8c610f808e6001600160a01b03165f90815260026020526040902080546001810190915590565b8d8d604051610f90929190613717565b60405180910390208c80519060200120604051602001610fed9796959493929190968752602087019590955260ff9390931660408601526001600160a01b03919091166060850152608084015260a083015260c082015260e00190565b6040516020818303038152906040528051906020012061193c565b85611968565b905080611039576040516394ab6c0760e01b81526001600160a01b0388166004820152602401610d14565b61107c89888a89898080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508b92506119d8915050565b9998505050505050505050565b5f803390506110d187828888888080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152508a92506119d8915050565b979650505050505050565b600a80545f9182906110ef60018461373a565b815481106110ff576110ff61368e565b5f918252602090912001805490915065ffffffffffff811690600160301b90046001600160d01b0316858211611141576001600160d01b031695945050505050565b61115561114d87611acb565b600a90611b01565b6001600160d01b03169695505050505050565b611170611588565b610a6181611bb0565b5f80339050610e3c86828787878080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061191292505050565b5f336111cb8184611c16565b6111f35760405163d9b3955760e01b81526001600160a01b0382166004820152602401610d14565b5f6111fc61143c565b90508015611268575f61122a836001611213611386565b61121d919061374d565b65ffffffffffff1661154e565b90508181101561126657604051636121770b60e11b81526001600160a01b03841660048201526024810182905260448101839052606401610d14565b505b6110d18787878786611d34565b5f6060805f5f5f6060611286611f8a565b61128e611fb6565b604080515f80825260208201909252600f60f81b9b939a50919850469750309650945092509050565b5f5f611341846110087ff2aad550cf55f045cb27e9c559f9889fdfb6e6cdaa032301d6ea397784ae51d789898961130a8b6001600160a01b03165f90815260026020526040902080546001810190915590565b60408051602081019690965285019390935260ff90911660608401526001600160a01b0316608083015260a082015260c001610fed565b90508061136c576040516394ab6c0760e01b81526001600160a01b0385166004820152602401610d14565b610e3c86858760405180602001604052805f815250611912565b5f7f000000000000000000000000bc100000000000000000000000000000000000016001600160a01b03166391ddadf46040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611401575060408051601f3d908101601f191682019092526113fe9181019061376b565b60015b610f0157610a4b611fe3565b5f611419848484611fed565b90505b9392505050565b5f61142e600a612080565b6001600160d01b0316905090565b5f610a4b60075490565b5f8181526004602052604081205461147a90600160d01b810463ffffffff1690600160a01b900465ffffffffffff16613786565b65ffffffffffff1692915050565b611490611588565b5f5f856001600160a01b03168585856040516114ad929190613717565b5f6040518083038185875af1925050503d805f81146114e7576040519150601f19603f3d011682016040523d82523d5f602084013e6114ec565b606091505b50915091506114fb82826120b7565b50505050505050565b5f8484848460405160200161151c9493929190613837565b60408051601f19818403018152919052805160209091012095945050505050565b611545611588565b610a61816120d3565b5f61141c838361156860408051602081019091525f815290565b611fed565b611575611588565b610a618161216f565b5f610a45826121b0565b3033146115aa576040516347096e4760e01b8152336004820152602401610d14565b565b806115b76005612257565b036115ac5750565b6064808211156115ec5760405163243e544560e01b81526004810183905260248101829052604401610d14565b5f6115f5611423565b9050611614611602611386565b61160b856122d6565b600a9190612309565b505060408051828152602081018590527f0553476bf02ef2726e8ce5ced78d63e26e602e4a2257b1f559418e24b4633997910160405180910390a1505050565b5f8160078111156116675761166761301e565b600160ff919091161b92915050565b5f5f61168184610c91565b90505f8361168e83611654565b160361141c578381846040516331b75e4d60e01b8152600401610d1493929190613881565b81546fffffffffffffffffffffffffffffffff600160801b8204811691811660018301909116036116e8576116e86041612323565b6fffffffffffffffffffffffffffffffff8082165f90815260018086016020526040909120939093558354919092018216600160801b029116179055565b5f5b84518110156117f3575f5f8683815181106117455761174561368e565b60200260200101516001600160a01b03168684815181106117685761176861368e565b60200260200101518685815181106117825761178261368e565b602002602001015160405161179791906138a3565b5f6040518083038185875af1925050503d805f81146117d1576040519150601f19603f3d011682016040523d82523d5f602084013e6117d6565b606091505b50915091506117e582826120b7565b505050806001019050611728565b505050505050565b5f8181526009602052604081206002810154600182015461181c91906138b9565b5f8481526004602052604090205461184290600160a01b900465ffffffffffff1661157e565b11159392505050565b5f5f61185986868686611504565b90506118a7816118696007611654565b6118736006611654565b61187d6002611654565b600161188a6007826138cc565b6118959060026139c0565b61189f919061373a565b181818611676565b505f818152600460205260409081902080547effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16600160f81b179055517f789cf55be980739dad1d0699b93b58e806b51c9d96619bfa8fe0a28abaa7b30c90610c6e9083815260200190565b5f6119338585858561192e60408051602081019091525f815290565b6119d8565b95945050505050565b5f610a45611948612334565b8360405161190160f01b8152600281019290925260228201526042902090565b5f836001600160a01b03163b5f036119c6575f5f611986858561245d565b5090925090505f81600381111561199f5761199f61301e565b1480156119bd5750856001600160a01b0316826001600160a01b0316145b9250505061141c565b6119d18484846124a6565b905061141c565b5f6119e786610b126001611654565b505f86815260046020526040812054611a11908790600160a01b900465ffffffffffff1685611fed565b90505f611a218888888588612591565b905083515f03611a7757866001600160a01b03167fb8e138887d0aa13bab447e82de9d5c1777041ecd21ca36ba824ff1e6c07ddda489888489604051611a6a94939291906139ce565b60405180910390a26110d1565b866001600160a01b03167fe2babfbac5889a709b63bb7f598b324e08bc5a4fb9ec647fb3cbc9ec07eb87128988848989604051611ab89594939291906139f5565b60405180910390a2979650505050505050565b5f65ffffffffffff821115611afd576040516306dfcc6560e41b81526030600482015260248101839052604401610d14565b5090565b81545f9081816005811115611b5d575f611b1a8461268d565b611b24908561373a565b5f8881526020902090915081015465ffffffffffff9081169087161015611b4d57809150611b5b565b611b588160016138b9565b92505b505b5f611b6a878785856127e5565b90508015611ba457611b8e87611b8160018461373a565b5f91825260209091200190565b54600160301b90046001600160d01b03166110d1565b5f979650505050505050565b6008546040805165ffffffffffff928316815291831660208301527fc565b045403dc03c2eea82b81a0465edad9e2e7fc4d97e11421c209da93d7a93910160405180910390a16008805465ffffffffffff191665ffffffffffff92909216919091179055565b80515f906034811015611c2d576001915050610a45565b828101601319015173ffffffffffffffffffffffffffffffffffffffff1981167f2370726f706f7365723d3078000000000000000000000000000000000000000014611c7e57600192505050610a45565b5f80611c8b60288561373a565b90505b83811015611d13575f5f611cd9888481518110611cad57611cad61368e565b01602001517fff0000000000000000000000000000000000000000000000000000000000000016612844565b9150915081611cf15760019650505050505050610a45565b8060ff166004856001600160a01b0316901b1793505050806001019050611c8e565b50856001600160a01b0316816001600160a01b031614935050505092915050565b5f611d488686868680519060200120611504565b905084518651141580611d5d57508351865114155b80611d6757508551155b15611d9c57855184518651604051630447b05d60e41b8152600481019390935260248301919091526044820152606401610d14565b5f81815260046020526040902054600160a01b900465ffffffffffff1615611de55780611dc882610c91565b6040516331b75e4d60e01b8152610d149291905f90600401613881565b5f611dee610c7f565b611df6611386565b65ffffffffffff16611e0891906138b9565b90505f611e2260085463ffffffff600160301b9091041690565b5f848152600460205260409020805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b038716178155909150611e6183611acb565b815465ffffffffffff91909116600160a01b027fffffffffffff000000000000ffffffffffffffffffffffffffffffffffffffff909116178155611ea4826128d4565b815463ffffffff91909116600160d01b027fffff00000000ffffffffffffffffffffffffffffffffffffffffffffffffffff90911617815588517f7d84a6263ae0d98d3329bd7b46bb4e8d6f98cd35a7adb45c274c8b7fd5ebd5e090859087908c908c9067ffffffffffffffff811115611f2057611f20612d00565b604051908082528060200260200182016040528015611f5357816020015b6060815260200190600190039081611f3e5790505b508c89611f608a826138b9565b8e604051611f7699989796959493929190613a3a565b60405180910390a150505095945050505050565b6060610a4b7f476f617444414f000000000000000000000000000000000000000000000000075f612904565b6060610a4b7f31000000000000000000000000000000000000000000000000000000000000016001612904565b5f610a4b43611acb565b5f7f000000000000000000000000bc10000000000000000000000000000000000001604051630748d63560e31b81526001600160a01b038681166004830152602482018690529190911690633a46b1a890604401602060405180830381865afa15801561205c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114199190613b14565b80545f9080156120af5761209983611b8160018461373a565b54600160301b90046001600160d01b031661141c565b5f9392505050565b6060826120cc576120c7826129ad565b610a45565b5080610a45565b8063ffffffff165f036120fb5760405163f1cfbf0560e01b81525f6004820152602401610d14565b6008546040805163ffffffff600160301b9093048316815291831660208301527f7e3f7f0708a84de9203036abaa450dccc85ad5ff52f78c170f3edb55cf5e8828910160405180910390a16008805463ffffffff909216600160301b0269ffffffff00000000000019909216919091179055565b60075460408051918252602082018390527fccb45da8d5717e6c4544694297c4ba5cf151d455c9bb0ed4fc7a38411bc05461910160405180910390a1600755565b5f60646121bc836110dc565b604051632394e7a360e21b8152600481018590526001600160a01b037f000000000000000000000000bc100000000000000000000000000000000000011690638e539e8c90602401602060405180830381865afa15801561221f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122439190613b14565b61224d9190613b2b565b610a459190613b56565b80545f906fffffffffffffffffffffffffffffffff80821691600160801b9004168103612288576122886031612323565b6fffffffffffffffffffffffffffffffff8181165f908152600185810160205260408220805492905585546fffffffffffffffffffffffffffffffff19169301909116919091179092555090565b5f6001600160d01b03821115611afd576040516306dfcc6560e41b815260d0600482015260248101839052604401610d14565b5f806123168585856129d6565b915091505b935093915050565b634e487b715f52806020526024601cfd5b5f306001600160a01b037f000000000000000000000000cf7ed3acca5a467e9e704c703e8d87f634fb0fc91614801561238c57507f000000000000000000000000000000000000000000000000000000000000beb046145b156123b657507f3125659d62319bc38c263a9cdd617fbe8598727a977f7ec05d25ffba4e5a02dc90565b610a4b604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f7081057b801cf71f391bb13ad68bb1be4f896665916f118ed4c6811f09fe527c918101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b5f5f5f8351604103612494576020840151604085015160608601515f1a61248688828585612b26565b95509550955050505061249f565b505081515f91506002905b9250925092565b5f5f5f856001600160a01b031685856040516024016124c6929190613b75565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16630b135d3f60e11b1790525161251091906138a3565b5f60405180830381855afa9150503d805f8114612548576040519150601f19603f3d011682016040523d82523d5f602084013e61254d565b606091505b509150915081801561256157506020815110155b8015610e3c57508051630b135d3f60e11b906125869083016020908101908401613b14565b149695505050505050565b5f8581526009602090815260408083206001600160a01b03881684526003810190925282205460ff16156125e3576040516371c6af4960e01b81526001600160a01b0387166004820152602401610d14565b6001600160a01b0386165f9081526003820160205260409020805460ff1916600117905560ff851661262c5783815f015f82825461262191906138b9565b909155506126829050565b5f1960ff86160161264a5783816001015f82825461262191906138b9565b60011960ff8616016126695783816002015f82825461262191906138b9565b6040516303599be160e11b815260040160405180910390fd5b509195945050505050565b5f6001821161269a575090565b816001600160801b82106126b35760809190911c9060401b5b6801000000000000000082106126ce5760409190911c9060201b5b64010000000082106126e55760209190911c9060101b5b6201000082106126fa5760109190911c9060081b5b610100821061270e5760089190911c9060041b5b601082106127215760049190911c9060021b5b6004821061272d5760011b5b600302600190811c9081858161274557612745613b42565b048201901c9050600181858161275d5761275d613b42565b048201901c9050600181858161277557612775613b42565b048201901c9050600181858161278d5761278d613b42565b048201901c905060018185816127a5576127a5613b42565b048201901c905060018185816127bd576127bd613b42565b048201901c90506127dc8185816127d6576127d6613b42565b04821190565b90039392505050565b5f5b8183101561283c575f6127fa8484612bee565b5f8781526020902090915065ffffffffffff86169082015465ffffffffffff16111561282857809250612836565b6128338160016138b9565b93505b506127e7565b509392505050565b5f8060f883901c602f8111801561285e5750603a8160ff16105b1561287357600194602f199091019350915050565b8060ff166040108015612889575060478160ff16105b1561289e576001946036199091019350915050565b8060ff1660601080156128b4575060678160ff16105b156128c9576001946056199091019350915050565b505f93849350915050565b5f63ffffffff821115611afd576040516306dfcc6560e41b81526020600482015260248101839052604401610d14565b606060ff831461291e5761291783612c08565b9050610a45565b81805461292a90613656565b80601f016020809104026020016040519081016040528092919081815260200182805461295690613656565b80156129a15780601f10612978576101008083540402835291602001916129a1565b820191905f5260205f20905b81548152906001019060200180831161298457829003601f168201915b50505050509050610a45565b8051156129bd5780518082602001fd5b60405163d6bda27560e01b815260040160405180910390fd5b82545f9081908015612acc575f6129f287611b8160018561373a565b805490915065ffffffffffff80821691600160301b90046001600160d01b0316908816821115612a3557604051632520601d60e01b815260040160405180910390fd5b8765ffffffffffff168265ffffffffffff1603612a6e57825465ffffffffffff16600160301b6001600160d01b03891602178355612abe565b6040805180820190915265ffffffffffff808a1682526001600160d01b03808a1660208085019182528d54600181018f555f8f81529190912094519151909216600160301b029216919091179101555b945085935061231b92505050565b50506040805180820190915265ffffffffffff80851682526001600160d01b0380851660208085019182528854600181018a555f8a815291822095519251909316600160301b02919093161792019190915590508161231b565b5f80807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115612b5f57505f91506003905082612be4565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015612bb0573d5f5f3e3d5ffd5b5050604051601f1901519150506001600160a01b038116612bdb57505f925060019150829050612be4565b92505f91508190505b9450945094915050565b5f612bfc6002848418613b56565b61141c908484166138b9565b60605f612c1483612c45565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f60ff8216601f811115610a4557604051632cd44ac360e21b815260040160405180910390fd5b5f60208284031215612c7c575f5ffd5b81356001600160e01b03198116811461141c575f5ffd5b5f60208284031215612ca3575f5ffd5b5035919050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f61141c6020830184612caa565b80356001600160a01b0381168114610f01575f5ffd5b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612d3d57612d3d612d00565b604052919050565b5f67ffffffffffffffff821115612d5e57612d5e612d00565b50601f01601f191660200190565b5f612d7e612d7984612d45565b612d14565b9050828152838383011115612d91575f5ffd5b828260208301375f602084830101529392505050565b5f82601f830112612db6575f5ffd5b61141c83833560208501612d6c565b5f5f5f5f60808587031215612dd8575f5ffd5b612de185612cea565b9350612def60208601612cea565b925060408501359150606085013567ffffffffffffffff811115612e11575f5ffd5b612e1d87828801612da7565b91505092959194509250565b5f67ffffffffffffffff821115612e4257612e42612d00565b5060051b60200190565b5f82601f830112612e5b575f5ffd5b8135612e69612d7982612e29565b8082825260208201915060208360051b860101925085831115612e8a575f5ffd5b602085015b83811015610b3257612ea081612cea565b835260209283019201612e8f565b5f82601f830112612ebd575f5ffd5b8135612ecb612d7982612e29565b8082825260208201915060208360051b860101925085831115612eec575f5ffd5b602085015b83811015610b32578035835260209283019201612ef1565b5f82601f830112612f18575f5ffd5b8135612f26612d7982612e29565b8082825260208201915060208360051b860101925085831115612f47575f5ffd5b602085015b83811015610b3257803567ffffffffffffffff811115612f6a575f5ffd5b612f79886020838a0101612da7565b84525060209283019201612f4c565b5f5f5f5f60808587031215612f9b575f5ffd5b843567ffffffffffffffff811115612fb1575f5ffd5b612fbd87828801612e4c565b945050602085013567ffffffffffffffff811115612fd9575f5ffd5b612fe587828801612eae565b935050604085013567ffffffffffffffff811115613001575f5ffd5b61300d87828801612f09565b949793965093946060013593505050565b634e487b7160e01b5f52602160045260245ffd5b6008811061304e57634e487b7160e01b5f52602160045260245ffd5b9052565b60208101610a458284613032565b5f5f60408385031215613071575f5ffd5b8235915061308160208401612cea565b90509250929050565b803560ff81168114610f01575f5ffd5b5f5f604083850312156130ab575f5ffd5b823591506130816020840161308a565b5f5f83601f8401126130cb575f5ffd5b50813567ffffffffffffffff8111156130e2575f5ffd5b6020830191508360208285010111156130f9575f5ffd5b9250929050565b5f5f5f5f5f5f5f60c0888a031215613116575f5ffd5b873596506131266020890161308a565b955061313460408901612cea565b9450606088013567ffffffffffffffff81111561314f575f5ffd5b61315b8a828b016130bb565b909550935050608088013567ffffffffffffffff81111561317a575f5ffd5b6131868a828b01612da7565b92505060a088013567ffffffffffffffff8111156131a2575f5ffd5b6131ae8a828b01612da7565b91505092959891949750929550565b5f5f5f5f5f608086880312156131d1575f5ffd5b853594506131e16020870161308a565b9350604086013567ffffffffffffffff8111156131fc575f5ffd5b613208888289016130bb565b909450925050606086013567ffffffffffffffff811115613227575f5ffd5b61323388828901612da7565b9150509295509295909350565b65ffffffffffff81168114610a61575f5ffd5b5f60208284031215613263575f5ffd5b813561141c81613240565b5f5f5f5f60608587031215613281575f5ffd5b843593506132916020860161308a565b9250604085013567ffffffffffffffff8111156132ac575f5ffd5b6132b8878288016130bb565b95989497509550505050565b5f5f5f5f608085870312156132d7575f5ffd5b843567ffffffffffffffff8111156132ed575f5ffd5b6132f987828801612e4c565b945050602085013567ffffffffffffffff811115613315575f5ffd5b61332187828801612eae565b935050604085013567ffffffffffffffff81111561333d575f5ffd5b61334987828801612f09565b925050606085013567ffffffffffffffff811115613365575f5ffd5b8501601f81018713613375575f5ffd5b612e1d87823560208401612d6c565b5f60208284031215613394575f5ffd5b61141c82612cea565b5f8151808452602084019350602083015f5b828110156133cd5781518652602095860195909101906001016133af565b5093949350505050565b60ff60f81b8816815260e060208201525f6133f560e0830189612caa565b82810360408401526134078189612caa565b90508660608401526001600160a01b03861660808401528460a084015282810360c0840152613436818561339d565b9a9950505050505050505050565b5f5f5f5f60808587031215613457575f5ffd5b843593506134676020860161308a565b925061347560408601612cea565b9150606085013567ffffffffffffffff811115612e11575f5ffd5b5f5f5f606084860312156134a2575f5ffd5b6134ab84612cea565b925060208401359150604084013567ffffffffffffffff8111156134cd575f5ffd5b6134d986828701612da7565b9150509250925092565b5f5f5f5f5f60a086880312156134f7575f5ffd5b61350086612cea565b945061350e60208701612cea565b9350604086013567ffffffffffffffff811115613529575f5ffd5b61353588828901612eae565b935050606086013567ffffffffffffffff811115613551575f5ffd5b61355d88828901612eae565b925050608086013567ffffffffffffffff811115613227575f5ffd5b5f5f5f5f6060858703121561358c575f5ffd5b61359585612cea565b935060208501359250604085013567ffffffffffffffff8111156132ac575f5ffd5b5f602082840312156135c7575f5ffd5b813563ffffffff8116811461141c575f5ffd5b5f5f604083850312156135eb575f5ffd5b6135f483612cea565b946020939093013593505050565b5f5f5f5f5f60a08688031215613616575f5ffd5b61361f86612cea565b945061362d60208701612cea565b93506040860135925060608601359150608086013567ffffffffffffffff811115613227575f5ffd5b600181811c9082168061366a57607f821691505b60208210810361368857634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156136b2575f5ffd5b815167ffffffffffffffff8111156136c8575f5ffd5b8201601f810184136136d8575f5ffd5b80516136e6612d7982612d45565b8181528560208385010111156136fa575f5ffd5b8160208401602083015e5f91810160200191909152949350505050565b818382375f9101908152919050565b634e487b7160e01b5f52601160045260245ffd5b81810381811115610a4557610a45613726565b65ffffffffffff8281168282160390811115610a4557610a45613726565b5f6020828403121561377b575f5ffd5b815161141c81613240565b65ffffffffffff8181168382160190811115610a4557610a45613726565b5f8151808452602084019350602083015f5b828110156133cd5781516001600160a01b03168652602095860195909101906001016137b6565b5f82825180855260208501945060208160051b830101602085015f5b8381101561382b57601f19858403018852613815838351612caa565b60209889019890935091909101906001016137f9565b50909695505050505050565b608081525f61384960808301876137a4565b828103602084015261385b818761339d565b9050828103604084015261386f81866137dd565b91505082606083015295945050505050565b838152606081016138956020830185613032565b826040830152949350505050565b5f82518060208501845e5f920191825250919050565b80820180821115610a4557610a45613726565b60ff8181168382160190811115610a4557610a45613726565b6001815b600184111561231b5780850481111561390457613904613726565b600184161561391257908102905b60019390931c9280026138e9565b5f8261392e57506001610a45565b8161393a57505f610a45565b8160018114613950576002811461395a57613976565b6001915050610a45565b60ff84111561396b5761396b613726565b50506001821b610a45565b5060208310610133831016604e8410600b8410161715613999575081810a610a45565b6139a55f1984846138e5565b805f19048211156139b8576139b8613726565b029392505050565b5f61141c60ff841683613920565b84815260ff84166020820152826040820152608060608201525f610e3c6080830184612caa565b85815260ff8516602082015283604082015260a060608201525f613a1c60a0830185612caa565b8281036080840152613a2e8185612caa565b98975050505050505050565b8981526001600160a01b038916602082015261012060408201525f613a6361012083018a6137a4565b8281036060840152613a75818a61339d565b9050828103608084015280885180835260208301915060208160051b84010160208b015f5b83811015613acc57601f19868403018552613ab6838351612caa565b6020958601959093509190910190600101613a9a565b505085810360a0870152613ae0818b6137dd565b93505050508560c08401528460e0840152828103610100840152613b048185612caa565b9c9b505050505050505050505050565b5f60208284031215613b24575f5ffd5b5051919050565b8082028115828204841417610a4557610a45613726565b634e487b7160e01b5f52601260045260245ffd5b5f82613b7057634e487b7160e01b5f52601260045260245ffd5b500490565b828152604060208201525f6114196040830184612caa56fea164736f6c634300081b000a", + "storage": { + "0x0000000000000000000000000000000000000000000000000000000000000003": "0x476f617444414f0000000000000000000000000000000000000000000000000e", + "0x0000000000000000000000000000000000000000000000000000000000000007": "0x0000000000000000000000000000000000000000000000000000000000000000", + "0x0000000000000000000000000000000000000000000000000000000000000008": "0x0000000000000000000000000000000000000000000000093a80000000015180", + "0x000000000000000000000000000000000000000000000000000000000000000a": "0x0000000000000000000000000000000000000000000000000000000000000001", + "0xc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8": "0x0000000000000000000000000000000000000000000000000004000000000004" + } + } + }, + "number": "0x0", + "gasUsed": "0x0", + "parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "baseFeePerGas": 2028449 +}