diff --git a/.gitignore b/.gitignore index 2b557759..f1fa4610 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ broadcast/ compiled/*.wasm .docker/cli/*.json .env +node_modules/ diff --git a/.gitmodules b/.gitmodules index fd31347d..888d42dc 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,7 +1,3 @@ [submodule "lib/forge-std"] path = lib/forge-std url = https://github.com/foundry-rs/forge-std -[submodule "lib/WAVS"] - path = lib/WAVS - url = https://github.com/Lay3rLabs/WAVS - tag = v0.3.0-alpha4 diff --git a/Cargo-component.lock b/Cargo-component.lock new file mode 100644 index 00000000..5cd5bc90 --- /dev/null +++ b/Cargo-component.lock @@ -0,0 +1,11 @@ +# This file is automatically generated by cargo-component. +# It is not intended for manual editing. +version = 1 + +[[package]] +name = "wavs:worker" + +[[package.version]] +requirement = "^0.3.0-alpha2" +version = "0.3.0-alpha2" +digest = "sha256:b551fdb5109fc5fd9cc2e08f42331a84172b9813235b88c47ed770ce32b05d09" diff --git a/Cargo.lock b/Cargo.lock index e036028f..f454d151 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -24,10 +24,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ "cfg-if", - "getrandom", + "getrandom 0.2.15", "once_cell", "version_check", - "zerocopy", + "zerocopy 0.7.35", ] [[package]] @@ -38,27 +38,30 @@ checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] name = "alloy" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" dependencies = [ - "alloy-consensus 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-contract 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-consensus 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-contract 0.11.0", "alloy-core", - "alloy-eips 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-eips 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "alloy-genesis", - "alloy-network 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-provider 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-rpc-client 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-serde 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-transport 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-transport-http 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-network 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-provider 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-rpc-client 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-rpc-types", + "alloy-serde 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-signer 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-signer-local", + "alloy-transport 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-transport-http 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", ] [[package]] name = "alloy-chains" -version = "0.1.57" +version = "0.1.59" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ab9d1367c6ffb90c93fb4a9a4989530aa85112438c6f73a734067255d348469" +checksum = "4d37bc62b68c056e3742265ab73c73d413d07357909e0e4ea1e95453066a7469" dependencies = [ "alloy-primitives", "num_enum", @@ -71,10 +74,10 @@ version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f4138dc275554afa6f18c4217262ac9388790b2fc393c2dfe03c51d357abf013" dependencies = [ - "alloy-eips 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-eips 0.9.2", "alloy-primitives", "alloy-rlp", - "alloy-serde 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-serde 0.9.2", "alloy-trie", "auto_impl", "c-kzg", @@ -84,13 +87,30 @@ dependencies = [ [[package]] name = "alloy-consensus" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce20c85f6b24a5da40b2350a748e348417f0465dedbb523a4d149143bc4a41ce" dependencies = [ - "alloy-eips 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-eips 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-primitives", "alloy-rlp", - "alloy-serde 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-serde 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-trie", + "auto_impl", + "c-kzg", + "derive_more", + "serde", +] + +[[package]] +name = "alloy-consensus" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" +dependencies = [ + "alloy-eips 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-primitives", + "alloy-rlp", + "alloy-serde 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "alloy-trie", "auto_impl", "c-kzg", @@ -104,24 +124,38 @@ version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fa04e1882c31288ce1028fdf31b6ea94cfa9eafa2e497f903ded631c8c6a42c" dependencies = [ - "alloy-consensus 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-eips 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-consensus 0.9.2", + "alloy-eips 0.9.2", "alloy-primitives", "alloy-rlp", - "alloy-serde 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-serde 0.9.2", "serde", ] [[package]] name = "alloy-consensus-any" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e23af02ccded0031ef2b70df4fe9965b1c742c5d5384c8c767ae0311f7e62b9" dependencies = [ - "alloy-consensus 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-eips 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-consensus 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-eips 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-primitives", "alloy-rlp", - "alloy-serde 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-serde 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", +] + +[[package]] +name = "alloy-consensus-any" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" +dependencies = [ + "alloy-consensus 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-eips 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-primitives", + "alloy-rlp", + "alloy-serde 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "serde", ] @@ -133,13 +167,13 @@ checksum = "5f21886c1fea0626f755a49b2ac653b396fb345233f6170db2da3d0ada31560c" dependencies = [ "alloy-dyn-abi", "alloy-json-abi", - "alloy-network 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-network-primitives 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-network 0.9.2", + "alloy-network-primitives 0.9.2", "alloy-primitives", - "alloy-provider 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-rpc-types-eth 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-provider 0.9.2", + "alloy-rpc-types-eth 0.9.2", "alloy-sol-types", - "alloy-transport 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-transport 0.9.2", "futures", "futures-util", "thiserror 2.0.11", @@ -147,18 +181,18 @@ dependencies = [ [[package]] name = "alloy-contract" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" dependencies = [ "alloy-dyn-abi", "alloy-json-abi", - "alloy-network 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-network-primitives 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-network 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-network-primitives 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "alloy-primitives", - "alloy-provider 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-rpc-types-eth 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-provider 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-rpc-types-eth 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "alloy-sol-types", - "alloy-transport 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-transport 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "futures", "futures-util", "thiserror 2.0.11", @@ -166,9 +200,9 @@ dependencies = [ [[package]] name = "alloy-core" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "648275bb59110f88cc5fa9a176845e52a554ebfebac2d21220bcda8c9220f797" +checksum = "482f377cebceed4bb1fb5e7970f0805e2ab123d06701be9351b67ed6341e74aa" dependencies = [ "alloy-dyn-abi", "alloy-json-abi", @@ -179,9 +213,9 @@ dependencies = [ [[package]] name = "alloy-dyn-abi" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc9138f4f0912793642d453523c3116bd5d9e11de73b70177aa7cb3e94b98ad2" +checksum = "555896f0b8578adb522b1453b6e6cc6704c3027bd0af20058befdde992cee8e9" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -194,6 +228,18 @@ dependencies = [ "winnow", ] +[[package]] +name = "alloy-eip2124" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "675264c957689f0fd75f5993a73123c2cc3b5c235a38f5b9037fe6c826bfb2c0" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "crc", + "thiserror 2.0.11", +] + [[package]] name = "alloy-eip2930" version = "0.1.0" @@ -227,7 +273,7 @@ dependencies = [ "alloy-eip7702", "alloy-primitives", "alloy-rlp", - "alloy-serde 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-serde 0.9.2", "c-kzg", "derive_more", "once_cell", @@ -237,14 +283,36 @@ dependencies = [ [[package]] name = "alloy-eips" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7149e011edbd588f6df6564b369c75f6b538d76db14053d95e0b43b2d92e4266" dependencies = [ + "alloy-eip2124", "alloy-eip2930", "alloy-eip7702", "alloy-primitives", "alloy-rlp", - "alloy-serde 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-serde 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "auto_impl", + "c-kzg", + "derive_more", + "once_cell", + "serde", + "sha2 0.10.8", +] + +[[package]] +name = "alloy-eips" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" +dependencies = [ + "alloy-eip2124", + "alloy-eip2930", + "alloy-eip7702", + "alloy-primitives", + "alloy-rlp", + "alloy-serde 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "auto_impl", "c-kzg", "derive_more", "once_cell", @@ -254,21 +322,21 @@ dependencies = [ [[package]] name = "alloy-genesis" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" dependencies = [ - "alloy-eips 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-eips 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "alloy-primitives", - "alloy-serde 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-serde 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "alloy-trie", "serde", ] [[package]] name = "alloy-json-abi" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24acd2f5ba97c7a320e67217274bc81fe3c3174b8e6144ec875d9d54e760e278" +checksum = "4012581681b186ba0882007ed873987cc37f86b1b488fe6b91d5efd0b585dc41" dependencies = [ "alloy-primitives", "alloy-sol-type-parser", @@ -292,8 +360,22 @@ dependencies = [ [[package]] name = "alloy-json-rpc" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0c5c9651fd20a2fd4a57606b6a570d1c17ab86e686b962b2f1ecac68b51e020" +dependencies = [ + "alloy-primitives", + "alloy-sol-types", + "serde", + "serde_json", + "thiserror 2.0.11", + "tracing", +] + +[[package]] +name = "alloy-json-rpc" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" dependencies = [ "alloy-primitives", "alloy-sol-types", @@ -309,16 +391,16 @@ version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4556f01fe41d0677495df10a648ddcf7ce118b0e8aa9642a0e2b6dd1fb7259de" dependencies = [ - "alloy-consensus 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-consensus-any 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-eips 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-json-rpc 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-network-primitives 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-consensus 0.9.2", + "alloy-consensus-any 0.9.2", + "alloy-eips 0.9.2", + "alloy-json-rpc 0.9.2", + "alloy-network-primitives 0.9.2", "alloy-primitives", - "alloy-rpc-types-any 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-rpc-types-eth 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-serde 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-signer 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-rpc-types-any 0.9.2", + "alloy-rpc-types-eth 0.9.2", + "alloy-serde 0.9.2", + "alloy-signer 0.9.2", "alloy-sol-types", "async-trait", "auto_impl", @@ -330,19 +412,44 @@ dependencies = [ [[package]] name = "alloy-network" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b02ed56783fb2c086a4ac8961175dd6d3ad163e6cf6125f0b83f7de03379b607" dependencies = [ - "alloy-consensus 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-consensus-any 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-eips 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-json-rpc 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-network-primitives 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-consensus 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-consensus-any 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-eips 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-json-rpc 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-network-primitives 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-primitives", - "alloy-rpc-types-any 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-rpc-types-eth 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-serde 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-signer 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-rpc-types-any 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-rpc-types-eth 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-serde 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-signer 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-sol-types", + "async-trait", + "auto_impl", + "futures-utils-wasm", + "serde", + "serde_json", + "thiserror 2.0.11", +] + +[[package]] +name = "alloy-network" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" +dependencies = [ + "alloy-consensus 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-consensus-any 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-eips 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-json-rpc 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-network-primitives 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-primitives", + "alloy-rpc-types-any 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-rpc-types-eth 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-serde 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-signer 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "alloy-sol-types", "async-trait", "auto_impl", @@ -358,30 +465,43 @@ version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f31c3c6b71340a1d076831823f09cb6e02de01de5c6630a9631bdb36f947ff80" dependencies = [ - "alloy-consensus 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-eips 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-consensus 0.9.2", + "alloy-eips 0.9.2", "alloy-primitives", - "alloy-serde 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-serde 0.9.2", "serde", ] [[package]] name = "alloy-network-primitives" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0624cfa9311aa8283cd3bf5eed883d0d1e823e2a4d57b30e1b49af4b3678a6b" +dependencies = [ + "alloy-consensus 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-eips 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-primitives", + "alloy-serde 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "serde", +] + +[[package]] +name = "alloy-network-primitives" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" dependencies = [ - "alloy-consensus 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-eips 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-consensus 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-eips 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "alloy-primitives", - "alloy-serde 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-serde 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "serde", ] [[package]] name = "alloy-primitives" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec878088ec6283ce1e90d280316aadd3d6ce3de06ff63d68953c855e7e447e92" +checksum = "478bedf4d24e71ea48428d1bc278553bd7c6ae07c30ca063beb0b09fe58a9e74" dependencies = [ "alloy-rlp", "bytes", @@ -396,7 +516,7 @@ dependencies = [ "keccak-asm", "paste", "proptest", - "rand", + "rand 0.8.5", "ruint", "rustc-hash", "serde", @@ -411,63 +531,95 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a22c4441b3ebe2d77fa9cf629ba68c3f713eb91779cff84275393db97eddd82" dependencies = [ "alloy-chains", - "alloy-consensus 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-eips 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-json-rpc 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-network 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-network-primitives 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-consensus 0.9.2", + "alloy-eips 0.9.2", + "alloy-json-rpc 0.9.2", + "alloy-network 0.9.2", + "alloy-network-primitives 0.9.2", "alloy-primitives", - "alloy-rpc-client 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-rpc-types-eth 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-transport 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-transport-http 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-rpc-client 0.9.2", + "alloy-rpc-types-eth 0.9.2", + "alloy-transport 0.9.2", "async-stream", "async-trait", "auto_impl", "dashmap", "futures", "futures-utils-wasm", - "lru", + "lru 0.12.5", "parking_lot", "pin-project", - "reqwest", "schnellru", "serde", "serde_json", "thiserror 2.0.11", "tokio", "tracing", + "wasmtimer", +] + +[[package]] +name = "alloy-provider" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07c68df5354225da542efeb6d9388b65773b3304309b437416146e9d1e2bc1bd" +dependencies = [ + "alloy-chains", + "alloy-consensus 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-eips 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-json-rpc 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-network 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-network-primitives 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-primitives", + "alloy-rpc-client 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-rpc-types-eth 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-transport 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-transport-http 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "async-stream", + "async-trait", + "auto_impl", + "dashmap", + "futures", + "futures-utils-wasm", + "lru 0.13.0", + "parking_lot", + "pin-project", + "reqwest", + "serde", + "serde_json", + "thiserror 2.0.11", + "tokio", + "tracing", "url", "wasmtimer", ] [[package]] name = "alloy-provider" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" dependencies = [ "alloy-chains", - "alloy-consensus 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-eips 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-json-rpc 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-network 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-network-primitives 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-consensus 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-eips 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-json-rpc 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-network 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-network-primitives 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "alloy-primitives", - "alloy-rpc-client 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-rpc-types-eth 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-transport 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-transport-http 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-rpc-client 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-rpc-types-eth 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-transport 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-transport-http 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "async-stream", "async-trait", "auto_impl", "dashmap", "futures", "futures-utils-wasm", - "lru", + "lru 0.13.0", "parking_lot", "pin-project", "reqwest", - "schnellru", "serde", "serde_json", "thiserror 2.0.11", @@ -496,7 +648,7 @@ checksum = "a40e1ef334153322fd878d07e86af7a529bcb86b2439525920a88eba87bcf943" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -505,10 +657,31 @@ version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d06a292b37e182e514903ede6e623b9de96420e8109ce300da288a96d88b7e4b" dependencies = [ - "alloy-json-rpc 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-json-rpc 0.9.2", "alloy-primitives", - "alloy-transport 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-transport-http 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-transport 0.9.2", + "alloy-transport-http 0.9.2", + "futures", + "pin-project", + "serde", + "serde_json", + "tokio", + "tokio-stream", + "tower 0.5.2", + "tracing", + "wasmtimer", +] + +[[package]] +name = "alloy-rpc-client" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0371aae9b44a35e374c94c7e1df5cbccf0f52b2ef7c782291ed56e86d88ec106" +dependencies = [ + "alloy-json-rpc 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-primitives", + "alloy-transport 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-transport-http 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "futures", "pin-project", "reqwest", @@ -524,13 +697,13 @@ dependencies = [ [[package]] name = "alloy-rpc-client" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" dependencies = [ - "alloy-json-rpc 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-json-rpc 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "alloy-primitives", - "alloy-transport 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-transport-http 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-transport 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-transport-http 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "futures", "pin-project", "reqwest", @@ -546,14 +719,12 @@ dependencies = [ [[package]] name = "alloy-rpc-types" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9383845dd924939e7ab0298bbfe231505e20928907d7905aa3bf112287305e06" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" dependencies = [ "alloy-primitives", - "alloy-rpc-types-engine", - "alloy-rpc-types-eth 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-serde 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-rpc-types-eth 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-serde 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "serde", ] @@ -563,54 +734,67 @@ version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ca445cef0eb6c2cf51cfb4e214fbf1ebd00893ae2e6f3b944c8101b07990f988" dependencies = [ - "alloy-consensus-any 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-rpc-types-eth 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-serde 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-consensus-any 0.9.2", + "alloy-rpc-types-eth 0.9.2", + "alloy-serde 0.9.2", ] [[package]] name = "alloy-rpc-types-any" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66e119337400d8b0348e1576ab37ffa56d1a04cbc977a84d4fa0a527d7cb0c21" +dependencies = [ + "alloy-consensus-any 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-rpc-types-eth 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-serde 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", +] + +[[package]] +name = "alloy-rpc-types-any" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" dependencies = [ - "alloy-consensus-any 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-rpc-types-eth 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-serde 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-consensus-any 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-rpc-types-eth 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-serde 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", ] [[package]] -name = "alloy-rpc-types-engine" +name = "alloy-rpc-types-eth" version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a5f821f30344862a0b6eb9a1c2eb91dfb2ff44c7489f37152a526cdcab79264" +checksum = "0938bc615c02421bd86c1733ca7205cc3d99a122d9f9bff05726bd604b76a5c2" dependencies = [ - "alloy-consensus 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-eips 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-consensus 0.9.2", + "alloy-consensus-any 0.9.2", + "alloy-eips 0.9.2", + "alloy-network-primitives 0.9.2", "alloy-primitives", "alloy-rlp", - "alloy-serde 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "derive_more", - "jsonwebtoken", - "rand", + "alloy-serde 0.9.2", + "alloy-sol-types", + "itertools 0.13.0", "serde", - "strum", + "serde_json", + "thiserror 2.0.11", ] [[package]] name = "alloy-rpc-types-eth" -version = "0.9.2" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0938bc615c02421bd86c1733ca7205cc3d99a122d9f9bff05726bd604b76a5c2" +checksum = "8a4a43d8b1344e3ef115ed7a2cee934876e4a64d2b9d9bee8738f9806900757e" dependencies = [ - "alloy-consensus 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-consensus-any 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-eips 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-network-primitives 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-consensus 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-consensus-any 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-eips 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-network-primitives 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-primitives", "alloy-rlp", - "alloy-serde 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-serde 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "alloy-sol-types", - "itertools 0.13.0", + "itertools 0.14.0", "serde", "serde_json", "thiserror 2.0.11", @@ -618,18 +802,18 @@ dependencies = [ [[package]] name = "alloy-rpc-types-eth" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" dependencies = [ - "alloy-consensus 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-consensus-any 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-eips 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-network-primitives 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-consensus 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-consensus-any 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-eips 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-network-primitives 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "alloy-primitives", "alloy-rlp", - "alloy-serde 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-serde 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "alloy-sol-types", - "itertools 0.13.0", + "itertools 0.14.0", "serde", "serde_json", "thiserror 2.0.11", @@ -648,8 +832,19 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86aa42c36e3c0db5bd9a7314e98aa261a61d5e3d6a0bd7e51fb8b0a3d6438481" +dependencies = [ + "alloy-primitives", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-serde" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" dependencies = [ "alloy-primitives", "serde", @@ -672,8 +867,9 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c613222abd016e03ba548f41db938a2c99108b59c0c66ca105eab1b7a2e6b40a" dependencies = [ "alloy-primitives", "async-trait", @@ -683,25 +879,53 @@ dependencies = [ "thiserror 2.0.11", ] +[[package]] +name = "alloy-signer" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" +dependencies = [ + "alloy-primitives", + "async-trait", + "auto_impl", + "elliptic-curve", + "k256", + "thiserror 2.0.11", +] + +[[package]] +name = "alloy-signer-local" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" +dependencies = [ + "alloy-consensus 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-network 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-primitives", + "alloy-signer 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "async-trait", + "k256", + "rand 0.8.5", + "thiserror 2.0.11", +] + [[package]] name = "alloy-sol-macro" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d039d267aa5cbb7732fa6ce1fd9b5e9e29368f580f80ba9d7a8450c794de4b2" +checksum = "a2708e27f58d747423ae21d31b7a6625159bd8d867470ddd0256f396a68efa11" dependencies = [ "alloy-sol-macro-expander", "alloy-sol-macro-input", "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] name = "alloy-sol-macro-expander" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "620ae5eee30ee7216a38027dec34e0585c55099f827f92f50d11e3d2d3a4a954" +checksum = "c6b7984d7e085dec382d2c5ef022b533fcdb1fe6129200af30ebf5afddb6a361" dependencies = [ "alloy-json-abi", "alloy-sol-macro-input", @@ -711,16 +935,16 @@ dependencies = [ "proc-macro-error2", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "syn-solidity", "tiny-keccak", ] [[package]] name = "alloy-sol-macro-input" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad9f7d057e00f8c5994e4ff4492b76532c51ead39353aa2ed63f8c50c0f4d52e" +checksum = "33d6a9fc4ed1a3c70bdb2357bec3924551c1a59f24e5a04a74472c755b37f87d" dependencies = [ "alloy-json-abi", "const-hex", @@ -729,15 +953,15 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.96", + "syn 2.0.98", "syn-solidity", ] [[package]] name = "alloy-sol-type-parser" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74e60b084fe1aef8acecda2743ff2d93c18ff3eb67a2d3b12f62582a1e66ef5e" +checksum = "1b1b3e9a48a6dd7bb052a111c8d93b5afc7956ed5e2cb4177793dc63bb1d2a36" dependencies = [ "serde", "winnow", @@ -745,9 +969,9 @@ dependencies = [ [[package]] name = "alloy-sol-types" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1382302752cd751efd275f4d6ef65877ddf61e0e6f5ac84ef4302b79a33a31a" +checksum = "6044800da35c38118fd4b98e18306bd3b91af5dedeb54c1b768cf1b4fb68f549" dependencies = [ "alloy-json-abi", "alloy-primitives", @@ -762,7 +986,7 @@ version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d17722a198f33bbd25337660787aea8b8f57814febb7c746bc30407bdfc39448" dependencies = [ - "alloy-json-rpc 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-json-rpc 0.9.2", "base64 0.22.1", "futures-util", "futures-utils-wasm", @@ -778,12 +1002,30 @@ dependencies = [ [[package]] name = "alloy-transport" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40e2f34fcd849676c8fe274a6e72f0664dfede7ce06d12daa728d2e72f1b4393" dependencies = [ - "alloy-json-rpc 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-json-rpc 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "base64 0.22.1", + "futures-utils-wasm", + "serde", + "serde_json", + "thiserror 2.0.11", + "tokio", + "tower 0.5.2", + "tracing", + "url", + "wasmtimer", +] + +[[package]] +name = "alloy-transport" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" +dependencies = [ + "alloy-json-rpc 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "base64 0.22.1", - "futures-util", "futures-utils-wasm", "serde", "serde_json", @@ -801,8 +1043,18 @@ version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e1509599021330a31c4a6816b655e34bf67acb1cc03c564e09fd8754ff6c5de" dependencies = [ - "alloy-json-rpc 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-transport 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-transport 0.9.2", + "url", +] + +[[package]] +name = "alloy-transport-http" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e291c97c3c0ebb5d03c34e3a55c0f7c5bfa307536a2efaaa6fae4b3a4d09851" +dependencies = [ + "alloy-json-rpc 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-transport 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", "reqwest", "serde_json", "tower 0.5.2", @@ -812,11 +1064,11 @@ dependencies = [ [[package]] name = "alloy-transport-http" -version = "0.9.2" -source = "git+https://github.com/alloy-rs/alloy?rev=v0.9.2#7259b76063d511be2461c078f051dd02c9a175ce" +version = "0.11.0" +source = "git+https://github.com/alloy-rs/alloy?rev=v0.11.0#f4d34d4039270b9e2da2b62cc84351f1145ef3a5" dependencies = [ - "alloy-json-rpc 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", - "alloy-transport 0.9.2 (git+https://github.com/alloy-rs/alloy?rev=v0.9.2)", + "alloy-json-rpc 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", + "alloy-transport 0.11.0 (git+https://github.com/alloy-rs/alloy?rev=v0.11.0)", "reqwest", "serde_json", "tower 0.5.2", @@ -826,9 +1078,9 @@ dependencies = [ [[package]] name = "alloy-trie" -version = "0.7.8" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6917c79e837aa7b77b7a6dae9f89cbe15313ac161c4d3cfaf8909ef21f3d22d8" +checksum = "d95a94854e420f07e962f7807485856cde359ab99ab6413883e15235ad996e8b" dependencies = [ "alloy-primitives", "alloy-rlp", @@ -1023,7 +1275,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c" dependencies = [ "num-traits", - "rand", + "rand 0.8.5", ] [[package]] @@ -1033,7 +1285,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" dependencies = [ "num-traits", - "rand", + "rand 0.8.5", "rayon", ] @@ -1065,18 +1317,18 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] name = "async-trait" -version = "0.1.85" +version = "0.1.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f934833b4b7233644e5848f235df3f57ed8c80f1528a26c3dfa13d2147fa056" +checksum = "644dd749086bf3771a2fbc5f256fdb982d53f011c7d5d560304eafeecebce79d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1093,7 +1345,7 @@ checksum = "e12882f59de5360c748c4cbf569a042d5fb0eb515f7bea9c1f470b47f6ffbd73" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1203,15 +1455,16 @@ dependencies = [ [[package]] name = "bip32" -version = "0.5.2" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa13fae8b6255872fd86f7faf4b41168661d7d78609f7bfe6771b85c6739a15b" +checksum = "db40d3dfbeab4e031d78c844642fa0caa0b0db11ce1607ac9d2986dff1405c69" dependencies = [ "bs58", "hmac", "k256", - "rand_core", + "rand_core 0.6.4", "ripemd", + "secp256k1", "sha2 0.10.8", "subtle", "zeroize", @@ -1324,9 +1577,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.16.0" +version = "3.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" +checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" [[package]] name = "byte-slice-cast" @@ -1342,9 +1595,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" +checksum = "f61dac84819c6588b558454b194026eb1f09c293b9036ae9b159e74e73ab6cf9" dependencies = [ "serde", ] @@ -1366,9 +1619,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.10" +version = "1.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13208fcbb66eaeffe09b99fffbe1af420f00a7b35aa99ad683dfc1aa76145229" +checksum = "c7777341816418c02e033934a09f20dc0ccaf65a5201ef8a450ae0105a573fda" dependencies = [ "shlex", ] @@ -1398,6 +1651,26 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" +[[package]] +name = "const_format" +version = "0.2.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "126f97965c8ad46d6d9163268ff28432e8f6a1196a55578867832e3049df63dd" +dependencies = [ + "const_format_proc_macros", +] + +[[package]] +name = "const_format_proc_macros" +version = "0.2.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d57c2eccfb16dbac1f4e61e206105db5820c9d26c3c472bc17c774259ef7744" +dependencies = [ + "proc-macro2", + "quote", + "unicode-xid", +] + [[package]] name = "core-foundation" version = "0.9.4" @@ -1426,26 +1699,26 @@ checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cosmos-sdk-proto" -version = "0.25.0" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8ce7f4797cdf5cd18be6555ff3f0a8d37023c2d60f3b2708895d601b85c1c46" +checksum = "462e1f6a8e005acc8835d32d60cbd7973ed65ea2a8d8473830e675f050956427" dependencies = [ "prost", - "tendermint-proto 0.39.1", + "tendermint-proto", "tonic", ] [[package]] name = "cosmwasm-core" -version = "2.2.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c34c440d4d8e3ecec783d0f9c89d25565168b0f4cdb80a1f6a387cf2168c0740" +checksum = "de32156e4fd80c59be39ed6f4ebb596d59b0a4eaf01d6f146e27628ec7e8f8c1" [[package]] name = "cosmwasm-crypto" -version = "2.2.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "134e765161d60228cc27635032d2a466542ca83fd6c87f3c87f4963c0bd51008" +checksum = "38fe1e6107ae3c9ba5e1f14178dd8bd52210535030d07f0609cf0d754c1f7de2" dependencies = [ "ark-bls12-381", "ark-ec", @@ -1459,7 +1732,7 @@ dependencies = [ "k256", "num-traits", "p256", - "rand_core", + "rand_core 0.6.4", "rayon", "sha2 0.10.8", "thiserror 1.0.69", @@ -1467,20 +1740,20 @@ dependencies = [ [[package]] name = "cosmwasm-derive" -version = "2.2.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c94a4b93e722c91d2e58471cfe69480f4a656cfccacd8bfda5638f2a5d4512b" +checksum = "484926c9dc8b90c59a717946c86bb272182003cbaabb378560086648d4056656" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] name = "cosmwasm-std" -version = "2.2.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4434e556b0aebff34bf082e75d175b5d7edbcf1d90d4cedb59623a1249fff567" +checksum = "c92be4747d9abe3a96a5a78af34d29947992b3f67f602987ff8a87142ce9c413" dependencies = [ "base64 0.22.1", "bech32", @@ -1490,7 +1763,7 @@ dependencies = [ "cosmwasm-derive", "derive_more", "hex", - "rand_core", + "rand_core 0.6.4", "rmp-serde", "schemars", "serde", @@ -1502,13 +1775,28 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3" +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" dependencies = [ "libc", ] +[[package]] +name = "crc" +version = "3.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" +dependencies = [ + "crc-catalog", +] + +[[package]] +name = "crc-catalog" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" + [[package]] name = "crossbeam-deque" version = "0.8.6" @@ -1547,7 +1835,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" dependencies = [ "generic-array", - "rand_core", + "rand_core 0.6.4", "subtle", "zeroize", ] @@ -1586,7 +1874,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1597,7 +1885,7 @@ checksum = "1c359b7249347e46fb28804470d071c921156ad62b3eef5d34e2ba867533dec8" dependencies = [ "byteorder", "digest 0.9.0", - "rand_core", + "rand_core 0.6.4", "subtle-ng", "zeroize", ] @@ -1618,9 +1906,9 @@ dependencies = [ [[package]] name = "deadpool" -version = "0.12.1" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6541a3916932fe57768d4be0b1ffb5ec7cbf74ca8c903fdfd5c0fe8aa958f0ed" +checksum = "5ed5957ff93768adf7a65ab167a17835c3d2c3c50d084fe305174c112f468e2f" dependencies = [ "deadpool-runtime", "num_cpus", @@ -1680,7 +1968,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "unicode-xid", ] @@ -1713,7 +2001,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -1724,9 +2012,9 @@ checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" [[package]] name = "dyn-clone" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" +checksum = "feeef44e73baff3a26d371801df019877a9866a8c493d315ab00177843314f35" [[package]] name = "ecdsa" @@ -1760,7 +2048,7 @@ checksum = "3c8465edc8ee7436ffea81d21a019b16676ee3db267aa8d5a8d729581ecf998b" dependencies = [ "curve25519-dalek-ng", "hex", - "rand_core", + "rand_core 0.6.4", "sha2 0.9.9", "zeroize", ] @@ -1775,7 +2063,7 @@ dependencies = [ "ed25519", "hashbrown 0.14.5", "hex", - "rand_core", + "rand_core 0.6.4", "sha2 0.10.8", "zeroize", ] @@ -1799,7 +2087,7 @@ dependencies = [ "generic-array", "group", "pkcs8", - "rand_core", + "rand_core 0.6.4", "sec1", "subtle", "zeroize", @@ -1834,16 +2122,18 @@ dependencies = [ name = "eth-trigger-weather" version = "0.1.0" dependencies = [ - "alloy-contract 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-contract 0.9.2", + "alloy-primitives", "alloy-sol-macro", "alloy-sol-types", "anyhow", "layer-climb", - "layer-wasi", "reqwest", "serde", "serde_json", - "wit-bindgen-rt 0.37.0", + "wavs-wasi-chain", + "wit-bindgen", + "wit-bindgen-rt 0.38.0", "wstd", ] @@ -1891,7 +2181,7 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" dependencies = [ - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -1908,7 +2198,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" dependencies = [ "byteorder", - "rand", + "rand 0.8.5", "rustc-hex", "static_assertions", ] @@ -1919,7 +2209,6 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c606d892c9de11507fa0dcffc116434f94e105d0bbdc4e405b61519464c49d7b" dependencies = [ - "eyre", "paste", ] @@ -2021,7 +2310,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -2094,6 +2383,20 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "getrandom" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a49c392881ce6d5c3b8cb70f98717b7c07aabbdff06687b9030dbfbe2725f8" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi 0.13.3+wasi-0.2.2", + "wasm-bindgen", + "windows-targets", +] + [[package]] name = "gimli" version = "0.31.1" @@ -2125,7 +2428,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ "ff", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -2257,9 +2560,9 @@ dependencies = [ [[package]] name = "httparse" -version = "1.9.5" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946" +checksum = "f2d708df4e7140240a16cd6ab0ab65c972d7433ab77819ea693fde9c43811e2a" [[package]] name = "httpdate" @@ -2269,9 +2572,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] name = "hyper" -version = "1.5.2" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "256fb8d4bd6413123cc9d91832d78325c48ff41677595be797d90f42969beae0" +checksum = "cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80" dependencies = [ "bytes", "futures-channel", @@ -2355,9 +2658,9 @@ dependencies = [ [[package]] name = "ibc-proto" -version = "0.49.1" +version = "0.51.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "694657ebe503dc1cb1c67ed5c7ca880479c026a37004808ee94505df5b0cbf60" +checksum = "9b70f517162e74e2d35875b8b94bf4d1e45f2c69ef3de452dc855944455d33ca" dependencies = [ "base64 0.22.1", "bytes", @@ -2367,7 +2670,7 @@ dependencies = [ "informalsystems-pbjson", "prost", "subtle-encoding", - "tendermint-proto 0.39.1", + "tendermint-proto", "tonic", ] @@ -2500,7 +2803,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -2547,7 +2850,7 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -2611,6 +2914,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.14" @@ -2627,21 +2939,6 @@ dependencies = [ "wasm-bindgen", ] -[[package]] -name = "jsonwebtoken" -version = "9.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ae10193d25051e74945f1ea2d0b42e03cc3b890f7e4cc5faa44997d808193f" -dependencies = [ - "base64 0.21.7", - "js-sys", - "pem", - "ring", - "serde", - "serde_json", - "simple_asn1", -] - [[package]] name = "k256" version = "0.13.4" @@ -2677,8 +2974,9 @@ dependencies = [ [[package]] name = "layer-climb" -version = "0.3.3" -source = "git+https://github.com/Lay3rLabs/climb?tag=v0.3.3#7be72a07f6878c25dfd194b8a5470eb225904d6e" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ca54182f5d19ff84eca02303615e40e2ff63a5938ff9997b96f2d6d59e03923" dependencies = [ "layer-climb-address", "layer-climb-config", @@ -2688,8 +2986,9 @@ dependencies = [ [[package]] name = "layer-climb-address" -version = "0.3.3" -source = "git+https://github.com/Lay3rLabs/climb?tag=v0.3.3#7be72a07f6878c25dfd194b8a5470eb225904d6e" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cff156dbee7aa712a81c1d9c7cf6aa30eadc11db5b726a06e3a144f1ea75dafb" dependencies = [ "alloy-primitives", "anyhow", @@ -2704,19 +3003,17 @@ dependencies = [ "layer-climb-proto", "log", "serde", - "serde-wasm-bindgen", "signature", "subtle-encoding", - "tendermint 0.39.1", - "thiserror 1.0.69", - "wasm-bindgen", - "wasm-bindgen-futures", + "tendermint", + "thiserror 2.0.11", ] [[package]] name = "layer-climb-config" -version = "0.3.3" -source = "git+https://github.com/Lay3rLabs/climb?tag=v0.3.3#7be72a07f6878c25dfd194b8a5470eb225904d6e" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acb7a23d050ebf199092d1d60de77d19e72fd874725f40d39729c00dfa69f8e9" dependencies = [ "anyhow", "serde", @@ -2725,8 +3022,9 @@ dependencies = [ [[package]] name = "layer-climb-core" -version = "0.3.3" -source = "git+https://github.com/Lay3rLabs/climb?tag=v0.3.3#7be72a07f6878c25dfd194b8a5470eb225904d6e" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a26632d133a575a01ca6aaf06944c6fad3b77db29008f14bf6c5253911b5550" dependencies = [ "anyhow", "async-trait", @@ -2737,65 +3035,43 @@ dependencies = [ "deadpool", "futures", "futures-timer", - "getrandom", + "getrandom 0.3.1", "hex", + "http", + "http-body", + "http-body-util", + "httparse", "layer-climb-address", "layer-climb-config", "layer-climb-proto", "log", - "rand", + "rand 0.9.0", "reqwest", "serde", "serde_json", - "tendermint 0.39.1", - "tendermint-rpc 0.39.1", - "thiserror 1.0.69", + "tendermint", + "tendermint-rpc", + "thiserror 2.0.11", "tokio", "toml", "tonic", "tonic-web-wasm-client", + "tower-service", "tracing", + "wstd", ] [[package]] name = "layer-climb-proto" -version = "0.3.3" -source = "git+https://github.com/Lay3rLabs/climb?tag=v0.3.3#7be72a07f6878c25dfd194b8a5470eb225904d6e" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ca3c6288380d3ac8db3d4392f51092ed218904dff929c4b0dd988b8bdffd665" dependencies = [ "anyhow", "cosmos-sdk-proto", "ibc-proto", - "tendermint-proto 0.39.1", - "thiserror 1.0.69", -] - -[[package]] -name = "layer-wasi" -version = "0.1.0" -dependencies = [ - "alloy-json-rpc 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-primitives", - "alloy-provider 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-rpc-client 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-rpc-types", - "alloy-sol-types", - "alloy-transport 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "alloy-transport-http 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "anyhow", - "async-trait", - "cfg-if", - "cosmwasm-std", - "layer-climb", - "serde", - "serde_json", - "tendermint 0.40.1", - "tendermint-rpc 0.40.1", - "tower-service", - "url", - "wasi 0.13.3+wasi-0.2.2", - "wit-bindgen", - "wit-bindgen-rt 0.37.0", - "wstd", + "tendermint-proto", + "thiserror 2.0.11", ] [[package]] @@ -2859,6 +3135,15 @@ dependencies = [ "hashbrown 0.15.2", ] +[[package]] +name = "lru" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "227748d55f2f0ab4735d87fd623798cb6b664512fe979705f829c9f81c934465" +dependencies = [ + "hashbrown 0.15.2", +] + [[package]] name = "matchit" version = "0.7.3" @@ -2899,9 +3184,9 @@ dependencies = [ [[package]] name = "native-tls" -version = "0.2.12" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466" +checksum = "0dab59f8e050d5df8e4dd87d9206fb6f65a483e20ac9fda365ade4fab353196c" dependencies = [ "libc", "log", @@ -2976,7 +3261,7 @@ checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3003,9 +3288,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.2" +version = "1.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" +checksum = "945462a4b81e43c4e3ba96bd7b49d834c6f61198356aa858733bc4acf3cbe62e" [[package]] name = "opaque-debug" @@ -3015,9 +3300,9 @@ checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] name = "openssl" -version = "0.10.68" +version = "0.10.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6174bc48f102d208783c2c84bf931bb75927a617866870de8a4ea85597f871f5" +checksum = "61cfb4e166a8bb8c9b55c500bc2308550148ece889be90f609377e58140f42c6" dependencies = [ "bitflags", "cfg-if", @@ -3036,7 +3321,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3047,9 +3332,9 @@ checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" [[package]] name = "openssl-sys" -version = "0.9.104" +version = "0.9.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" +checksum = "8b22d5b84be05a8d6947c7cb71f7c849aa0f112acd4bf51c2a7c1c988ac0a9dc" dependencies = [ "cc", "libc", @@ -3071,28 +3356,30 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "3.6.12" +version = "3.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "306800abfa29c7f16596b5970a588435e3d5b3149683d00c12b699cc19f895ee" +checksum = "c9fde3d0718baf5bc92f577d652001da0f8d54cd03a7974e118d04fc888dc23d" dependencies = [ "arrayvec", "bitvec", "byte-slice-cast", + "const_format", "impl-trait-for-tuples", "parity-scale-codec-derive", + "rustversion", "serde", ] [[package]] name = "parity-scale-codec-derive" -version = "3.6.12" +version = "3.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d830939c76d294956402033aee57a6da7b438f2294eb94864c37b0569053a42c" +checksum = "581c837bb6b9541ce7faa9377c20616e4fb7650f6b0f68bc93c827ee504fb7b3" dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.98", ] [[package]] @@ -3151,16 +3438,6 @@ version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e3aeb8f54c078314c2065ee649a7241f46b9d8e418e1a9581ba0546657d7aa3a" -[[package]] -name = "pem" -version = "3.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" -dependencies = [ - "base64 0.22.1", - "serde", -] - [[package]] name = "percent-encoding" version = "2.3.1" @@ -3180,22 +3457,22 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e2ec53ad785f4d35dac0adea7f7dc6f1bb277ad84a680c7afefeae05d1f5916" +checksum = "dfe2e71e1471fe07709406bf725f710b02927c9c54b2b5b2ec0e8087d97c327d" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.8" +version = "1.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d56a66c0c55993aa927429d0f8a0abfd74f084e4d9c192cffed01e418d83eefb" +checksum = "f6e859e6e5bd50440ab63c47e3ebabc90f26251f7c73c3d3e837b74a1cc3fa67" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3238,7 +3515,7 @@ version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" dependencies = [ - "zerocopy", + "zerocopy 0.7.35", ] [[package]] @@ -3248,7 +3525,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6924ced06e1f7dfe3fa48d57b9f74f55d8915f5036121bef647ef4b204895fac" dependencies = [ "proc-macro2", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3299,7 +3576,7 @@ dependencies = [ "proc-macro-error-attr2", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3322,8 +3599,8 @@ dependencies = [ "bitflags", "lazy_static", "num-traits", - "rand", - "rand_chacha", + "rand 0.8.5", + "rand_chacha 0.3.1", "rand_xorshift", "regex-syntax", "rusty-fork", @@ -3351,7 +3628,7 @@ dependencies = [ "itertools 0.13.0", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3382,11 +3659,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", - "rand_chacha", - "rand_core", + "rand_chacha 0.3.1", + "rand_core 0.6.4", "serde", ] +[[package]] +name = "rand" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3779b94aeb87e8bd4e834cee3650289ee9e0d5677f976ecdb6d219e5f4f6cd94" +dependencies = [ + "rand_chacha 0.9.0", + "rand_core 0.9.0", + "zerocopy 0.8.17", +] + [[package]] name = "rand_chacha" version = "0.3.1" @@ -3394,7 +3682,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_chacha" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" +dependencies = [ + "ppv-lite86", + "rand_core 0.9.0", ] [[package]] @@ -3403,7 +3701,17 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom", + "getrandom 0.2.15", +] + +[[package]] +name = "rand_core" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b08f3c9802962f7e1b25113931d94f43ed9725bebc59db9d0c3e9a23b67e15ff" +dependencies = [ + "getrandom 0.3.1", + "zerocopy 0.8.17", ] [[package]] @@ -3412,7 +3720,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" dependencies = [ - "rand_core", + "rand_core 0.6.4", ] [[package]] @@ -3512,7 +3820,7 @@ checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" dependencies = [ "cc", "cfg-if", - "getrandom", + "getrandom 0.2.15", "libc", "spin", "untrusted", @@ -3578,7 +3886,7 @@ dependencies = [ "parity-scale-codec", "primitive-types", "proptest", - "rand", + "rand 0.8.5", "rlp", "ruint-macro", "serde", @@ -3600,9 +3908,9 @@ checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" [[package]] name = "rustc-hash" -version = "2.1.0" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7fb8039b3032c191086b10f11f319a6e99e1e82889c5cc6046f515c9db1d497" +checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" [[package]] name = "rustc-hex" @@ -3643,9 +3951,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.21" +version = "0.23.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f287924602bf649d949c63dc8ac8b235fa5387d394020705b80c4eb597ce5b8" +checksum = "9fb9263ab4eb695e42321db096e3b8fbd715a59b154d5c88d82db2175b681ba7" dependencies = [ "log", "once_cell", @@ -3679,9 +3987,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.10.1" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2bf47e6ff922db3825eb750c4e2ff784c6ff8fb9e13046ef6a1d1c5401b0b37" +checksum = "917ce264624a4b4db1c364dcc35bfca9ded014d0a958cd47ad3e960e988ea51c" [[package]] name = "rustls-webpki" @@ -3714,9 +4022,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.18" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" +checksum = "6ea1a2d0a644769cc99faa24c3ad26b379b786fe7c36fd3c546254801650e6dd" [[package]] name = "same-file" @@ -3757,7 +4065,7 @@ dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3791,6 +4099,24 @@ dependencies = [ "zeroize", ] +[[package]] +name = "secp256k1" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25996b82292a7a57ed3508f052cfff8640d38d32018784acd714758b43da9c8f" +dependencies = [ + "secp256k1-sys", +] + +[[package]] +name = "secp256k1-sys" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70a129b9e9efbfb223753b9163c4ab3b13cff7fd9c7f010fbac25ab4099fa07e" +dependencies = [ + "cc", +] + [[package]] name = "security-framework" version = "2.11.1" @@ -3875,17 +4201,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde-wasm-bindgen" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8302e169f0eddcc139c70f139d19d6467353af16f9fce27e8c30158036a1e16b" -dependencies = [ - "js-sys", - "serde", - "wasm-bindgen", -] - [[package]] name = "serde_bytes" version = "0.11.15" @@ -3903,7 +4218,7 @@ checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -3914,14 +4229,14 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] name = "serde_json" -version = "1.0.137" +version = "1.0.138" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "930cfb6e6abf99298aaad7d29abbef7a9999a9a8806a40088f55f0dcec03146b" +checksum = "d434192e7da787e94a6ea7e9670b26a036d0ca41e0b7efb2676dd32bae872949" dependencies = [ "itoa", "memchr", @@ -3937,7 +4252,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4018,19 +4333,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" dependencies = [ "digest 0.10.7", - "rand_core", -] - -[[package]] -name = "simple_asn1" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "297f631f50729c8c99b84667867963997ec0b50f32b2a7dbcab828ef0541e8bb" -dependencies = [ - "num-bigint", - "num-traits", - "thiserror 2.0.11", - "time", + "rand_core 0.6.4", ] [[package]] @@ -4117,7 +4420,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4154,9 +4457,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.96" +version = "2.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80" +checksum = "36147f1a48ae0ec2b5b3bc5b537d267457555a10dc06f3dbc8cb11ba3006d3b1" dependencies = [ "proc-macro2", "quote", @@ -4165,14 +4468,14 @@ dependencies = [ [[package]] name = "syn-solidity" -version = "0.8.19" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b84e4d83a0a6704561302b917a932484e1cae2d8c6354c64be8b7bac1c1fe057" +checksum = "9c2de690018098e367beeb793991c7d4dc7270f42c9d2ac4ccc876c1368ca430" dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4192,7 +4495,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4224,48 +4527,18 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tempfile" -version = "3.15.0" +version = "3.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a8a559c81686f576e8cd0290cd2a24a2a9ad80c98b3478856500fcbd7acd704" +checksum = "38c246215d7d24f48ae091a2902398798e05d978b24315d6efbc00ede9a8bb91" dependencies = [ "cfg-if", "fastrand", - "getrandom", + "getrandom 0.3.1", "once_cell", "rustix", "windows-sys 0.59.0", ] -[[package]] -name = "tendermint" -version = "0.39.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f3afea7809ffaaf1e5d9c3c9997cb3a834df7e94fbfab2fad2bc4577f1cde41" -dependencies = [ - "bytes", - "digest 0.10.7", - "ed25519", - "ed25519-consensus", - "flex-error", - "futures", - "k256", - "num-traits", - "once_cell", - "prost", - "ripemd", - "serde", - "serde_bytes", - "serde_json", - "serde_repr", - "sha2 0.10.8", - "signature", - "subtle", - "subtle-encoding", - "tendermint-proto 0.39.1", - "time", - "zeroize", -] - [[package]] name = "tendermint" version = "0.40.1" @@ -4278,9 +4551,11 @@ dependencies = [ "ed25519-consensus", "flex-error", "futures", + "k256", "num-traits", "once_cell", "prost", + "ripemd", "serde", "serde_bytes", "serde_json", @@ -4289,25 +4564,11 @@ dependencies = [ "signature", "subtle", "subtle-encoding", - "tendermint-proto 0.40.1", + "tendermint-proto", "time", "zeroize", ] -[[package]] -name = "tendermint-config" -version = "0.39.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8add7b85b0282e5901521f78fe441956ac1e2752452f4e1f2c0ce7e1f10d485" -dependencies = [ - "flex-error", - "serde", - "serde_json", - "tendermint 0.39.1", - "toml", - "url", -] - [[package]] name = "tendermint-config" version = "0.40.1" @@ -4317,26 +4578,11 @@ dependencies = [ "flex-error", "serde", "serde_json", - "tendermint 0.40.1", + "tendermint", "toml", "url", ] -[[package]] -name = "tendermint-proto" -version = "0.39.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf3abf34ecf33125621519e9952688e7a59a98232d51538037ba21fbe526a802" -dependencies = [ - "bytes", - "flex-error", - "prost", - "serde", - "serde_bytes", - "subtle-encoding", - "time", -] - [[package]] name = "tendermint-proto" version = "0.40.1" @@ -4352,35 +4598,6 @@ dependencies = [ "time", ] -[[package]] -name = "tendermint-rpc" -version = "0.39.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9693f42544bf3b41be3cbbfa418650c86e137fb8f5a57981659a84b677721ecf" -dependencies = [ - "async-trait", - "bytes", - "flex-error", - "getrandom", - "peg", - "pin-project", - "rand", - "semver 1.0.25", - "serde", - "serde_bytes", - "serde_json", - "subtle", - "subtle-encoding", - "tendermint 0.39.1", - "tendermint-config 0.39.1", - "tendermint-proto 0.39.1", - "thiserror 1.0.69", - "time", - "url", - "uuid", - "walkdir", -] - [[package]] name = "tendermint-rpc" version = "0.40.1" @@ -4390,19 +4607,19 @@ dependencies = [ "async-trait", "bytes", "flex-error", - "getrandom", + "getrandom 0.2.15", "peg", "pin-project", - "rand", + "rand 0.8.5", "semver 1.0.25", "serde", "serde_bytes", "serde_json", "subtle", "subtle-encoding", - "tendermint 0.40.1", - "tendermint-config 0.40.1", - "tendermint-proto 0.40.1", + "tendermint", + "tendermint-config", + "tendermint-proto", "thiserror 1.0.69", "time", "url", @@ -4436,7 +4653,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4447,7 +4664,7 @@ checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4466,7 +4683,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21" dependencies = [ "deranged", - "itoa", "num-conv", "powerfmt", "serde", @@ -4548,7 +4764,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4598,9 +4814,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.19" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" +checksum = "cd87a5cdd6ffab733b2f74bc4fd7ee5fff6634124999ac278c35fc78c6120148" dependencies = [ "serde", "serde_spanned", @@ -4619,9 +4835,9 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.22.22" +version = "0.22.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" +checksum = "02a8b472d1a3d7c18e2d61a489aee3453fd9031c33e4f55bd533f4a7adca1bee" dependencies = [ "indexmap 2.7.1", "serde", @@ -4666,9 +4882,9 @@ dependencies = [ [[package]] name = "tonic-web-wasm-client" -version = "0.6.0" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef5ca6e7bdd0042c440d36b6df97c1436f1d45871ce18298091f114004b1beb4" +checksum = "c191f6613df48874158b6af303313eadf25d1b7a534216b62a1f049d77cd2711" dependencies = [ "base64 0.22.1", "byteorder", @@ -4700,7 +4916,7 @@ dependencies = [ "indexmap 1.9.3", "pin-project", "pin-project-lite", - "rand", + "rand 0.8.5", "slab", "tokio", "tokio-util", @@ -4755,7 +4971,7 @@ checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -4805,9 +5021,9 @@ checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" [[package]] name = "unicode-ident" -version = "1.0.15" +version = "1.0.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11cd88e12b17c6494200a9c1b683a04fcac9573ed74cd1b62aeb2727c5592243" +checksum = "a210d160f08b701c8721ba1c726c11662f877ea6b7094007e1ca9a1041945034" [[package]] name = "unicode-normalization" @@ -4855,9 +5071,9 @@ checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" [[package]] name = "uuid" -version = "1.12.1" +version = "1.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3758f5e68192bb96cc8f9b7e2c2cfdabb435499a28499a42f8f984092adad4b" +checksum = "ced87ca4be083373936a67f8de945faa23b6b42384bd5b64434850802c6dccd0" [[package]] name = "valuable" @@ -4879,9 +5095,9 @@ checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] name = "wait-timeout" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" +checksum = "09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11" dependencies = [ "libc", ] @@ -4920,6 +5136,15 @@ dependencies = [ "wit-bindgen-rt 0.33.0", ] +[[package]] +name = "wasi" +version = "0.14.1+wasi-0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad7df608df60a1c33e247881838b0f809512086e3e3bb1c18323b77eeb1f844e" +dependencies = [ + "wit-bindgen-rt 0.39.0", +] + [[package]] name = "wasm-bindgen" version = "0.2.100" @@ -4942,7 +5167,7 @@ dependencies = [ "log", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "wasm-bindgen-shared", ] @@ -4977,7 +5202,7 @@ checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -4993,9 +5218,9 @@ dependencies = [ [[package]] name = "wasm-encoder" -version = "0.223.0" +version = "0.224.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e636076193fa68103e937ac951b5f2f587624097017d764b8984d9c0f149464" +checksum = "1ab7a13a23790fe91ea4eb7526a1f3131001d874e3e00c2976c48861f2e82920" dependencies = [ "leb128", "wasmparser", @@ -5003,9 +5228,9 @@ dependencies = [ [[package]] name = "wasm-metadata" -version = "0.223.0" +version = "0.224.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c730c3379d3d20e5a0245b0724b924483e853588ca8fba547c1e21f19e7d735" +checksum = "c93c9e49fa2749be3c5ab28ad4be03167294915cd3b2ded3f04f760cef5cfb86" dependencies = [ "anyhow", "indexmap 2.7.1", @@ -5033,9 +5258,9 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.223.0" +version = "0.224.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5a99faceb1a5a84dd6084ec4bfa4b2ab153b5793b43fd8f58b89232634afc35" +checksum = "04f17a5917c2ddd3819e84c661fae0d6ba29d7b9c1f0e96c708c65a9c4188e11" dependencies = [ "bitflags", "hashbrown 0.15.2", @@ -5057,6 +5282,31 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "wavs-wasi-chain" +version = "0.3.0-alpha3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ecbd58a7784af9529bbeb97f4fc9230635093909c4ecb7ac42b8734542894e1" +dependencies = [ + "alloy-json-rpc 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-primitives", + "alloy-provider 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-rpc-client 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-sol-types", + "alloy-transport 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "alloy-transport-http 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", + "anyhow", + "async-trait", + "cfg-if", + "futures-utils-wasm", + "serde", + "serde_json", + "tower-service", + "wasi 0.14.1+wasi-0.2.3", + "wit-bindgen-rt 0.39.0", + "wstd", +] + [[package]] name = "web-sys" version = "0.3.77" @@ -5069,9 +5319,9 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.26.7" +version = "0.26.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d642ff16b7e79272ae451b7322067cdc17cadf68c23264be9d94a32319efe7e" +checksum = "2210b291f7ea53617fbafcc4939f10914214ec15aace5ba62293a668f322c5c9" dependencies = [ "rustls-pki-types", ] @@ -5199,28 +5449,28 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.6.24" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8d71a593cc5c42ad7876e2c1fda56f314f3754c084128833e64f1345ff8a03a" +checksum = "59690dea168f2198d1a3b0cac23b8063efcd11012f10ae4698f284808c8ef603" dependencies = [ "memchr", ] [[package]] name = "wit-bindgen" -version = "0.37.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9219694564701fa935754f1552ce299154fc74948d6d148134ce55f3504c8bf1" +checksum = "b550e454e4cce8984398539a94a0226511e1f295b14afdc8f08b4e2e2ff9de3a" dependencies = [ - "wit-bindgen-rt 0.37.0", + "wit-bindgen-rt 0.38.0", "wit-bindgen-rust-macro", ] [[package]] name = "wit-bindgen-core" -version = "0.37.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ba105733ba146c94e067793fb46505265ea8720eb14ceae65b10797c7728a65" +checksum = "70e2f98d49960a416074c5d72889f810ed3032a32ffef5e4760094426fefbfe8" dependencies = [ "anyhow", "heck", @@ -5238,9 +5488,20 @@ dependencies = [ [[package]] name = "wit-bindgen-rt" -version = "0.37.0" +version = "0.38.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed6f8d372a2d4a1227f2556e051cc24b2a5f15768d53451c84ff91e2527139e3" +dependencies = [ + "bitflags", + "futures", + "once_cell", +] + +[[package]] +name = "wit-bindgen-rt" +version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc801b991c56492f87ab3086e786468f75c285a4d73017ab0ebc2fa1aed5d82c" +checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" dependencies = [ "bitflags", "futures", @@ -5249,15 +5510,15 @@ dependencies = [ [[package]] name = "wit-bindgen-rust" -version = "0.37.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "257e0d217bc06635837d751447c39e77b9901752e052288ff6fe0fdb17850bc5" +checksum = "1cc49091f84e4f2ace078bbc86082b57e667b9e789baece4b1184e0963382b6e" dependencies = [ "anyhow", "heck", "indexmap 2.7.1", "prettyplease", - "syn 2.0.96", + "syn 2.0.98", "wasm-metadata", "wit-bindgen-core", "wit-component", @@ -5265,24 +5526,24 @@ dependencies = [ [[package]] name = "wit-bindgen-rust-macro" -version = "0.37.0" +version = "0.38.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ac98caa9302234687b8e67ce7dfcf31ae5238523f166b93c23988fd0d4e0594" +checksum = "3545a699dc9d72298b2064ce71b771fc10fc6b757d29306b1e54a4283a75abba" dependencies = [ "anyhow", "prettyplease", "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "wit-bindgen-core", "wit-bindgen-rust", ] [[package]] name = "wit-component" -version = "0.223.0" +version = "0.224.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c10ed2aeee4c8ec5715875f62f4a3de3608d6987165c116810d8c2908aa9d93b" +checksum = "923637fe647372efbbb654757f8c884ba280924477e1d265eca7e35d4cdcea8b" dependencies = [ "anyhow", "bitflags", @@ -5299,9 +5560,9 @@ dependencies = [ [[package]] name = "wit-parser" -version = "0.223.0" +version = "0.224.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92772f4dcacb804b275981eea1d920b12b377993b53307f1e33d87404e080281" +checksum = "e3477d8d0acb530d76beaa8becbdb1e3face08929db275f39934963eb4f716f8" dependencies = [ "anyhow", "id-arena", @@ -5329,13 +5590,27 @@ checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" [[package]] name = "wstd" -version = "0.4.0" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "159bdbe25114f4549900a9ba7170f3604c10b76c76bb58bbb61767b27773f844" +checksum = "26293c0587d2203a141282311221f9ba0048425a04b21d9fcff8fc62fc8ecd75" dependencies = [ + "futures-core", + "http", + "itoa", + "pin-project-lite", "slab", - "url", - "wasi 0.13.3+wasi-0.2.2", + "wasi 0.14.1+wasi-0.2.3", + "wstd-macro", +] + +[[package]] +name = "wstd-macro" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75a8316f91fc3e508b03fdc979dec4ceeddb29744fc1c2c2ed825e00159f96f9" +dependencies = [ + "quote", + "syn 2.0.98", ] [[package]] @@ -5367,7 +5642,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "synstructure", ] @@ -5378,7 +5653,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ "byteorder", - "zerocopy-derive", + "zerocopy-derive 0.7.35", +] + +[[package]] +name = "zerocopy" +version = "0.8.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa91407dacce3a68c56de03abe2760159582b846c6a4acd2f456618087f12713" +dependencies = [ + "zerocopy-derive 0.8.17", ] [[package]] @@ -5389,7 +5673,18 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", +] + +[[package]] +name = "zerocopy-derive" +version = "0.8.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06718a168365cad3d5ff0bb133aad346959a2074bd4a85c121255a11304a8626" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.98", ] [[package]] @@ -5409,7 +5704,7 @@ checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", "synstructure", ] @@ -5430,7 +5725,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] [[package]] @@ -5452,5 +5747,5 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.96", + "syn 2.0.98", ] diff --git a/Cargo.toml b/Cargo.toml index 744a9c3e..2e924c12 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,32 +17,38 @@ rust-version = "1.80.0" [workspace.dependencies] bindings = { path = "crates/bindings" } -wit-bindgen-rt = {version = "0.37.0", features = ["bitflags"]} -wstd = "0.4.0" + +# WASI +wit-bindgen-rt = {version = "0.38.0", features = ["bitflags"]} +wit-bindgen = "0.38.0" +wstd = "0.5.0" +wasi = "0.13.3" +wavs-wasi-chain = "0.3.0-alpha3" + +# Other serde = { version = "1.0.211", features = ["derive"] } serde_json = "1.0.127" -# layer WAVS imports -layer-wasi = { path = "./lib/WAVS/sdk/wasi" } -alloy-contract = "0.9.2" -alloy-json-rpc = "0.9.2" -alloy-primitives = "0.8.15" -alloy-provider = "0.9.2" -alloy-rlp = {version = "0.3.10", features = ["derive"]} -alloy-rpc-client = "0.9.2" -alloy-rpc-types = "0.9.2" -alloy-sol-macro = { version = "0.8.15", features = ["json"]} -alloy-sol-types = "0.8.15" -alloy-transport = "0.9.2" -alloy-transport-http = "0.9.2" anyhow = "1.0.90" async-trait = "0.1.85" cfg-if = "1.0.0" cosmwasm-std = {version = "2.2.0", features = ["stargate"]} -layer-climb = { git = "https://github.com/Lay3rLabs/climb", tag = "v0.3.3" } +layer-climb = "0.3.7" tendermint = { version = "0.40.1", default-features = false} tendermint-rpc = "0.40.1" tower-service = "0.3.3" url = "2.5.3" -wasi = "0.13.3" wasmtime-wasi = { version = "24.0.0", default-features = true } -wit-bindgen = "0.37.0" +futures-utils-wasm = "0.1.0" + +## Alloy +# must match the crates/bindings/Cargo.toml & app/Cargo.toml value +alloy = { version = "0.11.0", features = ["full", "signer-mnemonic", "node-bindings"] } +alloy-contract = "0.9.2" +alloy-sol-macro = { version = "0.8.15", features = ["json"]} +alloy-primitives = {version = "0.8.20", features = ["serde"]} +alloy-sol-types = "0.8.20" +alloy-json-rpc = "0.11.0" +alloy-provider = "0.11.0" +alloy-transport-http = "0.11.0" +alloy-transport = "0.11.0" +alloy-rpc-client = "0.11.0" diff --git a/Makefile b/Makefile index 379f4e16..6074dc21 100644 --- a/Makefile +++ b/Makefile @@ -10,7 +10,7 @@ CARGO=cargo bindings: _build_forge # Generate new bindings @forge bind --bindings-path ./crates/bindings --crate-name bindings --overwrite \ - --alloy --alloy-version v0.9.2 + --alloy --alloy-version v0.11.0 @$(CARGO) fmt --manifest-path ./crates/bindings/Cargo.toml ## build: building the project @@ -34,6 +34,9 @@ update-submodules: clean: clean-docker @forge clean @$(CARGO) clean + @rm -rf cache + @rm -rf out + @rm -rf broadcast ## clean-docker: remove unused docker containers clean-docker: @@ -55,6 +58,7 @@ setup: ## start-all: starting anvil and WAVS with docker compose start-all: clean-docker + @rm .docker/cli/*.json || true @trap 'kill $(jobs -pr)' EXIT # running anvil out of compose is a temp work around for MacOS @anvil & diff --git a/README.md b/README.md index 40b1affa..b54e5635 100644 --- a/README.md +++ b/README.md @@ -24,8 +24,8 @@ forge init --template Lay3rLabs/wavs-foundry-template my-wavs ### Solidity ```bash -# Initialize the submodule dependencies -forge install +# Initialize the dependencies +forge install && npm install # Build the contracts forge build @@ -52,7 +52,10 @@ make test ```bash # MacOS: if you get permission errors: eval `ssh-agent -s` && ssh-add -(cd lib/WAVS; cargo install --path ./packages/cli) +# (cd lib/WAVS; cargo install --path ./packages/cli) +# (cd lib/WAVS; just docker-build) + +docker cp $(docker create --name tc ghcr.io/lay3rlabs/wavs:0.3.0-alpha5-amd64):/usr/local/bin/wavs-cli ~/.cargo/bin/wavs-cli && docker rm tc ``` ### Start Anvil, WAVS, and Deploy Eigenlayer @@ -74,27 +77,20 @@ make start-all ### Upload your WAVS Service Manager ```bash +# Deploy service-manager +sudo chmod 0666 .docker/cli/deployments.json +wavs-cli deploy-eigen-service-manager --data ./.docker/cli +export SERVICE_MANAGER=`jq -r '.eigen_service_managers.local | .[-1]' .docker/cli/deployments.json` + # Deploy export FOUNDRY_ANVIL_PRIVATE_KEY=0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80 -forge script ./script/WavsSubmit.s.sol --rpc-url http://localhost:8545 --broadcast +forge script ./script/Deploy.s.sol ${SERVICE_MANAGER} --sig "run(string)" --rpc-url http://localhost:8545 --broadcast # Grab deployed service manager from script file output export SERVICE_HANDLER_ADDR=`jq -r '.service_handler' "./.docker/cli/script_deploy.json"` echo "Service Handler Addr: $SERVICE_HANDLER_ADDR" export TRIGGER_ADDR=`jq -r '.trigger' "./.docker/cli/script_deploy.json"`; echo "Trigger Addr: $TRIGGER_ADDR" - -# add read-write access -sudo chmod 0666 .docker/cli/deployments.json - -wavs-cli deploy-eigen-service-manager --data ./.docker/cli --service-handler ${SERVICE_HANDLER_ADDR} -export SERVICE_MANAGER=0x0e801d84fa97b50751dbf25036d067dcf18858bf - -# Set the service manager in the service handler -# - handleAddPayload can only be called by onlyServiceManager -# - add-task requires to getServiceManager() from the contract to deploy -cast send ${SERVICE_HANDLER_ADDR} "setServiceManager(address)" ${SERVICE_MANAGER} --rpc-url http://localhost:8545 --private-key $FOUNDRY_ANVIL_PRIVATE_KEY -# cast call ${SERVICE_HANDLER_ADDR} "getServiceManager()(address)" --rpc-url http://localhost:8545 ``` ### Build WASI components @@ -115,18 +111,16 @@ make wasi-build # Contract trigger function signature to listen for trigger_event=$(cast sig-event "NewTrigger(bytes)"); echo "Trigger Event: $trigger_event" -service_info=`wavs-cli deploy-service --log-level=error --data ./.docker/cli --component $(pwd)/compiled/eth_trigger_weather.wasm \ +wavs-cli deploy-service --log-level=error --quiet-results=false --data ./.docker/cli --component $(pwd)/compiled/eth_trigger_weather.wasm \ --trigger-event-name ${trigger_event:2} \ --trigger eth-contract-event \ --trigger-address ${TRIGGER_ADDR} \ - --submit-address ${SERVICE_MANAGER} \ - --service-config '{"fuelLimit":100000000,"maxGas":5000000,"hostEnvs":["WAVS_ENV_OPEN_WEATHER_API_KEY"],"kv":[],"workflowId":"default","componentId":"default"}'` + --submit-address ${SERVICE_HANDLER_ADDR} \ + --service-config '{"fuel_limit":100000000,"max_gas":5000000,"host_envs":["WAVS_ENV_OPEN_WEATHER_API_KEY"],"kv":[],"workflow_id":"default","component_id":"default"}' -echo "Service info: $service_info" # Submit AVS request -> chain -SERVICE_ID=`echo $service_info | jq -r .service[0]`; echo "Service ID: $SERVICE_ID" -wavs-cli add-task --input "Nashville,TN" --data ./.docker/cli --service-id ${SERVICE_ID} +cast send ${TRIGGER_ADDR} "addTrigger(bytes)" `cast format-bytes32-string Nashville,TN` --rpc-url http://localhost:8545 --private-key $FOUNDRY_ANVIL_PRIVATE_KEY # Grab data from the contract directly hex_bytes=$(cast decode-abi "getData(uint64)(bytes)" `cast call ${SERVICE_HANDLER_ADDR} "getData(uint64)" 1`) diff --git a/aggregator.toml b/aggregator.toml new file mode 100644 index 00000000..2dfecd9c --- /dev/null +++ b/aggregator.toml @@ -0,0 +1,18 @@ +# the allowed cors origins. Default is empty list. +cors_allowed_origins = [ + "https://lay3rlabs.github.io/*", + "http://localhost:*", + "http://127.0.0.1:*", +] + +# the directory to store the data. Default is "/var/wavs-aggregator" +# data = "~/wavs/aggregator" + +chain = "local" + +[chains.eth.local] +chain_id = "31337" +ws_endpoint = "ws://localhost:8545" +http_endpoint = "http://localhost:8545" + +tasks_quorum = 1 diff --git a/app/Cargo.toml b/app/Cargo.toml index e8a05816..e19501c8 100644 --- a/app/Cargo.toml +++ b/app/Cargo.toml @@ -8,6 +8,6 @@ edition = "2021" [dependencies] bindings.workspace = true # must match the crates/bindings/Cargo.toml value -alloy = { git = "https://github.com/alloy-rs/alloy", rev = "v0.9.2", features = ["sol-types", "contract"] } +alloy = { git = "https://github.com/alloy-rs/alloy", rev = "v0.11.0", features = ["sol-types", "contract"] } eyre = "0.6" tokio = { version = "1.19", features = ["macros", "rt-multi-thread"] } diff --git a/app/src/main.rs b/app/src/main.rs index 511b21b8..ea11c139 100644 --- a/app/src/main.rs +++ b/app/src/main.rs @@ -3,7 +3,7 @@ use alloy::{ primitives::Address, providers::{Provider, ProviderBuilder}, }; -use bindings::wavssubmit::WavsSubmit; +use bindings::simplesubmit::SimpleSubmit; use eyre::Result; #[tokio::main] @@ -20,8 +20,8 @@ async fn main() -> Result<()> { println!("Block: {:?}", block); // TODO: update me with your contract! - let contract_address = "0x851356ae760d987E095750cCeb3bC6014560891C".parse::
()?; - let contract = WavsSubmit::new(contract_address, provider.clone()); + let contract_address = "0x36c02da8a0983159322a80ffe9f24b1acff8b570".parse::
()?; + let contract = SimpleSubmit::new(contract_address, provider.clone()); let resp = contract.getData(1).call().await?; diff --git a/components/eth-trigger-weather/Cargo.toml b/components/eth-trigger-weather/Cargo.toml index eb8fa3c3..84b18b2e 100644 --- a/components/eth-trigger-weather/Cargo.toml +++ b/components/eth-trigger-weather/Cargo.toml @@ -7,17 +7,19 @@ rust-version.workspace = true repository.workspace = true [dependencies] -wit-bindgen-rt = { workspace = true } -layer-wasi = { workspace = true } +wit-bindgen = { workspace = true } +wit-bindgen-rt = {workspace = true} +wavs-wasi-chain = { workspace = true } serde = { workspace = true } serde_json = { workspace = true } -reqwest = { version = "0.12.9", features = ["json"] } +reqwest = { version = "0.12.12", features = ["json"] } alloy-sol-macro = { workspace = true } wstd = { workspace = true } layer-climb = { workspace = true } alloy-sol-types = { workspace = true } anyhow = { workspace = true } alloy-contract = { workspace = true } +alloy-primitives = {workspace = true} [lib] crate-type = ["cdylib"] @@ -31,3 +33,4 @@ lto = true [package.metadata.component] package = "component:eth-trigger-weather" +target = "wavs:worker/layer-trigger-world@0.3.0-alpha2" diff --git a/components/eth-trigger-weather/src/bindings.rs b/components/eth-trigger-weather/src/bindings.rs new file mode 100644 index 00000000..70c4317c --- /dev/null +++ b/components/eth-trigger-weather/src/bindings.rs @@ -0,0 +1,881 @@ +pub type TriggerAction = wavs::worker::layer_types::TriggerAction; +#[doc(hidden)] +#[allow(non_snake_case)] +pub unsafe fn _export_run_cabi(arg0: *mut u8) -> *mut u8 { + #[cfg(target_arch = "wasm32")] _rt::run_ctors_once(); + let l0 = *arg0.add(0).cast::<*mut u8>(); + let l1 = *arg0.add(4).cast::(); + let len2 = l1; + let bytes2 = _rt::Vec::from_raw_parts(l0.cast(), len2, len2); + let l3 = *arg0.add(8).cast::<*mut u8>(); + let l4 = *arg0.add(12).cast::(); + let len5 = l4; + let bytes5 = _rt::Vec::from_raw_parts(l3.cast(), len5, len5); + let l6 = i32::from(*arg0.add(16).cast::()); + use wavs::worker::layer_types::TriggerSource as V26; + let v26 = match l6 { + 0 => { + let e26 = { + let l7 = *arg0.add(20).cast::<*mut u8>(); + let l8 = *arg0.add(24).cast::(); + let len9 = l8; + let l10 = *arg0.add(28).cast::<*mut u8>(); + let l11 = *arg0.add(32).cast::(); + let len12 = l11; + let bytes12 = _rt::Vec::from_raw_parts(l10.cast(), len12, len12); + let l13 = *arg0.add(36).cast::<*mut u8>(); + let l14 = *arg0.add(40).cast::(); + let len15 = l14; + wavs::worker::layer_types::TriggerSourceEthContractEvent { + address: wavs::worker::layer_types::EthAddress { + raw_bytes: _rt::Vec::from_raw_parts(l7.cast(), len9, len9), + }, + chain_name: _rt::string_lift(bytes12), + event_hash: _rt::Vec::from_raw_parts(l13.cast(), len15, len15), + } + }; + V26::EthContractEvent(e26) + } + 1 => { + let e26 = { + let l16 = *arg0.add(20).cast::<*mut u8>(); + let l17 = *arg0.add(24).cast::(); + let len18 = l17; + let bytes18 = _rt::Vec::from_raw_parts(l16.cast(), len18, len18); + let l19 = *arg0.add(28).cast::(); + let l20 = *arg0.add(32).cast::<*mut u8>(); + let l21 = *arg0.add(36).cast::(); + let len22 = l21; + let bytes22 = _rt::Vec::from_raw_parts(l20.cast(), len22, len22); + let l23 = *arg0.add(40).cast::<*mut u8>(); + let l24 = *arg0.add(44).cast::(); + let len25 = l24; + let bytes25 = _rt::Vec::from_raw_parts(l23.cast(), len25, len25); + wavs::worker::layer_types::TriggerSourceCosmosContractEvent { + address: wavs::worker::layer_types::CosmosAddress { + bech32_addr: _rt::string_lift(bytes18), + prefix_len: l19 as u32, + }, + chain_name: _rt::string_lift(bytes22), + event_type: _rt::string_lift(bytes25), + } + }; + V26::CosmosContractEvent(e26) + } + n => { + debug_assert_eq!(n, 2, "invalid enum discriminant"); + V26::Manual + } + }; + let l27 = i32::from(*arg0.add(48).cast::()); + use wavs::worker::layer_types::TriggerData as V67; + let v67 = match l27 { + 0 => { + let e67 = { + let l28 = *arg0.add(56).cast::<*mut u8>(); + let l29 = *arg0.add(60).cast::(); + let len30 = l29; + let l31 = *arg0.add(64).cast::<*mut u8>(); + let l32 = *arg0.add(68).cast::(); + let len33 = l32; + let bytes33 = _rt::Vec::from_raw_parts(l31.cast(), len33, len33); + let l34 = *arg0.add(72).cast::<*mut u8>(); + let l35 = *arg0.add(76).cast::(); + let base39 = l34; + let len39 = l35; + let mut result39 = _rt::Vec::with_capacity(len39); + for i in 0..len39 { + let base = base39.add(i * 8); + let e39 = { + let l36 = *base.add(0).cast::<*mut u8>(); + let l37 = *base.add(4).cast::(); + let len38 = l37; + _rt::Vec::from_raw_parts(l36.cast(), len38, len38) + }; + result39.push(e39); + } + _rt::cabi_dealloc(base39, len39 * 8, 4); + let l40 = *arg0.add(80).cast::<*mut u8>(); + let l41 = *arg0.add(84).cast::(); + let len42 = l41; + let l43 = *arg0.add(88).cast::(); + wavs::worker::layer_types::TriggerDataEthContractEvent { + contract_address: wavs::worker::layer_types::EthAddress { + raw_bytes: _rt::Vec::from_raw_parts(l28.cast(), len30, len30), + }, + chain_name: _rt::string_lift(bytes33), + log: wavs::worker::layer_types::EthEventLogData { + topics: result39, + data: _rt::Vec::from_raw_parts(l40.cast(), len42, len42), + }, + block_height: l43 as u64, + } + }; + V67::EthContractEvent(e67) + } + 1 => { + let e67 = { + let l44 = *arg0.add(56).cast::<*mut u8>(); + let l45 = *arg0.add(60).cast::(); + let len46 = l45; + let bytes46 = _rt::Vec::from_raw_parts(l44.cast(), len46, len46); + let l47 = *arg0.add(64).cast::(); + let l48 = *arg0.add(68).cast::<*mut u8>(); + let l49 = *arg0.add(72).cast::(); + let len50 = l49; + let bytes50 = _rt::Vec::from_raw_parts(l48.cast(), len50, len50); + let l51 = *arg0.add(76).cast::<*mut u8>(); + let l52 = *arg0.add(80).cast::(); + let len53 = l52; + let bytes53 = _rt::Vec::from_raw_parts(l51.cast(), len53, len53); + let l54 = *arg0.add(84).cast::<*mut u8>(); + let l55 = *arg0.add(88).cast::(); + let base62 = l54; + let len62 = l55; + let mut result62 = _rt::Vec::with_capacity(len62); + for i in 0..len62 { + let base = base62.add(i * 16); + let e62 = { + let l56 = *base.add(0).cast::<*mut u8>(); + let l57 = *base.add(4).cast::(); + let len58 = l57; + let bytes58 = _rt::Vec::from_raw_parts(l56.cast(), len58, len58); + let l59 = *base.add(8).cast::<*mut u8>(); + let l60 = *base.add(12).cast::(); + let len61 = l60; + let bytes61 = _rt::Vec::from_raw_parts(l59.cast(), len61, len61); + (_rt::string_lift(bytes58), _rt::string_lift(bytes61)) + }; + result62.push(e62); + } + _rt::cabi_dealloc(base62, len62 * 16, 4); + let l63 = *arg0.add(96).cast::(); + wavs::worker::layer_types::TriggerDataCosmosContractEvent { + contract_address: wavs::worker::layer_types::CosmosAddress { + bech32_addr: _rt::string_lift(bytes46), + prefix_len: l47 as u32, + }, + chain_name: _rt::string_lift(bytes50), + event: wavs::worker::layer_types::CosmosEvent { + ty: _rt::string_lift(bytes53), + attributes: result62, + }, + block_height: l63 as u64, + } + }; + V67::CosmosContractEvent(e67) + } + n => { + debug_assert_eq!(n, 2, "invalid enum discriminant"); + let e67 = { + let l64 = *arg0.add(56).cast::<*mut u8>(); + let l65 = *arg0.add(60).cast::(); + let len66 = l65; + _rt::Vec::from_raw_parts(l64.cast(), len66, len66) + }; + V67::Raw(e67) + } + }; + let result68 = T::run(wavs::worker::layer_types::TriggerAction { + config: wavs::worker::layer_types::TriggerConfig { + service_id: _rt::string_lift(bytes2), + workflow_id: _rt::string_lift(bytes5), + trigger_source: v26, + }, + data: v67, + }); + _rt::cabi_dealloc(arg0, 104, 8); + let ptr69 = _RET_AREA.0.as_mut_ptr().cast::(); + match result68 { + Ok(e) => { + *ptr69.add(0).cast::() = (0i32) as u8; + let vec70 = (e).into_boxed_slice(); + let ptr70 = vec70.as_ptr().cast::(); + let len70 = vec70.len(); + ::core::mem::forget(vec70); + *ptr69.add(8).cast::() = len70; + *ptr69.add(4).cast::<*mut u8>() = ptr70.cast_mut(); + } + Err(e) => { + *ptr69.add(0).cast::() = (1i32) as u8; + let vec71 = (e.into_bytes()).into_boxed_slice(); + let ptr71 = vec71.as_ptr().cast::(); + let len71 = vec71.len(); + ::core::mem::forget(vec71); + *ptr69.add(8).cast::() = len71; + *ptr69.add(4).cast::<*mut u8>() = ptr71.cast_mut(); + } + }; + ptr69 +} +#[doc(hidden)] +#[allow(non_snake_case)] +pub unsafe fn __post_return_run(arg0: *mut u8) { + let l0 = i32::from(*arg0.add(0).cast::()); + match l0 { + 0 => { + let l1 = *arg0.add(4).cast::<*mut u8>(); + let l2 = *arg0.add(8).cast::(); + let base3 = l1; + let len3 = l2; + _rt::cabi_dealloc(base3, len3 * 1, 1); + } + _ => { + let l4 = *arg0.add(4).cast::<*mut u8>(); + let l5 = *arg0.add(8).cast::(); + _rt::cabi_dealloc(l4, l5, 1); + } + } +} +pub trait Guest { + fn run(trigger_action: TriggerAction) -> Result<_rt::Vec, _rt::String>; +} +#[doc(hidden)] +macro_rules! __export_world_layer_trigger_world_cabi { + ($ty:ident with_types_in $($path_to_types:tt)*) => { + const _ : () = { #[export_name = "run"] unsafe extern "C" fn export_run(arg0 : * + mut u8,) -> * mut u8 { $($path_to_types)*:: _export_run_cabi::<$ty > (arg0) } + #[export_name = "cabi_post_run"] unsafe extern "C" fn _post_return_run(arg0 : * + mut u8,) { $($path_to_types)*:: __post_return_run::<$ty > (arg0) } }; + }; +} +#[doc(hidden)] +pub(crate) use __export_world_layer_trigger_world_cabi; +#[repr(align(4))] +struct _RetArea([::core::mem::MaybeUninit; 12]); +static mut _RET_AREA: _RetArea = _RetArea([::core::mem::MaybeUninit::uninit(); 12]); +#[allow(dead_code)] +pub mod wavs { + #[allow(dead_code)] + pub mod worker { + #[allow(dead_code, clippy::all)] + pub mod layer_types { + #[used] + #[doc(hidden)] + static __FORCE_SECTION_REF: fn() = super::super::super::__link_custom_section_describing_imports; + use super::super::super::_rt; + #[derive(Clone)] + pub struct CosmosAddress { + pub bech32_addr: _rt::String, + /// prefix is the first part of the bech32 address + pub prefix_len: u32, + } + impl ::core::fmt::Debug for CosmosAddress { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + f.debug_struct("CosmosAddress") + .field("bech32-addr", &self.bech32_addr) + .field("prefix-len", &self.prefix_len) + .finish() + } + } + #[derive(Clone)] + pub struct CosmosEvent { + pub ty: _rt::String, + pub attributes: _rt::Vec<(_rt::String, _rt::String)>, + } + impl ::core::fmt::Debug for CosmosEvent { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + f.debug_struct("CosmosEvent") + .field("ty", &self.ty) + .field("attributes", &self.attributes) + .finish() + } + } + #[derive(Clone)] + pub struct CosmosChainConfig { + pub chain_id: _rt::String, + pub rpc_endpoint: Option<_rt::String>, + pub grpc_endpoint: Option<_rt::String>, + pub grpc_web_endpoint: Option<_rt::String>, + pub gas_price: f32, + pub gas_denom: _rt::String, + pub bech32_prefix: _rt::String, + } + impl ::core::fmt::Debug for CosmosChainConfig { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + f.debug_struct("CosmosChainConfig") + .field("chain-id", &self.chain_id) + .field("rpc-endpoint", &self.rpc_endpoint) + .field("grpc-endpoint", &self.grpc_endpoint) + .field("grpc-web-endpoint", &self.grpc_web_endpoint) + .field("gas-price", &self.gas_price) + .field("gas-denom", &self.gas_denom) + .field("bech32-prefix", &self.bech32_prefix) + .finish() + } + } + #[derive(Clone)] + pub struct EthAddress { + pub raw_bytes: _rt::Vec, + } + impl ::core::fmt::Debug for EthAddress { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + f.debug_struct("EthAddress") + .field("raw-bytes", &self.raw_bytes) + .finish() + } + } + #[derive(Clone)] + pub struct EthEventLogData { + /// the raw log topics that can be decoded into an event + pub topics: _rt::Vec<_rt::Vec>, + /// the raw log data that can be decoded into an event + pub data: _rt::Vec, + } + impl ::core::fmt::Debug for EthEventLogData { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + f.debug_struct("EthEventLogData") + .field("topics", &self.topics) + .field("data", &self.data) + .finish() + } + } + #[derive(Clone)] + pub struct EthChainConfig { + pub chain_id: _rt::String, + pub ws_endpoint: Option<_rt::String>, + pub http_endpoint: Option<_rt::String>, + } + impl ::core::fmt::Debug for EthChainConfig { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + f.debug_struct("EthChainConfig") + .field("chain-id", &self.chain_id) + .field("ws-endpoint", &self.ws_endpoint) + .field("http-endpoint", &self.http_endpoint) + .finish() + } + } + #[derive(Clone)] + pub struct TriggerSourceEthContractEvent { + pub address: EthAddress, + pub chain_name: _rt::String, + pub event_hash: _rt::Vec, + } + impl ::core::fmt::Debug for TriggerSourceEthContractEvent { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + f.debug_struct("TriggerSourceEthContractEvent") + .field("address", &self.address) + .field("chain-name", &self.chain_name) + .field("event-hash", &self.event_hash) + .finish() + } + } + #[derive(Clone)] + pub struct TriggerSourceCosmosContractEvent { + pub address: CosmosAddress, + pub chain_name: _rt::String, + pub event_type: _rt::String, + } + impl ::core::fmt::Debug for TriggerSourceCosmosContractEvent { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + f.debug_struct("TriggerSourceCosmosContractEvent") + .field("address", &self.address) + .field("chain-name", &self.chain_name) + .field("event-type", &self.event_type) + .finish() + } + } + #[derive(Clone)] + pub enum TriggerSource { + EthContractEvent(TriggerSourceEthContractEvent), + CosmosContractEvent(TriggerSourceCosmosContractEvent), + Manual, + } + impl ::core::fmt::Debug for TriggerSource { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + match self { + TriggerSource::EthContractEvent(e) => { + f.debug_tuple("TriggerSource::EthContractEvent") + .field(e) + .finish() + } + TriggerSource::CosmosContractEvent(e) => { + f.debug_tuple("TriggerSource::CosmosContractEvent") + .field(e) + .finish() + } + TriggerSource::Manual => { + f.debug_tuple("TriggerSource::Manual").finish() + } + } + } + } + #[derive(Clone)] + pub struct TriggerConfig { + pub service_id: _rt::String, + pub workflow_id: _rt::String, + pub trigger_source: TriggerSource, + } + impl ::core::fmt::Debug for TriggerConfig { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + f.debug_struct("TriggerConfig") + .field("service-id", &self.service_id) + .field("workflow-id", &self.workflow_id) + .field("trigger-source", &self.trigger_source) + .finish() + } + } + #[derive(Clone)] + pub struct TriggerDataEthContractEvent { + pub contract_address: EthAddress, + pub chain_name: _rt::String, + pub log: EthEventLogData, + pub block_height: u64, + } + impl ::core::fmt::Debug for TriggerDataEthContractEvent { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + f.debug_struct("TriggerDataEthContractEvent") + .field("contract-address", &self.contract_address) + .field("chain-name", &self.chain_name) + .field("log", &self.log) + .field("block-height", &self.block_height) + .finish() + } + } + #[derive(Clone)] + pub struct TriggerDataCosmosContractEvent { + pub contract_address: CosmosAddress, + pub chain_name: _rt::String, + pub event: CosmosEvent, + pub block_height: u64, + } + impl ::core::fmt::Debug for TriggerDataCosmosContractEvent { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + f.debug_struct("TriggerDataCosmosContractEvent") + .field("contract-address", &self.contract_address) + .field("chain-name", &self.chain_name) + .field("event", &self.event) + .field("block-height", &self.block_height) + .finish() + } + } + #[derive(Clone)] + pub enum TriggerData { + EthContractEvent(TriggerDataEthContractEvent), + CosmosContractEvent(TriggerDataCosmosContractEvent), + Raw(_rt::Vec), + } + impl ::core::fmt::Debug for TriggerData { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + match self { + TriggerData::EthContractEvent(e) => { + f.debug_tuple("TriggerData::EthContractEvent") + .field(e) + .finish() + } + TriggerData::CosmosContractEvent(e) => { + f.debug_tuple("TriggerData::CosmosContractEvent") + .field(e) + .finish() + } + TriggerData::Raw(e) => { + f.debug_tuple("TriggerData::Raw").field(e).finish() + } + } + } + } + #[derive(Clone)] + pub struct TriggerAction { + pub config: TriggerConfig, + pub data: TriggerData, + } + impl ::core::fmt::Debug for TriggerAction { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + f.debug_struct("TriggerAction") + .field("config", &self.config) + .field("data", &self.data) + .finish() + } + } + #[derive(Clone, Copy)] + pub enum LogLevel { + Error, + Warn, + Info, + Debug, + Trace, + } + impl ::core::fmt::Debug for LogLevel { + fn fmt( + &self, + f: &mut ::core::fmt::Formatter<'_>, + ) -> ::core::fmt::Result { + match self { + LogLevel::Error => f.debug_tuple("LogLevel::Error").finish(), + LogLevel::Warn => f.debug_tuple("LogLevel::Warn").finish(), + LogLevel::Info => f.debug_tuple("LogLevel::Info").finish(), + LogLevel::Debug => f.debug_tuple("LogLevel::Debug").finish(), + LogLevel::Trace => f.debug_tuple("LogLevel::Trace").finish(), + } + } + } + } + } +} +#[allow(dead_code, clippy::all)] +pub mod host { + #[used] + #[doc(hidden)] + static __FORCE_SECTION_REF: fn() = super::__link_custom_section_describing_imports; + use super::_rt; + pub type EthChainConfig = super::wavs::worker::layer_types::EthChainConfig; + pub type CosmosChainConfig = super::wavs::worker::layer_types::CosmosChainConfig; + pub type LogLevel = super::wavs::worker::layer_types::LogLevel; + #[allow(unused_unsafe, clippy::all)] + pub fn get_eth_chain_config(chain_name: &str) -> Option { + unsafe { + #[repr(align(4))] + struct RetArea([::core::mem::MaybeUninit; 36]); + let mut ret_area = RetArea([::core::mem::MaybeUninit::uninit(); 36]); + let vec0 = chain_name; + let ptr0 = vec0.as_ptr().cast::(); + let len0 = vec0.len(); + let ptr1 = ret_area.0.as_mut_ptr().cast::(); + #[cfg(target_arch = "wasm32")] + #[link(wasm_import_module = "host")] + extern "C" { + #[link_name = "get-eth-chain-config"] + fn wit_import(_: *mut u8, _: usize, _: *mut u8); + } + #[cfg(not(target_arch = "wasm32"))] + fn wit_import(_: *mut u8, _: usize, _: *mut u8) { + unreachable!() + } + wit_import(ptr0.cast_mut(), len0, ptr1); + let l2 = i32::from(*ptr1.add(0).cast::()); + match l2 { + 0 => None, + 1 => { + let e = { + let l3 = *ptr1.add(4).cast::<*mut u8>(); + let l4 = *ptr1.add(8).cast::(); + let len5 = l4; + let bytes5 = _rt::Vec::from_raw_parts(l3.cast(), len5, len5); + let l6 = i32::from(*ptr1.add(12).cast::()); + let l10 = i32::from(*ptr1.add(24).cast::()); + super::wavs::worker::layer_types::EthChainConfig { + chain_id: _rt::string_lift(bytes5), + ws_endpoint: match l6 { + 0 => None, + 1 => { + let e = { + let l7 = *ptr1.add(16).cast::<*mut u8>(); + let l8 = *ptr1.add(20).cast::(); + let len9 = l8; + let bytes9 = _rt::Vec::from_raw_parts( + l7.cast(), + len9, + len9, + ); + _rt::string_lift(bytes9) + }; + Some(e) + } + _ => _rt::invalid_enum_discriminant(), + }, + http_endpoint: match l10 { + 0 => None, + 1 => { + let e = { + let l11 = *ptr1.add(28).cast::<*mut u8>(); + let l12 = *ptr1.add(32).cast::(); + let len13 = l12; + let bytes13 = _rt::Vec::from_raw_parts( + l11.cast(), + len13, + len13, + ); + _rt::string_lift(bytes13) + }; + Some(e) + } + _ => _rt::invalid_enum_discriminant(), + }, + } + }; + Some(e) + } + _ => _rt::invalid_enum_discriminant(), + } + } + } + #[allow(unused_unsafe, clippy::all)] + pub fn get_cosmos_chain_config(chain_name: &str) -> Option { + unsafe { + #[repr(align(4))] + struct RetArea([::core::mem::MaybeUninit; 68]); + let mut ret_area = RetArea([::core::mem::MaybeUninit::uninit(); 68]); + let vec0 = chain_name; + let ptr0 = vec0.as_ptr().cast::(); + let len0 = vec0.len(); + let ptr1 = ret_area.0.as_mut_ptr().cast::(); + #[cfg(target_arch = "wasm32")] + #[link(wasm_import_module = "host")] + extern "C" { + #[link_name = "get-cosmos-chain-config"] + fn wit_import(_: *mut u8, _: usize, _: *mut u8); + } + #[cfg(not(target_arch = "wasm32"))] + fn wit_import(_: *mut u8, _: usize, _: *mut u8) { + unreachable!() + } + wit_import(ptr0.cast_mut(), len0, ptr1); + let l2 = i32::from(*ptr1.add(0).cast::()); + match l2 { + 0 => None, + 1 => { + let e = { + let l3 = *ptr1.add(4).cast::<*mut u8>(); + let l4 = *ptr1.add(8).cast::(); + let len5 = l4; + let bytes5 = _rt::Vec::from_raw_parts(l3.cast(), len5, len5); + let l6 = i32::from(*ptr1.add(12).cast::()); + let l10 = i32::from(*ptr1.add(24).cast::()); + let l14 = i32::from(*ptr1.add(36).cast::()); + let l18 = *ptr1.add(48).cast::(); + let l19 = *ptr1.add(52).cast::<*mut u8>(); + let l20 = *ptr1.add(56).cast::(); + let len21 = l20; + let bytes21 = _rt::Vec::from_raw_parts(l19.cast(), len21, len21); + let l22 = *ptr1.add(60).cast::<*mut u8>(); + let l23 = *ptr1.add(64).cast::(); + let len24 = l23; + let bytes24 = _rt::Vec::from_raw_parts(l22.cast(), len24, len24); + super::wavs::worker::layer_types::CosmosChainConfig { + chain_id: _rt::string_lift(bytes5), + rpc_endpoint: match l6 { + 0 => None, + 1 => { + let e = { + let l7 = *ptr1.add(16).cast::<*mut u8>(); + let l8 = *ptr1.add(20).cast::(); + let len9 = l8; + let bytes9 = _rt::Vec::from_raw_parts( + l7.cast(), + len9, + len9, + ); + _rt::string_lift(bytes9) + }; + Some(e) + } + _ => _rt::invalid_enum_discriminant(), + }, + grpc_endpoint: match l10 { + 0 => None, + 1 => { + let e = { + let l11 = *ptr1.add(28).cast::<*mut u8>(); + let l12 = *ptr1.add(32).cast::(); + let len13 = l12; + let bytes13 = _rt::Vec::from_raw_parts( + l11.cast(), + len13, + len13, + ); + _rt::string_lift(bytes13) + }; + Some(e) + } + _ => _rt::invalid_enum_discriminant(), + }, + grpc_web_endpoint: match l14 { + 0 => None, + 1 => { + let e = { + let l15 = *ptr1.add(40).cast::<*mut u8>(); + let l16 = *ptr1.add(44).cast::(); + let len17 = l16; + let bytes17 = _rt::Vec::from_raw_parts( + l15.cast(), + len17, + len17, + ); + _rt::string_lift(bytes17) + }; + Some(e) + } + _ => _rt::invalid_enum_discriminant(), + }, + gas_price: l18, + gas_denom: _rt::string_lift(bytes21), + bech32_prefix: _rt::string_lift(bytes24), + } + }; + Some(e) + } + _ => _rt::invalid_enum_discriminant(), + } + } + } + #[allow(unused_unsafe, clippy::all)] + pub fn log(level: LogLevel, message: &str) { + unsafe { + use super::wavs::worker::layer_types::LogLevel as V0; + let result1 = match level { + V0::Error => 0i32, + V0::Warn => 1i32, + V0::Info => 2i32, + V0::Debug => 3i32, + V0::Trace => 4i32, + }; + let vec2 = message; + let ptr2 = vec2.as_ptr().cast::(); + let len2 = vec2.len(); + #[cfg(target_arch = "wasm32")] + #[link(wasm_import_module = "host")] + extern "C" { + #[link_name = "log"] + fn wit_import(_: i32, _: *mut u8, _: usize); + } + #[cfg(not(target_arch = "wasm32"))] + fn wit_import(_: i32, _: *mut u8, _: usize) { + unreachable!() + } + wit_import(result1, ptr2.cast_mut(), len2); + } + } +} +mod _rt { + pub use alloc_crate::string::String; + pub use alloc_crate::vec::Vec; + pub unsafe fn string_lift(bytes: Vec) -> String { + if cfg!(debug_assertions) { + String::from_utf8(bytes).unwrap() + } else { + String::from_utf8_unchecked(bytes) + } + } + pub unsafe fn invalid_enum_discriminant() -> T { + if cfg!(debug_assertions) { + panic!("invalid enum discriminant") + } else { + core::hint::unreachable_unchecked() + } + } + #[cfg(target_arch = "wasm32")] + pub fn run_ctors_once() { + wit_bindgen_rt::run_ctors_once(); + } + pub unsafe fn cabi_dealloc(ptr: *mut u8, size: usize, align: usize) { + if size == 0 { + return; + } + let layout = alloc::Layout::from_size_align_unchecked(size, align); + alloc::dealloc(ptr, layout); + } + extern crate alloc as alloc_crate; + pub use alloc_crate::alloc; +} +/// Generates `#[no_mangle]` functions to export the specified type as the +/// root implementation of all generated traits. +/// +/// For more information see the documentation of `wit_bindgen::generate!`. +/// +/// ```rust +/// # macro_rules! export{ ($($t:tt)*) => (); } +/// # trait Guest {} +/// struct MyType; +/// +/// impl Guest for MyType { +/// // ... +/// } +/// +/// export!(MyType); +/// ``` +#[allow(unused_macros)] +#[doc(hidden)] +macro_rules! __export_layer_trigger_world_impl { + ($ty:ident) => { + self::export!($ty with_types_in self); + }; + ($ty:ident with_types_in $($path_to_types_root:tt)*) => { + $($path_to_types_root)*:: __export_world_layer_trigger_world_cabi!($ty + with_types_in $($path_to_types_root)*); + }; +} +#[doc(inline)] +pub(crate) use __export_layer_trigger_world_impl as export; +#[cfg(target_arch = "wasm32")] +#[link_section = "component-type:wit-bindgen:0.35.0:wavs:worker@0.3.0-alpha2:layer-trigger-world:encoded world"] +#[doc(hidden)] +pub static __WIT_BINDGEN_COMPONENT_TYPE: [u8; 1591] = *b"\ +\0asm\x0d\0\x01\0\0\x19\x16wit-component-encoding\x04\0\x07\xad\x0b\x01A\x02\x01\ +A\x0d\x01B#\x01r\x02\x0bbech32-addrs\x0aprefix-leny\x04\0\x0ecosmos-address\x03\0\ +\0\x01o\x02ss\x01p\x02\x01r\x02\x02tys\x0aattributes\x03\x04\0\x0ccosmos-event\x03\ +\0\x04\x01ks\x01r\x07\x08chain-ids\x0crpc-endpoint\x06\x0dgrpc-endpoint\x06\x11g\ +rpc-web-endpoint\x06\x09gas-pricev\x09gas-denoms\x0dbech32-prefixs\x04\0\x13cosm\ +os-chain-config\x03\0\x07\x01p}\x01r\x01\x09raw-bytes\x09\x04\0\x0beth-address\x03\ +\0\x0a\x01p\x09\x01r\x02\x06topics\x0c\x04data\x09\x04\0\x12eth-event-log-data\x03\ +\0\x0d\x01r\x03\x08chain-ids\x0bws-endpoint\x06\x0dhttp-endpoint\x06\x04\0\x10et\ +h-chain-config\x03\0\x0f\x01r\x03\x07address\x0b\x0achain-names\x0aevent-hash\x09\ +\x04\0!trigger-source-eth-contract-event\x03\0\x11\x01r\x03\x07address\x01\x0ach\ +ain-names\x0aevent-types\x04\0$trigger-source-cosmos-contract-event\x03\0\x13\x01\ +q\x03\x12eth-contract-event\x01\x12\0\x15cosmos-contract-event\x01\x14\0\x06manu\ +al\0\0\x04\0\x0etrigger-source\x03\0\x15\x01r\x03\x0aservice-ids\x0bworkflow-ids\ +\x0etrigger-source\x16\x04\0\x0etrigger-config\x03\0\x17\x01r\x04\x10contract-ad\ +dress\x0b\x0achain-names\x03log\x0e\x0cblock-heightw\x04\0\x1ftrigger-data-eth-c\ +ontract-event\x03\0\x19\x01r\x04\x10contract-address\x01\x0achain-names\x05event\ +\x05\x0cblock-heightw\x04\0\"trigger-data-cosmos-contract-event\x03\0\x1b\x01q\x03\ +\x12eth-contract-event\x01\x1a\0\x15cosmos-contract-event\x01\x1c\0\x03raw\x01\x09\ +\0\x04\0\x0ctrigger-data\x03\0\x1d\x01r\x02\x06config\x18\x04data\x1e\x04\0\x0et\ +rigger-action\x03\0\x1f\x01q\x05\x05error\0\0\x04warn\0\0\x04info\0\0\x05debug\0\ +\0\x05trace\0\0\x04\0\x09log-level\x03\0!\x03\0$wavs:worker/layer-types@0.3.0-al\ +pha2\x05\0\x02\x03\0\0\x0etrigger-action\x03\0\x0etrigger-action\x03\0\x01\x02\x03\ +\0\0\x10eth-chain-config\x02\x03\0\0\x13cosmos-chain-config\x02\x03\0\0\x09log-l\ +evel\x01B\x0e\x02\x03\x02\x01\x03\x04\0\x10eth-chain-config\x03\0\0\x02\x03\x02\x01\ +\x04\x04\0\x13cosmos-chain-config\x03\0\x02\x02\x03\x02\x01\x05\x04\0\x09log-lev\ +el\x03\0\x04\x01k\x01\x01@\x01\x0achain-names\0\x06\x04\0\x14get-eth-chain-confi\ +g\x01\x07\x01k\x03\x01@\x01\x0achain-names\0\x08\x04\0\x17get-cosmos-chain-confi\ +g\x01\x09\x01@\x02\x05level\x05\x07messages\x01\0\x04\0\x03log\x01\x0a\x03\0\x04\ +host\x05\x06\x01p}\x01j\x01\x07\x01s\x01@\x01\x0etrigger-action\x02\0\x08\x04\0\x03\ +run\x01\x09\x04\0,wavs:worker/layer-trigger-world@0.3.0-alpha2\x04\0\x0b\x19\x01\ +\0\x13layer-trigger-world\x03\0\0\0G\x09producers\x01\x0cprocessed-by\x02\x0dwit\ +-component\x070.220.0\x10wit-bindgen-rust\x060.35.0"; +#[inline(never)] +#[doc(hidden)] +pub fn __link_custom_section_describing_imports() { + wit_bindgen_rt::maybe_link_cabi_realloc(); +} diff --git a/components/eth-trigger-weather/src/lib.rs b/components/eth-trigger-weather/src/lib.rs index da820f57..3e05206c 100644 --- a/components/eth-trigger-weather/src/lib.rs +++ b/components/eth-trigger-weather/src/lib.rs @@ -1,15 +1,18 @@ mod trigger; -use layer_wasi::{ - bindings::world::{Guest, TriggerAction}, - export_layer_trigger_world, - wasi::{Request, WasiPollable}, -}; -use serde::{Deserialize, Serialize}; use trigger::{decode_trigger_event, encode_trigger_output}; -use wstd::runtime::{block_on, Reactor}; +pub mod bindings; +use crate::bindings::{export, Guest, TriggerAction}; +use serde::{Deserialize, Serialize}; +use wstd::{ + http::{Client, Request}, + io::{empty, AsyncRead}, + runtime::block_on, +}; struct Component; +const API_KEY_KEY: &str = "WAVS_ENV_OPEN_WEATHER_API_KEY"; + impl Guest for Component { fn run(trigger_action: TriggerAction) -> std::result::Result, String> { let (trigger_id, req) = @@ -18,22 +21,29 @@ impl Guest for Component { if !req.contains(&b',') { return Err("Input must be in the format of City,State".to_string()); } - let input = std::str::from_utf8(&req).unwrap(); // TODO: + let input = std::str::from_utf8(&req).unwrap(); + + println!("input: {}", input); // open weather API, not wavs specific - let api_key = std::env::var("WAVS_ENV_OPEN_WEATHER_API_KEY") - .or(Err("missing env var `WAVS_ENV_OPEN_WEATHER_API_KEY`".to_string()))?; + let api_key = std::env::var(API_KEY_KEY) + .or(Err(format!("missing env var `{}`", API_KEY_KEY)))?; + + if api_key.chars().all(|c| c == '0') { + return Err(format!("missing env var `{}`, it is set as the default placeholder in .env (all 0s)", API_KEY_KEY)); + } - let res = block_on(move |reactor| async move { - let loc: Result = - get_location(&reactor, api_key.clone(), input).await; + let res = block_on(async move { + let loc: Result = get_location(api_key.clone(), input).await; + println!("loc: {:?}", loc); let location = match loc { Ok(data) => data, Err(e) => return Err(e), }; - let weather_data = get_weather(&reactor, location, api_key).await; + let weather_data = get_weather(location, api_key).await; + println!("weather_data: {:?}", weather_data); match weather_data { Ok(data) => { @@ -51,35 +61,29 @@ impl Guest for Component { } } -async fn get_location( - reactor: &Reactor, - app_key: String, - loc_input: &str, -) -> Result { +async fn get_location(app_key: String, loc_input: &str) -> Result { let url: &str = "http://api.openweathermap.org/geo/1.0/direct"; let loc_input_formatted = format!("{},US", loc_input); let params = [("q", loc_input_formatted.as_str()), ("appid", app_key.as_str())]; let url_with_params = reqwest::Url::parse_with_params(url, ¶ms).unwrap(); - let mut req = Request::get(url_with_params.as_str())?; - req.headers = vec![ - ("Accept".to_string(), "application/json".to_string()), - ("Content-Type".to_string(), "application/json".to_string()), - ]; + let req = Request::get(url_with_params.as_str()) + .header("Accept", "application/json") + .header("Content-Type", "application/json") + .body(empty()) + .unwrap(); - let response = reactor.send(req).await; + let response = Client::new().send(req).await; match response { - Ok(response) => { - let finalresp = response.json::().map_err(|e| { - let resp_body = response.body; - let resp_str = String::from_utf8_lossy(&resp_body); - format!( - "Error debugging location response to JSON. Error: {:?}. had response: {:?} | using URL: {:?}", - e, resp_str, url_with_params, - ) - })?; - return Ok(finalresp[0].clone()); + Ok(mut response) => { + let mut body_buf = Vec::new(); + response.body_mut().read_to_end(&mut body_buf).await.unwrap(); + + let resp = String::from_utf8_lossy(&body_buf); + let json: LocationData = serde_json::from_str(&resp).unwrap(); + + return Ok(json[0].clone()); } Err(e) => { return Err(e.to_string()); @@ -87,11 +91,7 @@ async fn get_location( } } -async fn get_weather( - reactor: &Reactor, - location: LocDataNested, - app_key: String, -) -> Result { +async fn get_weather(location: LocDataNested, app_key: String) -> Result { let url: &str = "https://api.openweathermap.org/data/2.5/weather"; let params = [ ("lat", location.lat.to_string()), @@ -101,25 +101,23 @@ async fn get_weather( ]; let url_with_params = reqwest::Url::parse_with_params(url, ¶ms).unwrap(); - let mut req = Request::get(url_with_params.as_str())?; - req.headers = vec![ - ("Accept".to_string(), "application/json".to_string()), - ("Content-Type".to_string(), "application/json".to_string()), - ]; + let req = Request::get(url_with_params.as_str()) + .header("Accept", "application/json") + .header("Content-Type", "application/json") + .body(empty()) + .unwrap(); - let response = reactor.send(req).await; + let response = Client::new().send(req).await; match response { - Ok(response) => { - let finalresp = response.json::().map_err(|e| { - let resp_body = response.body; - let resp_str = String::from_utf8_lossy(&resp_body); - format!( - "Error debugging weather response to JSON. Error: {:?}. had response: {:?} | using URL: {:?}", - e, resp_str, url_with_params, - ) - })?; - return Ok(finalresp); + Ok(mut response) => { + let mut body_buf = Vec::new(); + response.body_mut().read_to_end(&mut body_buf).await.unwrap(); + + let resp = String::from_utf8_lossy(&body_buf); + let json: WeatherResponse = serde_json::from_str(&resp).unwrap(); + + return Ok(json); } Err(e) => { return Err(e.to_string()); @@ -222,4 +220,4 @@ pub struct Wind { deg: i64, } -export_layer_trigger_world!(Component); +export!(Component with_types_in bindings); diff --git a/components/eth-trigger-weather/src/trigger.rs b/components/eth-trigger-weather/src/trigger.rs index 4b81a7ff..3c763d45 100644 --- a/components/eth-trigger-weather/src/trigger.rs +++ b/components/eth-trigger-weather/src/trigger.rs @@ -1,17 +1,14 @@ // Helpers to work with "trigger id" flows - which our example components do +use crate::bindings::wavs::worker::layer_types::{TriggerData, TriggerDataEthContractEvent}; use alloy_sol_types::SolValue; use anyhow::Result; use example_submit::ISimpleSubmit::DataWithId; use example_trigger::{NewTrigger, TriggerInfo}; -use layer_wasi::{ - bindings::compat::{TriggerData, TriggerDataEthContractEvent}, - ethereum::WasiProvider, -}; pub fn decode_trigger_event(trigger_data: TriggerData) -> Result<(u64, Vec)> { match trigger_data { TriggerData::EthContractEvent(TriggerDataEthContractEvent { log, .. }) => { - let event: NewTrigger = layer_wasi::ethereum::decode_event_log_data(log)?; + let event: NewTrigger = wavs_wasi_chain::decode_event_log_data!(log)?; let trigger_info = TriggerInfo::abi_decode(&event._0, false)?; Ok((trigger_info.triggerId, trigger_info.data.to_vec())) } diff --git a/crates/bindings/Cargo.toml b/crates/bindings/Cargo.toml index d8ab0d2b..a4db3a36 100644 --- a/crates/bindings/Cargo.toml +++ b/crates/bindings/Cargo.toml @@ -4,4 +4,4 @@ version = "0.1.0" edition = "2021" [dependencies] -alloy = { git = "https://github.com/alloy-rs/alloy", rev = "v0.9.2", features = ["sol-types", "contract"] } \ No newline at end of file +alloy = { git = "https://github.com/alloy-rs/alloy", rev = "v0.11.0", features = ["sol-types", "contract"] } diff --git a/crates/bindings/src/addressupgradeable.rs b/crates/bindings/src/addressupgradeable.rs deleted file mode 100644 index 3ad32cc8..00000000 --- a/crates/bindings/src/addressupgradeable.rs +++ /dev/null @@ -1,221 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface AddressUpgradeable {} -``` - -...which was generated by the following JSON ABI: -```json -[] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod AddressUpgradeable { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea26469706673582212206cb4a8d96bd925e504843b69ec50435eb9d4d11feac21ee1ad2aa3b78ba9fccc64736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 l\xB4\xA8\xD9k\xD9%\xE5\x04\x84;i\xECPC^\xB9\xD4\xD1\x1F\xEA\xC2\x1E\xE1\xAD*\xA3\xB7\x8B\xA9\xFC\xCCdsolcC\0\x08\x1C\x003", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x5f80fdfea26469706673582212206cb4a8d96bd925e504843b69ec50435eb9d4d11feac21ee1ad2aa3b78ba9fccc64736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"_\x80\xFD\xFE\xA2dipfsX\"\x12 l\xB4\xA8\xD9k\xD9%\xE5\x04\x84;i\xECPC^\xB9\xD4\xD1\x1F\xEA\xC2\x1E\xE1\xAD*\xA3\xB7\x8B\xA9\xFC\xCCdsolcC\0\x08\x1C\x003", - ); - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`AddressUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`AddressUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> AddressUpgradeableInstance { - AddressUpgradeableInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - AddressUpgradeableInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - AddressUpgradeableInstance::::deploy_builder(provider) - } - /**A [`AddressUpgradeable`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`AddressUpgradeable`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct AddressUpgradeableInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for AddressUpgradeableInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("AddressUpgradeableInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > AddressUpgradeableInstance - { - /**Creates a new wrapper around an on-chain [`AddressUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`AddressUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl AddressUpgradeableInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> AddressUpgradeableInstance { - AddressUpgradeableInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > AddressUpgradeableInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > AddressUpgradeableInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - } -} diff --git a/crates/bindings/src/checkpointsupgradeable.rs b/crates/bindings/src/checkpointsupgradeable.rs deleted file mode 100644 index ec7ef2da..00000000 --- a/crates/bindings/src/checkpointsupgradeable.rs +++ /dev/null @@ -1,222 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface CheckpointsUpgradeable {} -``` - -...which was generated by the following JSON ABI: -```json -[] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod CheckpointsUpgradeable { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea26469706673582212203cbb93fbcf10e069bdd50e0055d86abccb32aa382a0bacf6f2c624bd116c499764736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 <\xBB\x93\xFB\xCF\x10\xE0i\xBD\xD5\x0E\0U\xD8j\xBC\xCB2\xAA8*\x0B\xAC\xF6\xF2\xC6$\xBD\x11lI\x97dsolcC\0\x08\x1C\x003", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x5f80fdfea26469706673582212203cbb93fbcf10e069bdd50e0055d86abccb32aa382a0bacf6f2c624bd116c499764736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"_\x80\xFD\xFE\xA2dipfsX\"\x12 <\xBB\x93\xFB\xCF\x10\xE0i\xBD\xD5\x0E\0U\xD8j\xBC\xCB2\xAA8*\x0B\xAC\xF6\xF2\xC6$\xBD\x11lI\x97dsolcC\0\x08\x1C\x003", - ); - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`CheckpointsUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`CheckpointsUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> CheckpointsUpgradeableInstance { - CheckpointsUpgradeableInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future< - Output = alloy_contract::Result>, - > { - CheckpointsUpgradeableInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - CheckpointsUpgradeableInstance::::deploy_builder(provider) - } - /**A [`CheckpointsUpgradeable`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`CheckpointsUpgradeable`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct CheckpointsUpgradeableInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for CheckpointsUpgradeableInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("CheckpointsUpgradeableInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > CheckpointsUpgradeableInstance - { - /**Creates a new wrapper around an on-chain [`CheckpointsUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`CheckpointsUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl CheckpointsUpgradeableInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> CheckpointsUpgradeableInstance { - CheckpointsUpgradeableInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > CheckpointsUpgradeableInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > CheckpointsUpgradeableInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - } -} diff --git a/crates/bindings/src/contextupgradeable.rs b/crates/bindings/src/contextupgradeable.rs deleted file mode 100644 index a926940d..00000000 --- a/crates/bindings/src/contextupgradeable.rs +++ /dev/null @@ -1,390 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface ContextUpgradeable { - event Initialized(uint8 version); -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "event", - "name": "Initialized", - "inputs": [ - { - "name": "version", - "type": "uint8", - "indexed": false, - "internalType": "uint8" - } - ], - "anonymous": false - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod ContextUpgradeable { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**Event with signature `Initialized(uint8)` and selector `0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498`. - ```solidity - event Initialized(uint8 version); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Initialized { - #[allow(missing_docs)] - pub version: u8, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Initialized { - type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<8>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "Initialized(uint8)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 127u8, 38u8, 184u8, 63u8, 249u8, 110u8, 31u8, 43u8, 106u8, 104u8, 47u8, 19u8, - 56u8, 82u8, 246u8, 121u8, 138u8, 9u8, 196u8, 101u8, 218u8, 149u8, 146u8, 20u8, - 96u8, 206u8, 251u8, 56u8, 71u8, 64u8, 36u8, 152u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { version: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.version, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Initialized { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Initialized> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Initialized) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - ///Container for all the [`ContextUpgradeable`](self) events. - pub enum ContextUpgradeableEvents { - Initialized(Initialized), - } - #[automatically_derived] - impl ContextUpgradeableEvents { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[[ - 127u8, 38u8, 184u8, 63u8, 249u8, 110u8, 31u8, 43u8, 106u8, 104u8, 47u8, 19u8, 56u8, - 82u8, 246u8, 121u8, 138u8, 9u8, 196u8, 101u8, 218u8, 149u8, 146u8, 20u8, 96u8, 206u8, - 251u8, 56u8, 71u8, 64u8, 36u8, 152u8, - ]]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for ContextUpgradeableEvents { - const NAME: &'static str = "ContextUpgradeableEvents"; - const COUNT: usize = 1usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::Initialized) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ContextUpgradeableEvents { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::Initialized(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::Initialized(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`ContextUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`ContextUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> ContextUpgradeableInstance { - ContextUpgradeableInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - ContextUpgradeableInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - ContextUpgradeableInstance::::deploy_builder(provider) - } - /**A [`ContextUpgradeable`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`ContextUpgradeable`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct ContextUpgradeableInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for ContextUpgradeableInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ContextUpgradeableInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ContextUpgradeableInstance - { - /**Creates a new wrapper around an on-chain [`ContextUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`ContextUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl ContextUpgradeableInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> ContextUpgradeableInstance { - ContextUpgradeableInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ContextUpgradeableInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ContextUpgradeableInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`Initialized`] event. - pub fn Initialized_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/ecdsastakeregistry.rs b/crates/bindings/src/ecdsastakeregistry.rs deleted file mode 100644 index 48036e1c..00000000 --- a/crates/bindings/src/ecdsastakeregistry.rs +++ /dev/null @@ -1,8036 +0,0 @@ -///Module containing a contract's types and functions. -/** - -```solidity -library ISignatureUtils { - struct SignatureWithSaltAndExpiry { bytes signature; bytes32 salt; uint256 expiry; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod ISignatureUtils { - use super::*; - use alloy::sol_types as alloy_sol_types; - /**```solidity - struct SignatureWithSaltAndExpiry { bytes signature; bytes32 salt; uint256 expiry; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct SignatureWithSaltAndExpiry { - pub signature: alloy::sol_types::private::Bytes, - pub salt: alloy::sol_types::private::FixedBytes<32>, - pub expiry: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Bytes, - alloy::sol_types::private::FixedBytes<32>, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: SignatureWithSaltAndExpiry) -> Self { - (value.signature, value.salt, value.expiry) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for SignatureWithSaltAndExpiry { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { signature: tuple.0, salt: tuple.1, expiry: tuple.2 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for SignatureWithSaltAndExpiry { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for SignatureWithSaltAndExpiry { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.signature, - ), - as alloy_sol_types::SolType>::tokenize(&self.salt), - as alloy_sol_types::SolType>::tokenize(&self.expiry), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for SignatureWithSaltAndExpiry { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for SignatureWithSaltAndExpiry { - const NAME: &'static str = "SignatureWithSaltAndExpiry"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "SignatureWithSaltAndExpiry(bytes signature,bytes32 salt,uint256 expiry)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.signature, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.salt) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.expiry) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for SignatureWithSaltAndExpiry { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.signature, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.salt) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.expiry, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.signature, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.salt, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.expiry, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`ISignatureUtils`](self) contract instance. - - See the [wrapper's documentation](`ISignatureUtilsInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> ISignatureUtilsInstance { - ISignatureUtilsInstance::::new(address, provider) - } - /**A [`ISignatureUtils`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`ISignatureUtils`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct ISignatureUtilsInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for ISignatureUtilsInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ISignatureUtilsInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ISignatureUtilsInstance - { - /**Creates a new wrapper around an on-chain [`ISignatureUtils`](self) contract instance. - - See the [wrapper's documentation](`ISignatureUtilsInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl ISignatureUtilsInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> ISignatureUtilsInstance { - ISignatureUtilsInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ISignatureUtilsInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ISignatureUtilsInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - } -} -/** - -Generated by the following Solidity interface... -```solidity -library ISignatureUtils { - struct SignatureWithSaltAndExpiry { - bytes signature; - bytes32 salt; - uint256 expiry; - } -} - -interface ECDSAStakeRegistry { - struct Quorum { - StrategyParams[] strategies; - } - struct StrategyParams { - address strategy; - uint96 multiplier; - } - - error InsufficientSignedStake(); - error InsufficientWeight(); - error InvalidLength(); - error InvalidQuorum(); - error InvalidReferenceBlock(); - error InvalidSignature(); - error InvalidSignedWeight(); - error InvalidThreshold(); - error LengthMismatch(); - error MustUpdateAllOperators(); - error NotSorted(); - error OperatorAlreadyRegistered(); - error OperatorNotRegistered(); - - event Initialized(uint8 version); - event MinimumWeightUpdated(uint256 _old, uint256 _new); - event OperatorDeregistered(address indexed _operator, address indexed _avs); - event OperatorRegistered(address indexed _operator, address indexed _avs); - event OperatorWeightUpdated(address indexed _operator, uint256 oldWeight, uint256 newWeight); - event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); - event QuorumUpdated(Quorum _old, Quorum _new); - event SigningKeyUpdate(address indexed operator, uint256 indexed updateBlock, address indexed newSigningKey, address oldSigningKey); - event ThresholdWeightUpdated(uint256 _thresholdWeight); - event TotalWeightUpdated(uint256 oldTotalWeight, uint256 newTotalWeight); - event UpdateMinimumWeight(uint256 oldMinimumWeight, uint256 newMinimumWeight); - - constructor(address _delegationManager); - - function deregisterOperator() external; - function getLastCheckpointOperatorWeight(address _operator) external view returns (uint256); - function getLastCheckpointThresholdWeight() external view returns (uint256); - function getLastCheckpointThresholdWeightAtBlock(uint32 _blockNumber) external view returns (uint256); - function getLastCheckpointTotalWeight() external view returns (uint256); - function getLastCheckpointTotalWeightAtBlock(uint32 _blockNumber) external view returns (uint256); - function getLastestOperatorSigningKey(address _operator) external view returns (address); - function getOperatorSigningKeyAtBlock(address _operator, uint256 _blockNumber) external view returns (address); - function getOperatorWeight(address _operator) external view returns (uint256); - function getOperatorWeightAtBlock(address _operator, uint32 _blockNumber) external view returns (uint256); - function initialize(address _serviceManager, uint256 _thresholdWeight, Quorum memory _quorum) external; - function isValidSignature(bytes32 _dataHash, bytes memory _signatureData) external view returns (bytes4); - function minimumWeight() external view returns (uint256); - function operatorRegistered(address _operator) external view returns (bool); - function owner() external view returns (address); - function quorum() external view returns (Quorum memory); - function registerOperatorWithSignature(ISignatureUtils.SignatureWithSaltAndExpiry memory _operatorSignature, address _signingKey) external; - function renounceOwnership() external; - function transferOwnership(address newOwner) external; - function updateMinimumWeight(uint256 _newMinimumWeight, address[] memory _operators) external; - function updateOperatorSigningKey(address _newSigningKey) external; - function updateOperators(address[] memory _operators) external; - function updateOperatorsForQuorum(address[][] memory operatorsPerQuorum, bytes memory) external; - function updateQuorumConfig(Quorum memory _quorum, address[] memory _operators) external; - function updateStakeThreshold(uint256 _thresholdWeight) external; -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "constructor", - "inputs": [ - { - "name": "_delegationManager", - "type": "address", - "internalType": "contract IDelegationManager" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "deregisterOperator", - "inputs": [], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "getLastCheckpointOperatorWeight", - "inputs": [ - { - "name": "_operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getLastCheckpointThresholdWeight", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getLastCheckpointThresholdWeightAtBlock", - "inputs": [ - { - "name": "_blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getLastCheckpointTotalWeight", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getLastCheckpointTotalWeightAtBlock", - "inputs": [ - { - "name": "_blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getLastestOperatorSigningKey", - "inputs": [ - { - "name": "_operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorSigningKeyAtBlock", - "inputs": [ - { - "name": "_operator", - "type": "address", - "internalType": "address" - }, - { - "name": "_blockNumber", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorWeight", - "inputs": [ - { - "name": "_operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorWeightAtBlock", - "inputs": [ - { - "name": "_operator", - "type": "address", - "internalType": "address" - }, - { - "name": "_blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "initialize", - "inputs": [ - { - "name": "_serviceManager", - "type": "address", - "internalType": "address" - }, - { - "name": "_thresholdWeight", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "_quorum", - "type": "tuple", - "internalType": "struct Quorum", - "components": [ - { - "name": "strategies", - "type": "tuple[]", - "internalType": "struct StrategyParams[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ] - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "isValidSignature", - "inputs": [ - { - "name": "_dataHash", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "_signatureData", - "type": "bytes", - "internalType": "bytes" - } - ], - "outputs": [ - { - "name": "", - "type": "bytes4", - "internalType": "bytes4" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "minimumWeight", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "operatorRegistered", - "inputs": [ - { - "name": "_operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "owner", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "quorum", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct Quorum", - "components": [ - { - "name": "strategies", - "type": "tuple[]", - "internalType": "struct StrategyParams[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "registerOperatorWithSignature", - "inputs": [ - { - "name": "_operatorSignature", - "type": "tuple", - "internalType": "struct ISignatureUtils.SignatureWithSaltAndExpiry", - "components": [ - { - "name": "signature", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "salt", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "expiry", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "_signingKey", - "type": "address", - "internalType": "address" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "renounceOwnership", - "inputs": [], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "transferOwnership", - "inputs": [ - { - "name": "newOwner", - "type": "address", - "internalType": "address" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "updateMinimumWeight", - "inputs": [ - { - "name": "_newMinimumWeight", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "_operators", - "type": "address[]", - "internalType": "address[]" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "updateOperatorSigningKey", - "inputs": [ - { - "name": "_newSigningKey", - "type": "address", - "internalType": "address" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "updateOperators", - "inputs": [ - { - "name": "_operators", - "type": "address[]", - "internalType": "address[]" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "updateOperatorsForQuorum", - "inputs": [ - { - "name": "operatorsPerQuorum", - "type": "address[][]", - "internalType": "address[][]" - }, - { - "name": "", - "type": "bytes", - "internalType": "bytes" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "updateQuorumConfig", - "inputs": [ - { - "name": "_quorum", - "type": "tuple", - "internalType": "struct Quorum", - "components": [ - { - "name": "strategies", - "type": "tuple[]", - "internalType": "struct StrategyParams[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ] - }, - { - "name": "_operators", - "type": "address[]", - "internalType": "address[]" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "updateStakeThreshold", - "inputs": [ - { - "name": "_thresholdWeight", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "event", - "name": "Initialized", - "inputs": [ - { - "name": "version", - "type": "uint8", - "indexed": false, - "internalType": "uint8" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "MinimumWeightUpdated", - "inputs": [ - { - "name": "_old", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "_new", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorDeregistered", - "inputs": [ - { - "name": "_operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_avs", - "type": "address", - "indexed": true, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorRegistered", - "inputs": [ - { - "name": "_operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_avs", - "type": "address", - "indexed": true, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorWeightUpdated", - "inputs": [ - { - "name": "_operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "oldWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "newWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OwnershipTransferred", - "inputs": [ - { - "name": "previousOwner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "newOwner", - "type": "address", - "indexed": true, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "QuorumUpdated", - "inputs": [ - { - "name": "_old", - "type": "tuple", - "indexed": false, - "internalType": "struct Quorum", - "components": [ - { - "name": "strategies", - "type": "tuple[]", - "internalType": "struct StrategyParams[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ] - }, - { - "name": "_new", - "type": "tuple", - "indexed": false, - "internalType": "struct Quorum", - "components": [ - { - "name": "strategies", - "type": "tuple[]", - "internalType": "struct StrategyParams[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ] - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "SigningKeyUpdate", - "inputs": [ - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "updateBlock", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - }, - { - "name": "newSigningKey", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "oldSigningKey", - "type": "address", - "indexed": false, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "ThresholdWeightUpdated", - "inputs": [ - { - "name": "_thresholdWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "TotalWeightUpdated", - "inputs": [ - { - "name": "oldTotalWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "newTotalWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "UpdateMinimumWeight", - "inputs": [ - { - "name": "oldMinimumWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "newMinimumWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "error", - "name": "InsufficientSignedStake", - "inputs": [] - }, - { - "type": "error", - "name": "InsufficientWeight", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidLength", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidQuorum", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidReferenceBlock", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidSignature", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidSignedWeight", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidThreshold", - "inputs": [] - }, - { - "type": "error", - "name": "LengthMismatch", - "inputs": [] - }, - { - "type": "error", - "name": "MustUpdateAllOperators", - "inputs": [] - }, - { - "type": "error", - "name": "NotSorted", - "inputs": [] - }, - { - "type": "error", - "name": "OperatorAlreadyRegistered", - "inputs": [] - }, - { - "type": "error", - "name": "OperatorNotRegistered", - "inputs": [] - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod ECDSAStakeRegistry { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x60a034606657601f61242138819003918201601f19168301916001600160401b03831184841017606a57808492602094604052833981010312606657516001600160a01b03811681036066576080526040516123a2908161007f82396080518161135e0152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f5f3560e01c8062cf2ab514610f0c5780630dba339414610ee35780631626ba7e14610bd75780631703a01814610b875780631e4cd85e14610b5e578063314f3a4914610b445780633b242e4a14610b0d5780633d5611f61461092457806340bf2fb7146109065780635140a548146107fa5780635e1042e8146107b45780635ef533291461078f578063696255be14610714578063715018a6146106b7578063743c31f41461066f578063857dc1901461055a5780638da5cb5b14610531578063955f2d90146104e457806398ec1ac9146104b8578063ab11899514610323578063b933fa74146102bb578063cdcd358114610270578063dec5d1f6146101fe578063ec7fbb31146101bf5763f2fde38b1461012c575f80fd5b346101bc5760203660031901126101bc57610145610faf565b61014d611785565b6001600160a01b038116156101685761016590611995565b80f35b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b80fd5b50346101bc5760203660031901126101bc5760209060ff906040906001600160a01b036101ea610faf565b168152606e84522054166040519015158152f35b50346101bc5760403660031901126101bc576004356001600160401b03811161026c5761022f903690600401611100565b602435906001600160401b03821161026857610263610255610165933690600401610fc5565b9161025e611785565b611ac2565b6114d7565b8280fd5b5080fd5b50346101bc5760203660031901126101bc576020906001600160a01b03610295610faf565b168152606a8252604090206001600160a01b03906102b290611752565b16604051908152f35b50346101bc57806003193601126101bc57606c5490816102ed57602091505b6040516001600160e01b03919091168152f35b5f19820191821161030f5750610306602091606c611526565b5054811c6102da565b634e487b7160e01b81526011600452602490fd5b50346101bc5760603660031901126101bc5761033d610faf565b6044356001600160401b0381116102685761035c903690600401611100565b82549060ff8260081c1615928380946104ab575b8015610494575b156104385760ff19831660011785556103c79284610427575b506103a160ff865460081c16611a62565b60018060a01b03166001600160601b0360a01b606854161760685561025e6024356117dd565b6103e060ff835460081c166103db81611a62565b611a62565b6103e933611995565b6103f05780f35b61ff001981541681557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a180f35b61ffff19166101011785555f610390565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b1580156103775750600160ff841614610377565b50600160ff841610610370565b50346101bc5760203660031901126101bc5760206104dc6104d7610faf565b61129e565b604051908152f35b50346101bc5760403660031901126101bc576104fe610faf565b6024359063ffffffff8216809203610268576001600160a01b03168252606d602090815260409092206104dc91906116b5565b50346101bc57806003193601126101bc576033546040516001600160a01b039091168152602090f35b50346101bc57806003193601126101bc57338152606e60205260ff6040822054161561066057606554801561064c575f1901606555338152606e6020526040812060ff1981541690556105b46105af33611c27565b611e24565b505060685481906001600160a01b0316803b15610649578180916024604051809481936351b27a6d60e11b83523360048401525af1801561063e57610629575b506068546001600160a01b0316337f31e0adfec71bccee37b6e83a90c2fedb17d8f1693fee863c4771e7bfe2aed5808380a380f35b8161063391610f77565b6101bc57805f6105f4565b6040513d84823e3d90fd5b50fd5b634e487b7160e01b82526011600452602482fd5b6325ec6c1f60e01b8152600490fd5b50346101bc5760203660031901126101bc57610689610faf565b338252606e60205260ff604083205416156106a85761016590336119dd565b6325ec6c1f60e01b8252600482fd5b50346101bc57806003193601126101bc576106d0611785565b603380546001600160a01b0319811690915581906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b50346101bc5760403660031901126101bc576024356004356001600160401b038211610268577f713ca53b88d6eb63f5b1854cb8cbdd736ec51eda225e46791aa9298b0160648f604061076e610165943690600401610fc5565b92610777611785565b606754908060675582519182526020820152a16114d7565b50346101bc5760203660031901126101bc576107a9611785565b6101656004356117dd565b50346101bc5760403660031901126101bc576020906001600160a01b036107d9610faf565b168152606a8252604090206001600160a01b03906102b290602435906116b5565b50346101bc5760403660031901126101bc576004356001600160401b03811161026c573660238201121561026c5780600401359061083782610f98565b906108456040519283610f77565b828252602082019260051b8101602401833682116109025760248301905b8282106108cf57505050506024356001600160401b0381116108cb5761088d903690600401611061565b5051156108b757518051606554036108a857610165906114d7565b63169efb5b60e11b8252600482fd5b634e487b7160e01b82526032600452602482fd5b8380fd5b81356001600160401b0381116108fe576020916108f3839260243691890101610fc5565b815201910190610863565b8780fd5b8580fd5b50346101bc57806003193601126101bc576020606754604051908152f35b5034610ad2576040366003190112610ad2576004356001600160401b038111610ad25760606003198236030112610ad257604051606081018181106001600160401b03821117610af95760405281600401356001600160401b038111610ad2576109949060043691850101611061565b8152602480830135602083019081526044909301356040830190815290356001600160a01b0381168103610ad257335f52606e60205260ff60405f205416610aea57606554905f198214610ad6576001610a179201606555335f52606e60205260405f20600160ff19825416179055610a0f6105af33611c27565b5050336119dd565b6068546001600160a01b0316803b15610ad257610a635f809460405196879586948593639926ee7d60e01b855233600486015260406024860152516060604486015260a4850190611760565b9151606484015251608483015203925af18015610ac757610ab4575b506068546001600160a01b0316337fa453db612af59e5521d6ab9284dc3e2d06af286eb1b1b7b771fce4716c19f2c18380a380f35b610ac091505f90610f77565b5f5f610a7f565b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52601160045260245ffd5b6342ee68b560e01b5f5260045ffd5b634e487b7160e01b5f52604160045260245ffd5b34610ad2576020366003190112610ad2576001600160a01b03610b2e610faf565b165f52606d60205260206104dc60405f20611752565b34610ad2575f366003190112610ad25760206104dc611745565b34610ad2576020366003190112610ad25760206104dc63ffffffff610b81611033565b16611624565b34610ad2575f366003190112610ad2576060604051610ba581610f41565b52610bd3604051610bb581610f41565b610bbd6111f2565b81526040519182916020835260208301906110a7565b0390f35b34610ad2576040366003190112610ad2576004356024356001600160401b038111610ad257610c0a903690600401611061565b8051810160608260208301920312610ad25760208201516001600160401b038111610ad25782019181603f84011215610ad2576020830151610c4b81610f98565b93610c596040519586610f77565b8185526020808087019360051b8301010190848211610ad257604001915b818310610ec35750505060408101516001600160401b038111610ad257810182603f82011215610ad257602081015190610cb082610f98565b93610cbe6040519586610f77565b8285526020808087019460051b8401010191818311610ad25760408101935b838510610e565788888860608901519163ffffffff8316809303610ad2578051915f5f9582518503610e47578415610e385743861015945f949093925b848610610d8457888888610d7557610d318161153b565b8211610d6657610d4090611624565b11610d5757604051630b135d3f60e11b8152602090f35b63e121632f60e01b5f5260045ffd5b634b05a0f760e11b5f5260045ffd5b63e64f180f60e01b5f5260045ffd5b949793949293926001600160a01b03610d9d8a84611269565b511696610d7557865f52606a6020528660018060a01b03610dc18a60405f206116b5565b16916001600160a01b03161015610e2957610de89083610de18b88611269565b51916120b5565b15610e1a576001610e1087945f985f52606d602052610e0a8a60405f206116b5565b90611291565b9801949392610d1a565b638baa579f60e01b5f5260045ffd5b63ba50f91160e01b5f5260045ffd5b63251f56a160e21b5f5260045ffd5b631fec674760e31b5f5260045ffd5b84516001600160401b038111610ad2576020908301019083603f83011215610ad257602082015190610e8782611046565b610e946040519182610f77565b8281526040848401018610610ad257610eb8602094938594604086850191016111d1565b815201940193610cdd565b82516001600160a01b0381168103610ad257815260209283019201610c77565b34610ad2576020366003190112610ad25760206104dc63ffffffff610f06611033565b1661153b565b34610ad2576020366003190112610ad2576004356001600160401b038111610ad257610263610f3f913690600401610fc5565b005b602081019081106001600160401b03821117610af957604052565b604081019081106001600160401b03821117610af957604052565b90601f801991011681019081106001600160401b03821117610af957604052565b6001600160401b038111610af95760051b60200190565b600435906001600160a01b0382168203610ad257565b9080601f83011215610ad257813590610fdd82610f98565b92610feb6040519485610f77565b82845260208085019360051b820101918211610ad257602001915b8183106110135750505090565b82356001600160a01b0381168103610ad257815260209283019201611006565b6004359063ffffffff82168203610ad257565b6001600160401b038111610af957601f01601f191660200190565b81601f82011215610ad25780359061107882611046565b926110866040519485610f77565b82845260208383010111610ad257815f926020809301838601378301015290565b602060408184019251938281528451809452019201905f5b8181106110cc5750505090565b825180516001600160a01b031685526020908101516001600160601b031681860152604090940193909201916001016110bf565b9190602083820312610ad25760405161111881610f41565b80938035906001600160401b038211610ad2570182601f82011215610ad25780359061114382610f98565b936111516040519586610f77565b82855260208086019360061b83010191818311610ad257602001925b82841061117b575050505052565b604084830312610ad2576040519061119282610f5c565b84356001600160a01b0381168103610ad25782526020850135906001600160601b0382168203610ad2578260209283604095015281520193019261116d565b5f5b8381106111e25750505f910152565b81810151838201526020016111d3565b606654906111ff82610f98565b9161120d6040519384610f77565b80835260665f9081525f51602061234d5f395f51905f52602085015b8383106112365750505050565b60016020819260405161124881610f5c565b8554848060a01b038116825260a01c83820152815201920192019190611229565b805182101561127d5760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b91908201809211610ad657565b6112a66111f2565b805190925f6112cd6112b784610f98565b936112c56040519586610f77565b808552610f98565b6020840190601f19013682375f5b865181101561130d576001906001600160a01b036112f9828a611269565b5151166113068288611269565b52016112db565b5060408051639004134760e01b81526001600160a01b0390961660048701526024860152925160448501819052919390929091829160648301915f5b81811061149a57505f939283900391508290507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610ac7575f9161140a575b505f915b84518310156113ec576113ad8383611269565b51906001600160601b0360206113c38689611269565b5101511691828102928184041490151715610ad6576001916113e491611291565b92019161139a565b915050612710919250046067548110155f146114055790565b505f90565b90503d805f833e61141b8183610f77565b810190602081830312610ad2578051906001600160401b038211610ad257019080601f83011215610ad257815161145181610f98565b9261145f6040519485610f77565b81845260208085019260051b820101928311610ad257602001905b82821061148a575050505f611396565b815181526020918201910161147a565b82516001600160a01b0316845285945060209384019390920191600101611349565b9190915f8382019384129112908015821691151617610ad657565b905f805b83518210156115155760019061150d906115076001600160a01b036115008689611269565b5116611c27565b906114bc565b9101906114db565b9050611522919250611e24565b5050565b805482101561127d575f5260205f2001905f90565b438110156115e057606b54905f905b8282106115875750508061156757505f5b6001600160e01b031690565b5f198101908111610ad65761157d90606b611526565b505460201c61155b565b909161159a81841860011c828516611291565b908263ffffffff6115ac84606b611526565b50541611156115be5750915b9061154a565b925060018101809111156115b857634e487b7160e01b5f52601160045260245ffd5b606460405162461bcd60e51b815260206004820152602060248201527f436865636b706f696e74733a20626c6f636b206e6f7420796574206d696e65646044820152fd5b438110156115e057606c54905f905b82821061165c5750508061164657505f90565b5f198101908111610ad65761157d90606c611526565b909161166f81841860011c828516611291565b908263ffffffff61168184606c611526565b50541611156116935750915b90611633565b9250600181018091111561168d57634e487b7160e01b5f52601160045260245ffd5b90438110156115e0578154905f905b8282106116ed575050806116d957505f919050565b5f198101908111610ad65761157d91611526565b909161170081841860011c828516611291565b908263ffffffff6117118488611526565b50541611156117235750915b906116c4565b9250600181018091111561171d57634e487b7160e01b5f52601160045260245ffd5b606b548061156757505f90565b8054806116d957505f919050565b90602091611779815180928185528580860191016111d1565b601f01601f1916010190565b6033546001600160a01b0316330361179957565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b606c54906117eb606c611752565b908215158061196f575b1561186357611803816121cd565b915f198401938411610ad6576118596020936118417f9324f7e5a7c0288808a634ccde44b8e979676474b22e29ee9dd569b55e791a4b96606c611526565b509063ffffffff82549181199060201b169116179055565b50604051908152a1565b63ffffffff431161191b57611877816121cd565b916040519361188585610f5c565b4363ffffffff1685526001600160e01b039093166020850190815292600160401b811015610af9578060016118bf9201606c55606c611526565b9490946119085751925163ffffffff90931663ffffffff19602094851b16179093557f9324f7e5a7c0288808a634ccde44b8e979676474b22e29ee9dd569b55e791a4b92611859565b634e487b7160e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203360448201526532206269747360d01b6064820152608490fd5b505f198301838111610ad65761198b63ffffffff91606c611526565b50541643146117f5565b603380546001600160a01b039283166001600160a01b0319821681179092559091167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3565b6001600160a01b039081165f818152606a6020526040902090929190611a0290611752565b6001600160a01b0390921692911690828214611a5d57805f52606a602052611a2d8360405f20611f52565b50506040519182527fd061168252f441733658f09e4d8f5b2d998ed4ef24a2bbfd6ceca52ea131500260204393a4565b505050565b15611a6957565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b611acb8161203b565b15611c005760405191611add83610f41565b611ae56111f2565b83526066545f60665580611bc6575b505f5b82518051821015611b735781611b0c91611269565b519060665491600160401b831015610af9576001830160665560665483101561127d5760665f5280516020919091015160a01b6001600160a01b0319166001600160a01b0391909116175f51602061234d5f395f51905f5290920191909155600101611af7565b505091611bb390611bc17f23aad4e61744ece164130aa415c1616e80136b0f0770e56589438b90b269265e936040519384936040855260408501906110a7565b9083820360208501526110a7565b0390a1565b60665f525f51602061234d5f395f51905f52015f51602061234d5f395f51905f525b818110611bf55750611af4565b5f8155600101611be8565b63d173577960e01b5f5260045ffd5b81810392915f138015828513169184121617610ad657565b6001600160a01b0381165f818152606d602052604081209092908390611c4c90611752565b8094845f52606e60205260ff60405f205416155f14611dc657611c70929350611c0f565b928315611dc057825f52606d60205260405f2090815492611c9083611752565b84151580611d9b575b15611cf457611ca75f6121cd565b945f198101908111610ad6577f88770dc862e47a7ed586907857eb1b75e4c5ffc8b707c7ee10eb74d6885fe59495611841611ce492604097611526565b505b82519182526020820152a290565b63ffffffff431161191b57611d085f6121cd565b9360405195611d1687610f5c565b4363ffffffff1687526001600160e01b039095166020870190815294600160401b811015610af957611d4d91600182018155611526565b9590956119085751935160201b63ffffffff191663ffffffff94909416939093179093557f88770dc862e47a7ed586907857eb1b75e4c5ffc8b707c7ee10eb74d6885fe59492604092611ce4565b505f198501858111610ad657611db663ffffffff9186611526565b5054164314611c99565b50505090565b505050611dd29061129e565b91611ddd8184611c0f565b928315611dc0577f88770dc862e47a7ed586907857eb1b75e4c5ffc8b707c7ee10eb74d6885fe59491604091845f52606d602052611e1d81845f20611f52565b5050611ce6565b90611e37611e30611745565b92836114bc565b90606b54611e45606b611752565b9080151580611f2c575b15611ea857611e5d846121cd565b5f198201918211610ad657611841611e7692606b611526565b507f86dcf86b12dfeedea74ae9300dbdaa193bcce5809369c8177ea2f4eaaa65729b60408051858152846020820152a1565b63ffffffff431161191b57611ebc846121cd565b60405191611ec983610f5c565b4363ffffffff1683526001600160e01b039091166020830190815290600160401b811015610af957806001611f039201606b55606b611526565b919091611908579151915160201b63ffffffff191663ffffffff92909216919091179055611e76565b505f198101818111610ad657611f4863ffffffff91606b611526565b5054164314611e4f565b9190918054611f6082611752565b9181151580612016575b15611f9557611f78856121cd565b905f198301928311610ad657611f919261184191611526565b9190565b63ffffffff431161191b57611fa9856121cd565b9060405192611fb784610f5c565b4363ffffffff1684526001600160e01b039092166020840190815291600160401b811015610af957611fee91600182018155611526565b919091611908579151915160201b63ffffffff191663ffffffff929092169190911790559190565b505f198201828111610ad65761203163ffffffff9183611526565b5054164314611f6a565b51905f80805b845182101561209e576001600160a01b0361205c8387611269565b515116906001600160a01b0316811115610e2957612095600191936001600160601b03602061208b868a611269565b5101511690611291565b91019091612041565b509192506127101490506120b0575f90565b600190565b9190916120c2828461223c565b60058110156121b9571590816121a3575b5061219b575f9261210d61211b85946040519283916020830195630b135d3f60e11b87526024840152604060448401526064830190611760565b03601f198101835282610f77565b51915afa3d15612194573d61212f81611046565b9061213d6040519283610f77565b81523d5f602083013e5b81612188575b81612156575090565b9050602081805181010312610ad257602001516001600160e01b0319811690819003610ad257630b135d3f60e11b1490565b8051602014915061214d565b6060612147565b505050600190565b6001600160a01b0383811691161490505f6120d3565b634e487b7160e01b5f52602160045260245ffd5b6001600160e01b0381116121e7576001600160e01b031690565b60405162461bcd60e51b815260206004820152602760248201527f53616665436173743a2076616c756520646f65736e27742066697420696e20326044820152663234206269747360c81b6064820152608490fd5b81516041810361226857509061226491602082015190606060408401519301515f1a906122aa565b9091565b6040036122a15760406020830151920151918260ff1c91601b8301809311610ad657612264936001600160ff1b03169260ff16906122aa565b50505f90600290565b907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084116123415760ff1690601b82141580612336575b61232b576020935f93608093604051938452868401526040830152606082015282805260015afa15610ac7575f516001600160a01b0381161561232357905f90565b505f90600190565b505050505f90600490565b50601c8214156122e1565b505050505f9060039056fe46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e94354a2646970667358221220ed9c9d918ad07fbcfe8d00c4a3e0c7c5fe4ba44aeec54f157a5222eff31a28a264736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\xA04`fW`\x1Fa$!8\x81\x90\x03\x91\x82\x01`\x1F\x19\x16\x83\x01\x91`\x01`\x01`@\x1B\x03\x83\x11\x84\x84\x10\x17`jW\x80\x84\x92` \x94`@R\x839\x81\x01\x03\x12`fWQ`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x03`fW`\x80R`@Qa#\xA2\x90\x81a\0\x7F\x829`\x80Q\x81a\x13^\x01R\xF3[_\x80\xFD[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD\xFE`\x80`@R`\x046\x10\x15a\0\x11W_\x80\xFD[__5`\xE0\x1C\x80b\xCF*\xB5\x14a\x0F\x0CW\x80c\r\xBA3\x94\x14a\x0E\xE3W\x80c\x16&\xBA~\x14a\x0B\xD7W\x80c\x17\x03\xA0\x18\x14a\x0B\x87W\x80c\x1EL\xD8^\x14a\x0B^W\x80c1O:I\x14a\x0BDW\x80c;$.J\x14a\x0B\rW\x80c=V\x11\xF6\x14a\t$W\x80c@\xBF/\xB7\x14a\t\x06W\x80cQ@\xA5H\x14a\x07\xFAW\x80c^\x10B\xE8\x14a\x07\xB4W\x80c^\xF53)\x14a\x07\x8FW\x80cibU\xBE\x14a\x07\x14W\x80cqP\x18\xA6\x14a\x06\xB7W\x80ct<1\xF4\x14a\x06oW\x80c\x85}\xC1\x90\x14a\x05ZW\x80c\x8D\xA5\xCB[\x14a\x051W\x80c\x95_-\x90\x14a\x04\xE4W\x80c\x98\xEC\x1A\xC9\x14a\x04\xB8W\x80c\xAB\x11\x89\x95\x14a\x03#W\x80c\xB93\xFAt\x14a\x02\xBBW\x80c\xCD\xCD5\x81\x14a\x02pW\x80c\xDE\xC5\xD1\xF6\x14a\x01\xFEW\x80c\xEC\x7F\xBB1\x14a\x01\xBFWc\xF2\xFD\xE3\x8B\x14a\x01,W_\x80\xFD[4a\x01\xBCW` 6`\x03\x19\x01\x12a\x01\xBCWa\x01Ea\x0F\xAFV[a\x01Ma\x17\x85V[`\x01`\x01`\xA0\x1B\x03\x81\x16\x15a\x01hWa\x01e\x90a\x19\x95V[\x80\xF3[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FOwnable: new owner is the zero a`D\x82\x01Reddress`\xD0\x1B`d\x82\x01R`\x84\x90\xFD[\x80\xFD[P4a\x01\xBCW` 6`\x03\x19\x01\x12a\x01\xBCW` \x90`\xFF\x90`@\x90`\x01`\x01`\xA0\x1B\x03a\x01\xEAa\x0F\xAFV[\x16\x81R`n\x84R T\x16`@Q\x90\x15\x15\x81R\xF3[P4a\x01\xBCW`@6`\x03\x19\x01\x12a\x01\xBCW`\x045`\x01`\x01`@\x1B\x03\x81\x11a\x02lWa\x02/\x906\x90`\x04\x01a\x11\0V[`$5\x90`\x01`\x01`@\x1B\x03\x82\x11a\x02hWa\x02ca\x02Ua\x01e\x936\x90`\x04\x01a\x0F\xC5V[\x91a\x02^a\x17\x85V[a\x1A\xC2V[a\x14\xD7V[\x82\x80\xFD[P\x80\xFD[P4a\x01\xBCW` 6`\x03\x19\x01\x12a\x01\xBCW` \x90`\x01`\x01`\xA0\x1B\x03a\x02\x95a\x0F\xAFV[\x16\x81R`j\x82R`@\x90 `\x01`\x01`\xA0\x1B\x03\x90a\x02\xB2\x90a\x17RV[\x16`@Q\x90\x81R\xF3[P4a\x01\xBCW\x80`\x03\x196\x01\x12a\x01\xBCW`lT\x90\x81a\x02\xEDW` \x91P[`@Q`\x01`\x01`\xE0\x1B\x03\x91\x90\x91\x16\x81R\xF3[_\x19\x82\x01\x91\x82\x11a\x03\x0FWPa\x03\x06` \x91`la\x15&V[PT\x81\x1Ca\x02\xDAV[cNH{q`\xE0\x1B\x81R`\x11`\x04R`$\x90\xFD[P4a\x01\xBCW``6`\x03\x19\x01\x12a\x01\xBCWa\x03=a\x0F\xAFV[`D5`\x01`\x01`@\x1B\x03\x81\x11a\x02hWa\x03\\\x906\x90`\x04\x01a\x11\0V[\x82T\x90`\xFF\x82`\x08\x1C\x16\x15\x92\x83\x80\x94a\x04\xABW[\x80\x15a\x04\x94W[\x15a\x048W`\xFF\x19\x83\x16`\x01\x17\x85Ua\x03\xC7\x92\x84a\x04'W[Pa\x03\xA1`\xFF\x86T`\x08\x1C\x16a\x1AbV[`\x01\x80`\xA0\x1B\x03\x16`\x01`\x01``\x1B\x03`\xA0\x1B`hT\x16\x17`hUa\x02^`$5a\x17\xDDV[a\x03\xE0`\xFF\x83T`\x08\x1C\x16a\x03\xDB\x81a\x1AbV[a\x1AbV[a\x03\xE93a\x19\x95V[a\x03\xF0W\x80\xF3[a\xFF\0\x19\x81T\x16\x81U\x7F\x7F&\xB8?\xF9n\x1F+jh/\x138R\xF6y\x8A\t\xC4e\xDA\x95\x92\x14`\xCE\xFB8G@$\x98` `@Q`\x01\x81R\xA1\x80\xF3[a\xFF\xFF\x19\x16a\x01\x01\x17\x85U_a\x03\x90V[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`.`$\x82\x01R\x7FInitializable: contract is alrea`D\x82\x01Rm\x19\x1EH\x1A[\x9A]\x1AX[\x1A^\x99Y`\x92\x1B`d\x82\x01R`\x84\x90\xFD[P0;\x15\x80\x15a\x03wWP`\x01`\xFF\x84\x16\x14a\x03wV[P`\x01`\xFF\x84\x16\x10a\x03pV[P4a\x01\xBCW` 6`\x03\x19\x01\x12a\x01\xBCW` a\x04\xDCa\x04\xD7a\x0F\xAFV[a\x12\x9EV[`@Q\x90\x81R\xF3[P4a\x01\xBCW`@6`\x03\x19\x01\x12a\x01\xBCWa\x04\xFEa\x0F\xAFV[`$5\x90c\xFF\xFF\xFF\xFF\x82\x16\x80\x92\x03a\x02hW`\x01`\x01`\xA0\x1B\x03\x16\x82R`m` \x90\x81R`@\x90\x92 a\x04\xDC\x91\x90a\x16\xB5V[P4a\x01\xBCW\x80`\x03\x196\x01\x12a\x01\xBCW`3T`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x90\xF3[P4a\x01\xBCW\x80`\x03\x196\x01\x12a\x01\xBCW3\x81R`n` R`\xFF`@\x82 T\x16\x15a\x06`W`eT\x80\x15a\x06LW_\x19\x01`eU3\x81R`n` R`@\x81 `\xFF\x19\x81T\x16\x90Ua\x05\xB4a\x05\xAF3a\x1C'V[a\x1E$V[PP`hT\x81\x90`\x01`\x01`\xA0\x1B\x03\x16\x80;\x15a\x06IW\x81\x80\x91`$`@Q\x80\x94\x81\x93cQ\xB2zm`\xE1\x1B\x83R3`\x04\x84\x01RZ\xF1\x80\x15a\x06>Wa\x06)W[P`hT`\x01`\x01`\xA0\x1B\x03\x163\x7F1\xE0\xAD\xFE\xC7\x1B\xCC\xEE7\xB6\xE8:\x90\xC2\xFE\xDB\x17\xD8\xF1i?\xEE\x86=\x90\xFD[P\xFD[cNH{q`\xE0\x1B\x82R`\x11`\x04R`$\x82\xFD[c%\xECl\x1F`\xE0\x1B\x81R`\x04\x90\xFD[P4a\x01\xBCW` 6`\x03\x19\x01\x12a\x01\xBCWa\x06\x89a\x0F\xAFV[3\x82R`n` R`\xFF`@\x83 T\x16\x15a\x06\xA8Wa\x01e\x903a\x19\xDDV[c%\xECl\x1F`\xE0\x1B\x82R`\x04\x82\xFD[P4a\x01\xBCW\x80`\x03\x196\x01\x12a\x01\xBCWa\x06\xD0a\x17\x85V[`3\x80T`\x01`\x01`\xA0\x1B\x03\x19\x81\x16\x90\x91U\x81\x90`\x01`\x01`\xA0\x1B\x03\x16\x7F\x8B\xE0\x07\x9CS\x16Y\x14\x13D\xCD\x1F\xD0\xA4\xF2\x84\x19I\x7F\x97\"\xA3\xDA\xAF\xE3\xB4\x18okdW\xE0\x82\x80\xA3\x80\xF3[P4a\x01\xBCW`@6`\x03\x19\x01\x12a\x01\xBCW`$5`\x045`\x01`\x01`@\x1B\x03\x82\x11a\x02hW\x7Fq<\xA5;\x88\xD6\xEBc\xF5\xB1\x85L\xB8\xCB\xDDsn\xC5\x1E\xDA\"^Fy\x1A\xA9)\x8B\x01`d\x8F`@a\x07na\x01e\x946\x90`\x04\x01a\x0F\xC5V[\x92a\x07wa\x17\x85V[`gT\x90\x80`gU\x82Q\x91\x82R` \x82\x01R\xA1a\x14\xD7V[P4a\x01\xBCW` 6`\x03\x19\x01\x12a\x01\xBCWa\x07\xA9a\x17\x85V[a\x01e`\x045a\x17\xDDV[P4a\x01\xBCW`@6`\x03\x19\x01\x12a\x01\xBCW` \x90`\x01`\x01`\xA0\x1B\x03a\x07\xD9a\x0F\xAFV[\x16\x81R`j\x82R`@\x90 `\x01`\x01`\xA0\x1B\x03\x90a\x02\xB2\x90`$5\x90a\x16\xB5V[P4a\x01\xBCW`@6`\x03\x19\x01\x12a\x01\xBCW`\x045`\x01`\x01`@\x1B\x03\x81\x11a\x02lW6`#\x82\x01\x12\x15a\x02lW\x80`\x04\x015\x90a\x087\x82a\x0F\x98V[\x90a\x08E`@Q\x92\x83a\x0FwV[\x82\x82R` \x82\x01\x92`\x05\x1B\x81\x01`$\x01\x836\x82\x11a\t\x02W`$\x83\x01\x90[\x82\x82\x10a\x08\xCFWPPPP`$5`\x01`\x01`@\x1B\x03\x81\x11a\x08\xCBWa\x08\x8D\x906\x90`\x04\x01a\x10aV[PQ\x15a\x08\xB7WQ\x80Q`eT\x03a\x08\xA8Wa\x01e\x90a\x14\xD7V[c\x16\x9E\xFB[`\xE1\x1B\x82R`\x04\x82\xFD[cNH{q`\xE0\x1B\x82R`2`\x04R`$\x82\xFD[\x83\x80\xFD[\x815`\x01`\x01`@\x1B\x03\x81\x11a\x08\xFEW` \x91a\x08\xF3\x83\x92`$6\x91\x89\x01\x01a\x0F\xC5V[\x81R\x01\x91\x01\x90a\x08cV[\x87\x80\xFD[\x85\x80\xFD[P4a\x01\xBCW\x80`\x03\x196\x01\x12a\x01\xBCW` `gT`@Q\x90\x81R\xF3[P4a\n\xD2W`@6`\x03\x19\x01\x12a\n\xD2W`\x045`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2W```\x03\x19\x826\x03\x01\x12a\n\xD2W`@Q``\x81\x01\x81\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\n\xF9W`@R\x81`\x04\x015`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2Wa\t\x94\x90`\x046\x91\x85\x01\x01a\x10aV[\x81R`$\x80\x83\x015` \x83\x01\x90\x81R`D\x90\x93\x015`@\x83\x01\x90\x81R\x905`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x03a\n\xD2W3_R`n` R`\xFF`@_ T\x16a\n\xEAW`eT\x90_\x19\x82\x14a\n\xD6W`\x01a\n\x17\x92\x01`eU3_R`n` R`@_ `\x01`\xFF\x19\x82T\x16\x17\x90Ua\n\x0Fa\x05\xAF3a\x1C'V[PP3a\x19\xDDV[`hT`\x01`\x01`\xA0\x1B\x03\x16\x80;\x15a\n\xD2Wa\nc_\x80\x94`@Q\x96\x87\x95\x86\x94\x85\x93c\x99&\xEE}`\xE0\x1B\x85R3`\x04\x86\x01R`@`$\x86\x01RQ```D\x86\x01R`\xA4\x85\x01\x90a\x17`V[\x91Q`d\x84\x01RQ`\x84\x83\x01R\x03\x92Z\xF1\x80\x15a\n\xC7Wa\n\xB4W[P`hT`\x01`\x01`\xA0\x1B\x03\x163\x7F\xA4S\xDBa*\xF5\x9EU!\xD6\xAB\x92\x84\xDC>-\x06\xAF(n\xB1\xB1\xB7\xB7q\xFC\xE4ql\x19\xF2\xC1\x83\x80\xA3\x80\xF3[a\n\xC0\x91P_\x90a\x0FwV[__a\n\x7FV[`@Q=_\x82>=\x90\xFD[_\x80\xFD[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[cB\xEEh\xB5`\xE0\x1B_R`\x04_\xFD[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[4a\n\xD2W` 6`\x03\x19\x01\x12a\n\xD2W`\x01`\x01`\xA0\x1B\x03a\x0B.a\x0F\xAFV[\x16_R`m` R` a\x04\xDC`@_ a\x17RV[4a\n\xD2W_6`\x03\x19\x01\x12a\n\xD2W` a\x04\xDCa\x17EV[4a\n\xD2W` 6`\x03\x19\x01\x12a\n\xD2W` a\x04\xDCc\xFF\xFF\xFF\xFFa\x0B\x81a\x103V[\x16a\x16$V[4a\n\xD2W_6`\x03\x19\x01\x12a\n\xD2W```@Qa\x0B\xA5\x81a\x0FAV[Ra\x0B\xD3`@Qa\x0B\xB5\x81a\x0FAV[a\x0B\xBDa\x11\xF2V[\x81R`@Q\x91\x82\x91` \x83R` \x83\x01\x90a\x10\xA7V[\x03\x90\xF3[4a\n\xD2W`@6`\x03\x19\x01\x12a\n\xD2W`\x045`$5`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2Wa\x0C\n\x906\x90`\x04\x01a\x10aV[\x80Q\x81\x01``\x82` \x83\x01\x92\x03\x12a\n\xD2W` \x82\x01Q`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2W\x82\x01\x91\x81`?\x84\x01\x12\x15a\n\xD2W` \x83\x01Qa\x0CK\x81a\x0F\x98V[\x93a\x0CY`@Q\x95\x86a\x0FwV[\x81\x85R` \x80\x80\x87\x01\x93`\x05\x1B\x83\x01\x01\x01\x90\x84\x82\x11a\n\xD2W`@\x01\x91[\x81\x83\x10a\x0E\xC3WPPP`@\x81\x01Q`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2W\x81\x01\x82`?\x82\x01\x12\x15a\n\xD2W` \x81\x01Q\x90a\x0C\xB0\x82a\x0F\x98V[\x93a\x0C\xBE`@Q\x95\x86a\x0FwV[\x82\x85R` \x80\x80\x87\x01\x94`\x05\x1B\x84\x01\x01\x01\x91\x81\x83\x11a\n\xD2W`@\x81\x01\x93[\x83\x85\x10a\x0EVW\x88\x88\x88``\x89\x01Q\x91c\xFF\xFF\xFF\xFF\x83\x16\x80\x93\x03a\n\xD2W\x80Q\x91__\x95\x82Q\x85\x03a\x0EGW\x84\x15a\x0E8WC\x86\x10\x15\x94_\x94\x90\x93\x92[\x84\x86\x10a\r\x84W\x88\x88\x88a\ruWa\r1\x81a\x15;V[\x82\x11a\rfWa\r@\x90a\x16$V[\x11a\rWW`@Qc\x0B\x13]?`\xE1\x1B\x81R` \x90\xF3[c\xE1!c/`\xE0\x1B_R`\x04_\xFD[cK\x05\xA0\xF7`\xE1\x1B_R`\x04_\xFD[c\xE6O\x18\x0F`\xE0\x1B_R`\x04_\xFD[\x94\x97\x93\x94\x92\x93\x92`\x01`\x01`\xA0\x1B\x03a\r\x9D\x8A\x84a\x12iV[Q\x16\x96a\ruW\x86_R`j` R\x86`\x01\x80`\xA0\x1B\x03a\r\xC1\x8A`@_ a\x16\xB5V[\x16\x91`\x01`\x01`\xA0\x1B\x03\x16\x10\x15a\x0E)Wa\r\xE8\x90\x83a\r\xE1\x8B\x88a\x12iV[Q\x91a \xB5V[\x15a\x0E\x1AW`\x01a\x0E\x10\x87\x94_\x98_R`m` Ra\x0E\n\x8A`@_ a\x16\xB5V[\x90a\x12\x91V[\x98\x01\x94\x93\x92a\r\x1AV[c\x8B\xAAW\x9F`\xE0\x1B_R`\x04_\xFD[c\xBAP\xF9\x11`\xE0\x1B_R`\x04_\xFD[c%\x1FV\xA1`\xE2\x1B_R`\x04_\xFD[c\x1F\xECgG`\xE3\x1B_R`\x04_\xFD[\x84Q`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2W` \x90\x83\x01\x01\x90\x83`?\x83\x01\x12\x15a\n\xD2W` \x82\x01Q\x90a\x0E\x87\x82a\x10FV[a\x0E\x94`@Q\x91\x82a\x0FwV[\x82\x81R`@\x84\x84\x01\x01\x86\x10a\n\xD2Wa\x0E\xB8` \x94\x93\x85\x94`@\x86\x85\x01\x91\x01a\x11\xD1V[\x81R\x01\x94\x01\x93a\x0C\xDDV[\x82Q`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x03a\n\xD2W\x81R` \x92\x83\x01\x92\x01a\x0CwV[4a\n\xD2W` 6`\x03\x19\x01\x12a\n\xD2W` a\x04\xDCc\xFF\xFF\xFF\xFFa\x0F\x06a\x103V[\x16a\x15;V[4a\n\xD2W` 6`\x03\x19\x01\x12a\n\xD2W`\x045`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2Wa\x02ca\x0F?\x916\x90`\x04\x01a\x0F\xC5V[\0[` \x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\n\xF9W`@RV[`@\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\n\xF9W`@RV[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\n\xF9W`@RV[`\x01`\x01`@\x1B\x03\x81\x11a\n\xF9W`\x05\x1B` \x01\x90V[`\x045\x90`\x01`\x01`\xA0\x1B\x03\x82\x16\x82\x03a\n\xD2WV[\x90\x80`\x1F\x83\x01\x12\x15a\n\xD2W\x815\x90a\x0F\xDD\x82a\x0F\x98V[\x92a\x0F\xEB`@Q\x94\x85a\x0FwV[\x82\x84R` \x80\x85\x01\x93`\x05\x1B\x82\x01\x01\x91\x82\x11a\n\xD2W` \x01\x91[\x81\x83\x10a\x10\x13WPPP\x90V[\x825`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x03a\n\xD2W\x81R` \x92\x83\x01\x92\x01a\x10\x06V[`\x045\x90c\xFF\xFF\xFF\xFF\x82\x16\x82\x03a\n\xD2WV[`\x01`\x01`@\x1B\x03\x81\x11a\n\xF9W`\x1F\x01`\x1F\x19\x16` \x01\x90V[\x81`\x1F\x82\x01\x12\x15a\n\xD2W\x805\x90a\x10x\x82a\x10FV[\x92a\x10\x86`@Q\x94\x85a\x0FwV[\x82\x84R` \x83\x83\x01\x01\x11a\n\xD2W\x81_\x92` \x80\x93\x01\x83\x86\x017\x83\x01\x01R\x90V[` `@\x81\x84\x01\x92Q\x93\x82\x81R\x84Q\x80\x94R\x01\x92\x01\x90_[\x81\x81\x10a\x10\xCCWPPP\x90V[\x82Q\x80Q`\x01`\x01`\xA0\x1B\x03\x16\x85R` \x90\x81\x01Q`\x01`\x01``\x1B\x03\x16\x81\x86\x01R`@\x90\x94\x01\x93\x90\x92\x01\x91`\x01\x01a\x10\xBFV[\x91\x90` \x83\x82\x03\x12a\n\xD2W`@Qa\x11\x18\x81a\x0FAV[\x80\x93\x805\x90`\x01`\x01`@\x1B\x03\x82\x11a\n\xD2W\x01\x82`\x1F\x82\x01\x12\x15a\n\xD2W\x805\x90a\x11C\x82a\x0F\x98V[\x93a\x11Q`@Q\x95\x86a\x0FwV[\x82\x85R` \x80\x86\x01\x93`\x06\x1B\x83\x01\x01\x91\x81\x83\x11a\n\xD2W` \x01\x92[\x82\x84\x10a\x11{WPPPPRV[`@\x84\x83\x03\x12a\n\xD2W`@Q\x90a\x11\x92\x82a\x0F\\V[\x845`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x03a\n\xD2W\x82R` \x85\x015\x90`\x01`\x01``\x1B\x03\x82\x16\x82\x03a\n\xD2W\x82` \x92\x83`@\x95\x01R\x81R\x01\x93\x01\x92a\x11mV[_[\x83\x81\x10a\x11\xE2WPP_\x91\x01RV[\x81\x81\x01Q\x83\x82\x01R` \x01a\x11\xD3V[`fT\x90a\x11\xFF\x82a\x0F\x98V[\x91a\x12\r`@Q\x93\x84a\x0FwV[\x80\x83R`f_\x90\x81R_Q` a#M_9_Q\x90_R` \x85\x01[\x83\x83\x10a\x126WPPPPV[`\x01` \x81\x92`@Qa\x12H\x81a\x0F\\V[\x85T\x84\x80`\xA0\x1B\x03\x81\x16\x82R`\xA0\x1C\x83\x82\x01R\x81R\x01\x92\x01\x92\x01\x91\x90a\x12)V[\x80Q\x82\x10\x15a\x12}W` \x91`\x05\x1B\x01\x01\x90V[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[\x91\x90\x82\x01\x80\x92\x11a\n\xD6WV[a\x12\xA6a\x11\xF2V[\x80Q\x90\x92_a\x12\xCDa\x12\xB7\x84a\x0F\x98V[\x93a\x12\xC5`@Q\x95\x86a\x0FwV[\x80\x85Ra\x0F\x98V[` \x84\x01\x90`\x1F\x19\x016\x827_[\x86Q\x81\x10\x15a\x13\rW`\x01\x90`\x01`\x01`\xA0\x1B\x03a\x12\xF9\x82\x8Aa\x12iV[QQ\x16a\x13\x06\x82\x88a\x12iV[R\x01a\x12\xDBV[P`@\x80Qc\x90\x04\x13G`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x90\x96\x16`\x04\x87\x01R`$\x86\x01R\x92Q`D\x85\x01\x81\x90R\x91\x93\x90\x92\x90\x91\x82\x91`d\x83\x01\x91_[\x81\x81\x10a\x14\x9AWP_\x93\x92\x83\x90\x03\x91P\x82\x90P\x7F\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\x01`\x01`\xA0\x1B\x03\x16Z\xFA\x90\x81\x15a\n\xC7W_\x91a\x14\nW[P_\x91[\x84Q\x83\x10\x15a\x13\xECWa\x13\xAD\x83\x83a\x12iV[Q\x90`\x01`\x01``\x1B\x03` a\x13\xC3\x86\x89a\x12iV[Q\x01Q\x16\x91\x82\x81\x02\x92\x81\x84\x04\x14\x90\x15\x17\x15a\n\xD6W`\x01\x91a\x13\xE4\x91a\x12\x91V[\x92\x01\x91a\x13\x9AV[\x91PPa'\x10\x91\x92P\x04`gT\x81\x10\x15_\x14a\x14\x05W\x90V[P_\x90V[\x90P=\x80_\x83>a\x14\x1B\x81\x83a\x0FwV[\x81\x01\x90` \x81\x83\x03\x12a\n\xD2W\x80Q\x90`\x01`\x01`@\x1B\x03\x82\x11a\n\xD2W\x01\x90\x80`\x1F\x83\x01\x12\x15a\n\xD2W\x81Qa\x14Q\x81a\x0F\x98V[\x92a\x14_`@Q\x94\x85a\x0FwV[\x81\x84R` \x80\x85\x01\x92`\x05\x1B\x82\x01\x01\x92\x83\x11a\n\xD2W` \x01\x90[\x82\x82\x10a\x14\x8AWPPP_a\x13\x96V[\x81Q\x81R` \x91\x82\x01\x91\x01a\x14zV[\x82Q`\x01`\x01`\xA0\x1B\x03\x16\x84R\x85\x94P` \x93\x84\x01\x93\x90\x92\x01\x91`\x01\x01a\x13IV[\x91\x90\x91_\x83\x82\x01\x93\x84\x12\x91\x12\x90\x80\x15\x82\x16\x91\x15\x16\x17a\n\xD6WV[\x90_\x80[\x83Q\x82\x10\x15a\x15\x15W`\x01\x90a\x15\r\x90a\x15\x07`\x01`\x01`\xA0\x1B\x03a\x15\0\x86\x89a\x12iV[Q\x16a\x1C'V[\x90a\x14\xBCV[\x91\x01\x90a\x14\xDBV[\x90Pa\x15\"\x91\x92Pa\x1E$V[PPV[\x80T\x82\x10\x15a\x12}W_R` _ \x01\x90_\x90V[C\x81\x10\x15a\x15\xE0W`kT\x90_\x90[\x82\x82\x10a\x15\x87WPP\x80a\x15gWP_[`\x01`\x01`\xE0\x1B\x03\x16\x90V[_\x19\x81\x01\x90\x81\x11a\n\xD6Wa\x15}\x90`ka\x15&V[PT` \x1Ca\x15[V[\x90\x91a\x15\x9A\x81\x84\x18`\x01\x1C\x82\x85\x16a\x12\x91V[\x90\x82c\xFF\xFF\xFF\xFFa\x15\xAC\x84`ka\x15&V[PT\x16\x11\x15a\x15\xBEWP\x91[\x90a\x15JV[\x92P`\x01\x81\x01\x80\x91\x11\x15a\x15\xB8WcNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[`d`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R` `$\x82\x01R\x7FCheckpoints: block not yet mined`D\x82\x01R\xFD[C\x81\x10\x15a\x15\xE0W`lT\x90_\x90[\x82\x82\x10a\x16\\WPP\x80a\x16FWP_\x90V[_\x19\x81\x01\x90\x81\x11a\n\xD6Wa\x15}\x90`la\x15&V[\x90\x91a\x16o\x81\x84\x18`\x01\x1C\x82\x85\x16a\x12\x91V[\x90\x82c\xFF\xFF\xFF\xFFa\x16\x81\x84`la\x15&V[PT\x16\x11\x15a\x16\x93WP\x91[\x90a\x163V[\x92P`\x01\x81\x01\x80\x91\x11\x15a\x16\x8DWcNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[\x90C\x81\x10\x15a\x15\xE0W\x81T\x90_\x90[\x82\x82\x10a\x16\xEDWPP\x80a\x16\xD9WP_\x91\x90PV[_\x19\x81\x01\x90\x81\x11a\n\xD6Wa\x15}\x91a\x15&V[\x90\x91a\x17\0\x81\x84\x18`\x01\x1C\x82\x85\x16a\x12\x91V[\x90\x82c\xFF\xFF\xFF\xFFa\x17\x11\x84\x88a\x15&V[PT\x16\x11\x15a\x17#WP\x91[\x90a\x16\xC4V[\x92P`\x01\x81\x01\x80\x91\x11\x15a\x17\x1DWcNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[`kT\x80a\x15gWP_\x90V[\x80T\x80a\x16\xD9WP_\x91\x90PV[\x90` \x91a\x17y\x81Q\x80\x92\x81\x85R\x85\x80\x86\x01\x91\x01a\x11\xD1V[`\x1F\x01`\x1F\x19\x16\x01\x01\x90V[`3T`\x01`\x01`\xA0\x1B\x03\x163\x03a\x17\x99WV[`d`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R` `$\x82\x01R\x7FOwnable: caller is not the owner`D\x82\x01R\xFD[`lT\x90a\x17\xEB`la\x17RV[\x90\x82\x15\x15\x80a\x19oW[\x15a\x18cWa\x18\x03\x81a!\xCDV[\x91_\x19\x84\x01\x93\x84\x11a\n\xD6Wa\x18Y` \x93a\x18A\x7F\x93$\xF7\xE5\xA7\xC0(\x88\x08\xA64\xCC\xDED\xB8\xE9ygdt\xB2.)\xEE\x9D\xD5i\xB5^y\x1AK\x96`la\x15&V[P\x90c\xFF\xFF\xFF\xFF\x82T\x91\x81\x19\x90` \x1B\x16\x91\x16\x17\x90UV[P`@Q\x90\x81R\xA1V[c\xFF\xFF\xFF\xFFC\x11a\x19\x1BWa\x18w\x81a!\xCDV[\x91`@Q\x93a\x18\x85\x85a\x0F\\V[Cc\xFF\xFF\xFF\xFF\x16\x85R`\x01`\x01`\xE0\x1B\x03\x90\x93\x16` \x85\x01\x90\x81R\x92`\x01`@\x1B\x81\x10\x15a\n\xF9W\x80`\x01a\x18\xBF\x92\x01`lU`la\x15&V[\x94\x90\x94a\x19\x08WQ\x92Qc\xFF\xFF\xFF\xFF\x90\x93\x16c\xFF\xFF\xFF\xFF\x19` \x94\x85\x1B\x16\x17\x90\x93U\x7F\x93$\xF7\xE5\xA7\xC0(\x88\x08\xA64\xCC\xDED\xB8\xE9ygdt\xB2.)\xEE\x9D\xD5i\xB5^y\x1AK\x92a\x18YV[cNH{q`\xE0\x1B_R_`\x04R`$_\xFD[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FSafeCast: value doesn't fit in 3`D\x82\x01Re2 bits`\xD0\x1B`d\x82\x01R`\x84\x90\xFD[P_\x19\x83\x01\x83\x81\x11a\n\xD6Wa\x19\x8Bc\xFF\xFF\xFF\xFF\x91`la\x15&V[PT\x16C\x14a\x17\xF5V[`3\x80T`\x01`\x01`\xA0\x1B\x03\x92\x83\x16`\x01`\x01`\xA0\x1B\x03\x19\x82\x16\x81\x17\x90\x92U\x90\x91\x16\x7F\x8B\xE0\x07\x9CS\x16Y\x14\x13D\xCD\x1F\xD0\xA4\xF2\x84\x19I\x7F\x97\"\xA3\xDA\xAF\xE3\xB4\x18okdW\xE0_\x80\xA3V[`\x01`\x01`\xA0\x1B\x03\x90\x81\x16_\x81\x81R`j` R`@\x90 \x90\x92\x91\x90a\x1A\x02\x90a\x17RV[`\x01`\x01`\xA0\x1B\x03\x90\x92\x16\x92\x91\x16\x90\x82\x82\x14a\x1A]W\x80_R`j` Ra\x1A-\x83`@_ a\x1FRV[PP`@Q\x91\x82R\x7F\xD0a\x16\x82R\xF4As6X\xF0\x9EM\x8F[-\x99\x8E\xD4\xEF$\xA2\xBB\xFDl\xEC\xA5.\xA11P\x02` C\x93\xA4V[PPPV[\x15a\x1AiWV[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`+`$\x82\x01R\x7FInitializable: contract is not i`D\x82\x01Rjnitializing`\xA8\x1B`d\x82\x01R`\x84\x90\xFD[a\x1A\xCB\x81a ;V[\x15a\x1C\0W`@Q\x91a\x1A\xDD\x83a\x0FAV[a\x1A\xE5a\x11\xF2V[\x83R`fT_`fU\x80a\x1B\xC6W[P_[\x82Q\x80Q\x82\x10\x15a\x1BsW\x81a\x1B\x0C\x91a\x12iV[Q\x90`fT\x91`\x01`@\x1B\x83\x10\x15a\n\xF9W`\x01\x83\x01`fU`fT\x83\x10\x15a\x12}W`f_R\x80Q` \x91\x90\x91\x01Q`\xA0\x1B`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x91\x90\x91\x16\x17_Q` a#M_9_Q\x90_R\x90\x92\x01\x91\x90\x91U`\x01\x01a\x1A\xF7V[PP\x91a\x1B\xB3\x90a\x1B\xC1\x7F#\xAA\xD4\xE6\x17D\xEC\xE1d\x13\n\xA4\x15\xC1an\x80\x13k\x0F\x07p\xE5e\x89C\x8B\x90\xB2i&^\x93`@Q\x93\x84\x93`@\x85R`@\x85\x01\x90a\x10\xA7V[\x90\x83\x82\x03` \x85\x01Ra\x10\xA7V[\x03\x90\xA1V[`f_R_Q` a#M_9_Q\x90_R\x01_Q` a#M_9_Q\x90_R[\x81\x81\x10a\x1B\xF5WPa\x1A\xF4V[_\x81U`\x01\x01a\x1B\xE8V[c\xD1sWy`\xE0\x1B_R`\x04_\xFD[\x81\x81\x03\x92\x91_\x13\x80\x15\x82\x85\x13\x16\x91\x84\x12\x16\x17a\n\xD6WV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x81\x81R`m` R`@\x81 \x90\x92\x90\x83\x90a\x1CL\x90a\x17RV[\x80\x94\x84_R`n` R`\xFF`@_ T\x16\x15_\x14a\x1D\xC6Wa\x1Cp\x92\x93Pa\x1C\x0FV[\x92\x83\x15a\x1D\xC0W\x82_R`m` R`@_ \x90\x81T\x92a\x1C\x90\x83a\x17RV[\x84\x15\x15\x80a\x1D\x9BW[\x15a\x1C\xF4Wa\x1C\xA7_a!\xCDV[\x94_\x19\x81\x01\x90\x81\x11a\n\xD6W\x7F\x88w\r\xC8b\xE4z~\xD5\x86\x90xW\xEB\x1Bu\xE4\xC5\xFF\xC8\xB7\x07\xC7\xEE\x10\xEBt\xD6\x88_\xE5\x94\x95a\x18Aa\x1C\xE4\x92`@\x97a\x15&V[P[\x82Q\x91\x82R` \x82\x01R\xA2\x90V[c\xFF\xFF\xFF\xFFC\x11a\x19\x1BWa\x1D\x08_a!\xCDV[\x93`@Q\x95a\x1D\x16\x87a\x0F\\V[Cc\xFF\xFF\xFF\xFF\x16\x87R`\x01`\x01`\xE0\x1B\x03\x90\x95\x16` \x87\x01\x90\x81R\x94`\x01`@\x1B\x81\x10\x15a\n\xF9Wa\x1DM\x91`\x01\x82\x01\x81Ua\x15&V[\x95\x90\x95a\x19\x08WQ\x93Q` \x1Bc\xFF\xFF\xFF\xFF\x19\x16c\xFF\xFF\xFF\xFF\x94\x90\x94\x16\x93\x90\x93\x17\x90\x93U\x7F\x88w\r\xC8b\xE4z~\xD5\x86\x90xW\xEB\x1Bu\xE4\xC5\xFF\xC8\xB7\x07\xC7\xEE\x10\xEBt\xD6\x88_\xE5\x94\x92`@\x92a\x1C\xE4V[P_\x19\x85\x01\x85\x81\x11a\n\xD6Wa\x1D\xB6c\xFF\xFF\xFF\xFF\x91\x86a\x15&V[PT\x16C\x14a\x1C\x99V[PPP\x90V[PPPa\x1D\xD2\x90a\x12\x9EV[\x91a\x1D\xDD\x81\x84a\x1C\x0FV[\x92\x83\x15a\x1D\xC0W\x7F\x88w\r\xC8b\xE4z~\xD5\x86\x90xW\xEB\x1Bu\xE4\xC5\xFF\xC8\xB7\x07\xC7\xEE\x10\xEBt\xD6\x88_\xE5\x94\x91`@\x91\x84_R`m` Ra\x1E\x1D\x81\x84_ a\x1FRV[PPa\x1C\xE6V[\x90a\x1E7a\x1E0a\x17EV[\x92\x83a\x14\xBCV[\x90`kTa\x1EE`ka\x17RV[\x90\x80\x15\x15\x80a\x1F,W[\x15a\x1E\xA8Wa\x1E]\x84a!\xCDV[_\x19\x82\x01\x91\x82\x11a\n\xD6Wa\x18Aa\x1Ev\x92`ka\x15&V[P\x7F\x86\xDC\xF8k\x12\xDF\xEE\xDE\xA7J\xE90\r\xBD\xAA\x19;\xCC\xE5\x80\x93i\xC8\x17~\xA2\xF4\xEA\xAAer\x9B`@\x80Q\x85\x81R\x84` \x82\x01R\xA1V[c\xFF\xFF\xFF\xFFC\x11a\x19\x1BWa\x1E\xBC\x84a!\xCDV[`@Q\x91a\x1E\xC9\x83a\x0F\\V[Cc\xFF\xFF\xFF\xFF\x16\x83R`\x01`\x01`\xE0\x1B\x03\x90\x91\x16` \x83\x01\x90\x81R\x90`\x01`@\x1B\x81\x10\x15a\n\xF9W\x80`\x01a\x1F\x03\x92\x01`kU`ka\x15&V[\x91\x90\x91a\x19\x08W\x91Q\x91Q` \x1Bc\xFF\xFF\xFF\xFF\x19\x16c\xFF\xFF\xFF\xFF\x92\x90\x92\x16\x91\x90\x91\x17\x90Ua\x1EvV[P_\x19\x81\x01\x81\x81\x11a\n\xD6Wa\x1FHc\xFF\xFF\xFF\xFF\x91`ka\x15&V[PT\x16C\x14a\x1EOV[\x91\x90\x91\x80Ta\x1F`\x82a\x17RV[\x91\x81\x15\x15\x80a \x16W[\x15a\x1F\x95Wa\x1Fx\x85a!\xCDV[\x90_\x19\x83\x01\x92\x83\x11a\n\xD6Wa\x1F\x91\x92a\x18A\x91a\x15&V[\x91\x90V[c\xFF\xFF\xFF\xFFC\x11a\x19\x1BWa\x1F\xA9\x85a!\xCDV[\x90`@Q\x92a\x1F\xB7\x84a\x0F\\V[Cc\xFF\xFF\xFF\xFF\x16\x84R`\x01`\x01`\xE0\x1B\x03\x90\x92\x16` \x84\x01\x90\x81R\x91`\x01`@\x1B\x81\x10\x15a\n\xF9Wa\x1F\xEE\x91`\x01\x82\x01\x81Ua\x15&V[\x91\x90\x91a\x19\x08W\x91Q\x91Q` \x1Bc\xFF\xFF\xFF\xFF\x19\x16c\xFF\xFF\xFF\xFF\x92\x90\x92\x16\x91\x90\x91\x17\x90U\x91\x90V[P_\x19\x82\x01\x82\x81\x11a\n\xD6Wa 1c\xFF\xFF\xFF\xFF\x91\x83a\x15&V[PT\x16C\x14a\x1FjV[Q\x90_\x80\x80[\x84Q\x82\x10\x15a \x9EW`\x01`\x01`\xA0\x1B\x03a \\\x83\x87a\x12iV[QQ\x16\x90`\x01`\x01`\xA0\x1B\x03\x16\x81\x11\x15a\x0E)Wa \x95`\x01\x91\x93`\x01`\x01``\x1B\x03` a \x8B\x86\x8Aa\x12iV[Q\x01Q\x16\x90a\x12\x91V[\x91\x01\x90\x91a AV[P\x91\x92Pa'\x10\x14\x90Pa \xB0W_\x90V[`\x01\x90V[\x91\x90\x91a \xC2\x82\x84a\"[\x81a!\x88W[\x81a!VWP\x90V[\x90P` \x81\x80Q\x81\x01\x03\x12a\n\xD2W` \x01Q`\x01`\x01`\xE0\x1B\x03\x19\x81\x16\x90\x81\x90\x03a\n\xD2Wc\x0B\x13]?`\xE1\x1B\x14\x90V[\x80Q` \x14\x91Pa!MV[``a!GV[PPP`\x01\x90V[`\x01`\x01`\xA0\x1B\x03\x83\x81\x16\x91\x16\x14\x90P_a \xD3V[cNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[`\x01`\x01`\xE0\x1B\x03\x81\x11a!\xE7W`\x01`\x01`\xE0\x1B\x03\x16\x90V[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`'`$\x82\x01R\x7FSafeCast: value doesn't fit in 2`D\x82\x01Rf24 bits`\xC8\x1B`d\x82\x01R`\x84\x90\xFD[\x81Q`A\x81\x03a\"hWP\x90a\"d\x91` \x82\x01Q\x90```@\x84\x01Q\x93\x01Q_\x1A\x90a\"\xAAV[\x90\x91V[`@\x03a\"\xA1W`@` \x83\x01Q\x92\x01Q\x91\x82`\xFF\x1C\x91`\x1B\x83\x01\x80\x93\x11a\n\xD6Wa\"d\x93`\x01`\x01`\xFF\x1B\x03\x16\x92`\xFF\x16\x90a\"\xAAV[PP_\x90`\x02\x90V[\x90\x7F\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]WnsW\xA4P\x1D\xDF\xE9/Fh\x1B \xA0\x84\x11a#AW`\xFF\x16\x90`\x1B\x82\x14\x15\x80a#6W[a#+W` \x93_\x93`\x80\x93`@Q\x93\x84R\x86\x84\x01R`@\x83\x01R``\x82\x01R\x82\x80R`\x01Z\xFA\x15a\n\xC7W_Q`\x01`\x01`\xA0\x1B\x03\x81\x16\x15a##W\x90_\x90V[P_\x90`\x01\x90V[PPPP_\x90`\x04\x90V[P`\x1C\x82\x14\x15a\"\xE1V[PPPP_\x90`\x03\x90V\xFEFP\x18y\xB8\xCA\x85%\xE8\xC2\xFDQ\x9E/\xBF\xCF\xA2\xEB\xEA&P\x12\x94\xAA\x02\xCB\xFC\xFB\x12\xE9CT\xA2dipfsX\"\x12 \xED\x9C\x9D\x91\x8A\xD0\x7F\xBC\xFE\x8D\0\xC4\xA3\xE0\xC7\xC5\xFEK\xA4J\xEE\xC5O\x15zR\"\xEF\xF3\x1A(\xA2dsolcC\0\x08\x1C\x003", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x60806040526004361015610011575f80fd5b5f5f3560e01c8062cf2ab514610f0c5780630dba339414610ee35780631626ba7e14610bd75780631703a01814610b875780631e4cd85e14610b5e578063314f3a4914610b445780633b242e4a14610b0d5780633d5611f61461092457806340bf2fb7146109065780635140a548146107fa5780635e1042e8146107b45780635ef533291461078f578063696255be14610714578063715018a6146106b7578063743c31f41461066f578063857dc1901461055a5780638da5cb5b14610531578063955f2d90146104e457806398ec1ac9146104b8578063ab11899514610323578063b933fa74146102bb578063cdcd358114610270578063dec5d1f6146101fe578063ec7fbb31146101bf5763f2fde38b1461012c575f80fd5b346101bc5760203660031901126101bc57610145610faf565b61014d611785565b6001600160a01b038116156101685761016590611995565b80f35b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b80fd5b50346101bc5760203660031901126101bc5760209060ff906040906001600160a01b036101ea610faf565b168152606e84522054166040519015158152f35b50346101bc5760403660031901126101bc576004356001600160401b03811161026c5761022f903690600401611100565b602435906001600160401b03821161026857610263610255610165933690600401610fc5565b9161025e611785565b611ac2565b6114d7565b8280fd5b5080fd5b50346101bc5760203660031901126101bc576020906001600160a01b03610295610faf565b168152606a8252604090206001600160a01b03906102b290611752565b16604051908152f35b50346101bc57806003193601126101bc57606c5490816102ed57602091505b6040516001600160e01b03919091168152f35b5f19820191821161030f5750610306602091606c611526565b5054811c6102da565b634e487b7160e01b81526011600452602490fd5b50346101bc5760603660031901126101bc5761033d610faf565b6044356001600160401b0381116102685761035c903690600401611100565b82549060ff8260081c1615928380946104ab575b8015610494575b156104385760ff19831660011785556103c79284610427575b506103a160ff865460081c16611a62565b60018060a01b03166001600160601b0360a01b606854161760685561025e6024356117dd565b6103e060ff835460081c166103db81611a62565b611a62565b6103e933611995565b6103f05780f35b61ff001981541681557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a180f35b61ffff19166101011785555f610390565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b1580156103775750600160ff841614610377565b50600160ff841610610370565b50346101bc5760203660031901126101bc5760206104dc6104d7610faf565b61129e565b604051908152f35b50346101bc5760403660031901126101bc576104fe610faf565b6024359063ffffffff8216809203610268576001600160a01b03168252606d602090815260409092206104dc91906116b5565b50346101bc57806003193601126101bc576033546040516001600160a01b039091168152602090f35b50346101bc57806003193601126101bc57338152606e60205260ff6040822054161561066057606554801561064c575f1901606555338152606e6020526040812060ff1981541690556105b46105af33611c27565b611e24565b505060685481906001600160a01b0316803b15610649578180916024604051809481936351b27a6d60e11b83523360048401525af1801561063e57610629575b506068546001600160a01b0316337f31e0adfec71bccee37b6e83a90c2fedb17d8f1693fee863c4771e7bfe2aed5808380a380f35b8161063391610f77565b6101bc57805f6105f4565b6040513d84823e3d90fd5b50fd5b634e487b7160e01b82526011600452602482fd5b6325ec6c1f60e01b8152600490fd5b50346101bc5760203660031901126101bc57610689610faf565b338252606e60205260ff604083205416156106a85761016590336119dd565b6325ec6c1f60e01b8252600482fd5b50346101bc57806003193601126101bc576106d0611785565b603380546001600160a01b0319811690915581906001600160a01b03167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b50346101bc5760403660031901126101bc576024356004356001600160401b038211610268577f713ca53b88d6eb63f5b1854cb8cbdd736ec51eda225e46791aa9298b0160648f604061076e610165943690600401610fc5565b92610777611785565b606754908060675582519182526020820152a16114d7565b50346101bc5760203660031901126101bc576107a9611785565b6101656004356117dd565b50346101bc5760403660031901126101bc576020906001600160a01b036107d9610faf565b168152606a8252604090206001600160a01b03906102b290602435906116b5565b50346101bc5760403660031901126101bc576004356001600160401b03811161026c573660238201121561026c5780600401359061083782610f98565b906108456040519283610f77565b828252602082019260051b8101602401833682116109025760248301905b8282106108cf57505050506024356001600160401b0381116108cb5761088d903690600401611061565b5051156108b757518051606554036108a857610165906114d7565b63169efb5b60e11b8252600482fd5b634e487b7160e01b82526032600452602482fd5b8380fd5b81356001600160401b0381116108fe576020916108f3839260243691890101610fc5565b815201910190610863565b8780fd5b8580fd5b50346101bc57806003193601126101bc576020606754604051908152f35b5034610ad2576040366003190112610ad2576004356001600160401b038111610ad25760606003198236030112610ad257604051606081018181106001600160401b03821117610af95760405281600401356001600160401b038111610ad2576109949060043691850101611061565b8152602480830135602083019081526044909301356040830190815290356001600160a01b0381168103610ad257335f52606e60205260ff60405f205416610aea57606554905f198214610ad6576001610a179201606555335f52606e60205260405f20600160ff19825416179055610a0f6105af33611c27565b5050336119dd565b6068546001600160a01b0316803b15610ad257610a635f809460405196879586948593639926ee7d60e01b855233600486015260406024860152516060604486015260a4850190611760565b9151606484015251608483015203925af18015610ac757610ab4575b506068546001600160a01b0316337fa453db612af59e5521d6ab9284dc3e2d06af286eb1b1b7b771fce4716c19f2c18380a380f35b610ac091505f90610f77565b5f5f610a7f565b6040513d5f823e3d90fd5b5f80fd5b634e487b7160e01b5f52601160045260245ffd5b6342ee68b560e01b5f5260045ffd5b634e487b7160e01b5f52604160045260245ffd5b34610ad2576020366003190112610ad2576001600160a01b03610b2e610faf565b165f52606d60205260206104dc60405f20611752565b34610ad2575f366003190112610ad25760206104dc611745565b34610ad2576020366003190112610ad25760206104dc63ffffffff610b81611033565b16611624565b34610ad2575f366003190112610ad2576060604051610ba581610f41565b52610bd3604051610bb581610f41565b610bbd6111f2565b81526040519182916020835260208301906110a7565b0390f35b34610ad2576040366003190112610ad2576004356024356001600160401b038111610ad257610c0a903690600401611061565b8051810160608260208301920312610ad25760208201516001600160401b038111610ad25782019181603f84011215610ad2576020830151610c4b81610f98565b93610c596040519586610f77565b8185526020808087019360051b8301010190848211610ad257604001915b818310610ec35750505060408101516001600160401b038111610ad257810182603f82011215610ad257602081015190610cb082610f98565b93610cbe6040519586610f77565b8285526020808087019460051b8401010191818311610ad25760408101935b838510610e565788888860608901519163ffffffff8316809303610ad2578051915f5f9582518503610e47578415610e385743861015945f949093925b848610610d8457888888610d7557610d318161153b565b8211610d6657610d4090611624565b11610d5757604051630b135d3f60e11b8152602090f35b63e121632f60e01b5f5260045ffd5b634b05a0f760e11b5f5260045ffd5b63e64f180f60e01b5f5260045ffd5b949793949293926001600160a01b03610d9d8a84611269565b511696610d7557865f52606a6020528660018060a01b03610dc18a60405f206116b5565b16916001600160a01b03161015610e2957610de89083610de18b88611269565b51916120b5565b15610e1a576001610e1087945f985f52606d602052610e0a8a60405f206116b5565b90611291565b9801949392610d1a565b638baa579f60e01b5f5260045ffd5b63ba50f91160e01b5f5260045ffd5b63251f56a160e21b5f5260045ffd5b631fec674760e31b5f5260045ffd5b84516001600160401b038111610ad2576020908301019083603f83011215610ad257602082015190610e8782611046565b610e946040519182610f77565b8281526040848401018610610ad257610eb8602094938594604086850191016111d1565b815201940193610cdd565b82516001600160a01b0381168103610ad257815260209283019201610c77565b34610ad2576020366003190112610ad25760206104dc63ffffffff610f06611033565b1661153b565b34610ad2576020366003190112610ad2576004356001600160401b038111610ad257610263610f3f913690600401610fc5565b005b602081019081106001600160401b03821117610af957604052565b604081019081106001600160401b03821117610af957604052565b90601f801991011681019081106001600160401b03821117610af957604052565b6001600160401b038111610af95760051b60200190565b600435906001600160a01b0382168203610ad257565b9080601f83011215610ad257813590610fdd82610f98565b92610feb6040519485610f77565b82845260208085019360051b820101918211610ad257602001915b8183106110135750505090565b82356001600160a01b0381168103610ad257815260209283019201611006565b6004359063ffffffff82168203610ad257565b6001600160401b038111610af957601f01601f191660200190565b81601f82011215610ad25780359061107882611046565b926110866040519485610f77565b82845260208383010111610ad257815f926020809301838601378301015290565b602060408184019251938281528451809452019201905f5b8181106110cc5750505090565b825180516001600160a01b031685526020908101516001600160601b031681860152604090940193909201916001016110bf565b9190602083820312610ad25760405161111881610f41565b80938035906001600160401b038211610ad2570182601f82011215610ad25780359061114382610f98565b936111516040519586610f77565b82855260208086019360061b83010191818311610ad257602001925b82841061117b575050505052565b604084830312610ad2576040519061119282610f5c565b84356001600160a01b0381168103610ad25782526020850135906001600160601b0382168203610ad2578260209283604095015281520193019261116d565b5f5b8381106111e25750505f910152565b81810151838201526020016111d3565b606654906111ff82610f98565b9161120d6040519384610f77565b80835260665f9081525f51602061234d5f395f51905f52602085015b8383106112365750505050565b60016020819260405161124881610f5c565b8554848060a01b038116825260a01c83820152815201920192019190611229565b805182101561127d5760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b91908201809211610ad657565b6112a66111f2565b805190925f6112cd6112b784610f98565b936112c56040519586610f77565b808552610f98565b6020840190601f19013682375f5b865181101561130d576001906001600160a01b036112f9828a611269565b5151166113068288611269565b52016112db565b5060408051639004134760e01b81526001600160a01b0390961660048701526024860152925160448501819052919390929091829160648301915f5b81811061149a57505f939283900391508290507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610ac7575f9161140a575b505f915b84518310156113ec576113ad8383611269565b51906001600160601b0360206113c38689611269565b5101511691828102928184041490151715610ad6576001916113e491611291565b92019161139a565b915050612710919250046067548110155f146114055790565b505f90565b90503d805f833e61141b8183610f77565b810190602081830312610ad2578051906001600160401b038211610ad257019080601f83011215610ad257815161145181610f98565b9261145f6040519485610f77565b81845260208085019260051b820101928311610ad257602001905b82821061148a575050505f611396565b815181526020918201910161147a565b82516001600160a01b0316845285945060209384019390920191600101611349565b9190915f8382019384129112908015821691151617610ad657565b905f805b83518210156115155760019061150d906115076001600160a01b036115008689611269565b5116611c27565b906114bc565b9101906114db565b9050611522919250611e24565b5050565b805482101561127d575f5260205f2001905f90565b438110156115e057606b54905f905b8282106115875750508061156757505f5b6001600160e01b031690565b5f198101908111610ad65761157d90606b611526565b505460201c61155b565b909161159a81841860011c828516611291565b908263ffffffff6115ac84606b611526565b50541611156115be5750915b9061154a565b925060018101809111156115b857634e487b7160e01b5f52601160045260245ffd5b606460405162461bcd60e51b815260206004820152602060248201527f436865636b706f696e74733a20626c6f636b206e6f7420796574206d696e65646044820152fd5b438110156115e057606c54905f905b82821061165c5750508061164657505f90565b5f198101908111610ad65761157d90606c611526565b909161166f81841860011c828516611291565b908263ffffffff61168184606c611526565b50541611156116935750915b90611633565b9250600181018091111561168d57634e487b7160e01b5f52601160045260245ffd5b90438110156115e0578154905f905b8282106116ed575050806116d957505f919050565b5f198101908111610ad65761157d91611526565b909161170081841860011c828516611291565b908263ffffffff6117118488611526565b50541611156117235750915b906116c4565b9250600181018091111561171d57634e487b7160e01b5f52601160045260245ffd5b606b548061156757505f90565b8054806116d957505f919050565b90602091611779815180928185528580860191016111d1565b601f01601f1916010190565b6033546001600160a01b0316330361179957565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b606c54906117eb606c611752565b908215158061196f575b1561186357611803816121cd565b915f198401938411610ad6576118596020936118417f9324f7e5a7c0288808a634ccde44b8e979676474b22e29ee9dd569b55e791a4b96606c611526565b509063ffffffff82549181199060201b169116179055565b50604051908152a1565b63ffffffff431161191b57611877816121cd565b916040519361188585610f5c565b4363ffffffff1685526001600160e01b039093166020850190815292600160401b811015610af9578060016118bf9201606c55606c611526565b9490946119085751925163ffffffff90931663ffffffff19602094851b16179093557f9324f7e5a7c0288808a634ccde44b8e979676474b22e29ee9dd569b55e791a4b92611859565b634e487b7160e01b5f525f60045260245ffd5b60405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203360448201526532206269747360d01b6064820152608490fd5b505f198301838111610ad65761198b63ffffffff91606c611526565b50541643146117f5565b603380546001600160a01b039283166001600160a01b0319821681179092559091167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a3565b6001600160a01b039081165f818152606a6020526040902090929190611a0290611752565b6001600160a01b0390921692911690828214611a5d57805f52606a602052611a2d8360405f20611f52565b50506040519182527fd061168252f441733658f09e4d8f5b2d998ed4ef24a2bbfd6ceca52ea131500260204393a4565b505050565b15611a6957565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b611acb8161203b565b15611c005760405191611add83610f41565b611ae56111f2565b83526066545f60665580611bc6575b505f5b82518051821015611b735781611b0c91611269565b519060665491600160401b831015610af9576001830160665560665483101561127d5760665f5280516020919091015160a01b6001600160a01b0319166001600160a01b0391909116175f51602061234d5f395f51905f5290920191909155600101611af7565b505091611bb390611bc17f23aad4e61744ece164130aa415c1616e80136b0f0770e56589438b90b269265e936040519384936040855260408501906110a7565b9083820360208501526110a7565b0390a1565b60665f525f51602061234d5f395f51905f52015f51602061234d5f395f51905f525b818110611bf55750611af4565b5f8155600101611be8565b63d173577960e01b5f5260045ffd5b81810392915f138015828513169184121617610ad657565b6001600160a01b0381165f818152606d602052604081209092908390611c4c90611752565b8094845f52606e60205260ff60405f205416155f14611dc657611c70929350611c0f565b928315611dc057825f52606d60205260405f2090815492611c9083611752565b84151580611d9b575b15611cf457611ca75f6121cd565b945f198101908111610ad6577f88770dc862e47a7ed586907857eb1b75e4c5ffc8b707c7ee10eb74d6885fe59495611841611ce492604097611526565b505b82519182526020820152a290565b63ffffffff431161191b57611d085f6121cd565b9360405195611d1687610f5c565b4363ffffffff1687526001600160e01b039095166020870190815294600160401b811015610af957611d4d91600182018155611526565b9590956119085751935160201b63ffffffff191663ffffffff94909416939093179093557f88770dc862e47a7ed586907857eb1b75e4c5ffc8b707c7ee10eb74d6885fe59492604092611ce4565b505f198501858111610ad657611db663ffffffff9186611526565b5054164314611c99565b50505090565b505050611dd29061129e565b91611ddd8184611c0f565b928315611dc0577f88770dc862e47a7ed586907857eb1b75e4c5ffc8b707c7ee10eb74d6885fe59491604091845f52606d602052611e1d81845f20611f52565b5050611ce6565b90611e37611e30611745565b92836114bc565b90606b54611e45606b611752565b9080151580611f2c575b15611ea857611e5d846121cd565b5f198201918211610ad657611841611e7692606b611526565b507f86dcf86b12dfeedea74ae9300dbdaa193bcce5809369c8177ea2f4eaaa65729b60408051858152846020820152a1565b63ffffffff431161191b57611ebc846121cd565b60405191611ec983610f5c565b4363ffffffff1683526001600160e01b039091166020830190815290600160401b811015610af957806001611f039201606b55606b611526565b919091611908579151915160201b63ffffffff191663ffffffff92909216919091179055611e76565b505f198101818111610ad657611f4863ffffffff91606b611526565b5054164314611e4f565b9190918054611f6082611752565b9181151580612016575b15611f9557611f78856121cd565b905f198301928311610ad657611f919261184191611526565b9190565b63ffffffff431161191b57611fa9856121cd565b9060405192611fb784610f5c565b4363ffffffff1684526001600160e01b039092166020840190815291600160401b811015610af957611fee91600182018155611526565b919091611908579151915160201b63ffffffff191663ffffffff929092169190911790559190565b505f198201828111610ad65761203163ffffffff9183611526565b5054164314611f6a565b51905f80805b845182101561209e576001600160a01b0361205c8387611269565b515116906001600160a01b0316811115610e2957612095600191936001600160601b03602061208b868a611269565b5101511690611291565b91019091612041565b509192506127101490506120b0575f90565b600190565b9190916120c2828461223c565b60058110156121b9571590816121a3575b5061219b575f9261210d61211b85946040519283916020830195630b135d3f60e11b87526024840152604060448401526064830190611760565b03601f198101835282610f77565b51915afa3d15612194573d61212f81611046565b9061213d6040519283610f77565b81523d5f602083013e5b81612188575b81612156575090565b9050602081805181010312610ad257602001516001600160e01b0319811690819003610ad257630b135d3f60e11b1490565b8051602014915061214d565b6060612147565b505050600190565b6001600160a01b0383811691161490505f6120d3565b634e487b7160e01b5f52602160045260245ffd5b6001600160e01b0381116121e7576001600160e01b031690565b60405162461bcd60e51b815260206004820152602760248201527f53616665436173743a2076616c756520646f65736e27742066697420696e20326044820152663234206269747360c81b6064820152608490fd5b81516041810361226857509061226491602082015190606060408401519301515f1a906122aa565b9091565b6040036122a15760406020830151920151918260ff1c91601b8301809311610ad657612264936001600160ff1b03169260ff16906122aa565b50505f90600290565b907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084116123415760ff1690601b82141580612336575b61232b576020935f93608093604051938452868401526040830152606082015282805260015afa15610ac7575f516001600160a01b0381161561232357905f90565b505f90600190565b505050505f90600490565b50601c8214156122e1565b505050505f9060039056fe46501879b8ca8525e8c2fd519e2fbfcfa2ebea26501294aa02cbfcfb12e94354a2646970667358221220ed9c9d918ad07fbcfe8d00c4a3e0c7c5fe4ba44aeec54f157a5222eff31a28a264736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80`@R`\x046\x10\x15a\0\x11W_\x80\xFD[__5`\xE0\x1C\x80b\xCF*\xB5\x14a\x0F\x0CW\x80c\r\xBA3\x94\x14a\x0E\xE3W\x80c\x16&\xBA~\x14a\x0B\xD7W\x80c\x17\x03\xA0\x18\x14a\x0B\x87W\x80c\x1EL\xD8^\x14a\x0B^W\x80c1O:I\x14a\x0BDW\x80c;$.J\x14a\x0B\rW\x80c=V\x11\xF6\x14a\t$W\x80c@\xBF/\xB7\x14a\t\x06W\x80cQ@\xA5H\x14a\x07\xFAW\x80c^\x10B\xE8\x14a\x07\xB4W\x80c^\xF53)\x14a\x07\x8FW\x80cibU\xBE\x14a\x07\x14W\x80cqP\x18\xA6\x14a\x06\xB7W\x80ct<1\xF4\x14a\x06oW\x80c\x85}\xC1\x90\x14a\x05ZW\x80c\x8D\xA5\xCB[\x14a\x051W\x80c\x95_-\x90\x14a\x04\xE4W\x80c\x98\xEC\x1A\xC9\x14a\x04\xB8W\x80c\xAB\x11\x89\x95\x14a\x03#W\x80c\xB93\xFAt\x14a\x02\xBBW\x80c\xCD\xCD5\x81\x14a\x02pW\x80c\xDE\xC5\xD1\xF6\x14a\x01\xFEW\x80c\xEC\x7F\xBB1\x14a\x01\xBFWc\xF2\xFD\xE3\x8B\x14a\x01,W_\x80\xFD[4a\x01\xBCW` 6`\x03\x19\x01\x12a\x01\xBCWa\x01Ea\x0F\xAFV[a\x01Ma\x17\x85V[`\x01`\x01`\xA0\x1B\x03\x81\x16\x15a\x01hWa\x01e\x90a\x19\x95V[\x80\xF3[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FOwnable: new owner is the zero a`D\x82\x01Reddress`\xD0\x1B`d\x82\x01R`\x84\x90\xFD[\x80\xFD[P4a\x01\xBCW` 6`\x03\x19\x01\x12a\x01\xBCW` \x90`\xFF\x90`@\x90`\x01`\x01`\xA0\x1B\x03a\x01\xEAa\x0F\xAFV[\x16\x81R`n\x84R T\x16`@Q\x90\x15\x15\x81R\xF3[P4a\x01\xBCW`@6`\x03\x19\x01\x12a\x01\xBCW`\x045`\x01`\x01`@\x1B\x03\x81\x11a\x02lWa\x02/\x906\x90`\x04\x01a\x11\0V[`$5\x90`\x01`\x01`@\x1B\x03\x82\x11a\x02hWa\x02ca\x02Ua\x01e\x936\x90`\x04\x01a\x0F\xC5V[\x91a\x02^a\x17\x85V[a\x1A\xC2V[a\x14\xD7V[\x82\x80\xFD[P\x80\xFD[P4a\x01\xBCW` 6`\x03\x19\x01\x12a\x01\xBCW` \x90`\x01`\x01`\xA0\x1B\x03a\x02\x95a\x0F\xAFV[\x16\x81R`j\x82R`@\x90 `\x01`\x01`\xA0\x1B\x03\x90a\x02\xB2\x90a\x17RV[\x16`@Q\x90\x81R\xF3[P4a\x01\xBCW\x80`\x03\x196\x01\x12a\x01\xBCW`lT\x90\x81a\x02\xEDW` \x91P[`@Q`\x01`\x01`\xE0\x1B\x03\x91\x90\x91\x16\x81R\xF3[_\x19\x82\x01\x91\x82\x11a\x03\x0FWPa\x03\x06` \x91`la\x15&V[PT\x81\x1Ca\x02\xDAV[cNH{q`\xE0\x1B\x81R`\x11`\x04R`$\x90\xFD[P4a\x01\xBCW``6`\x03\x19\x01\x12a\x01\xBCWa\x03=a\x0F\xAFV[`D5`\x01`\x01`@\x1B\x03\x81\x11a\x02hWa\x03\\\x906\x90`\x04\x01a\x11\0V[\x82T\x90`\xFF\x82`\x08\x1C\x16\x15\x92\x83\x80\x94a\x04\xABW[\x80\x15a\x04\x94W[\x15a\x048W`\xFF\x19\x83\x16`\x01\x17\x85Ua\x03\xC7\x92\x84a\x04'W[Pa\x03\xA1`\xFF\x86T`\x08\x1C\x16a\x1AbV[`\x01\x80`\xA0\x1B\x03\x16`\x01`\x01``\x1B\x03`\xA0\x1B`hT\x16\x17`hUa\x02^`$5a\x17\xDDV[a\x03\xE0`\xFF\x83T`\x08\x1C\x16a\x03\xDB\x81a\x1AbV[a\x1AbV[a\x03\xE93a\x19\x95V[a\x03\xF0W\x80\xF3[a\xFF\0\x19\x81T\x16\x81U\x7F\x7F&\xB8?\xF9n\x1F+jh/\x138R\xF6y\x8A\t\xC4e\xDA\x95\x92\x14`\xCE\xFB8G@$\x98` `@Q`\x01\x81R\xA1\x80\xF3[a\xFF\xFF\x19\x16a\x01\x01\x17\x85U_a\x03\x90V[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`.`$\x82\x01R\x7FInitializable: contract is alrea`D\x82\x01Rm\x19\x1EH\x1A[\x9A]\x1AX[\x1A^\x99Y`\x92\x1B`d\x82\x01R`\x84\x90\xFD[P0;\x15\x80\x15a\x03wWP`\x01`\xFF\x84\x16\x14a\x03wV[P`\x01`\xFF\x84\x16\x10a\x03pV[P4a\x01\xBCW` 6`\x03\x19\x01\x12a\x01\xBCW` a\x04\xDCa\x04\xD7a\x0F\xAFV[a\x12\x9EV[`@Q\x90\x81R\xF3[P4a\x01\xBCW`@6`\x03\x19\x01\x12a\x01\xBCWa\x04\xFEa\x0F\xAFV[`$5\x90c\xFF\xFF\xFF\xFF\x82\x16\x80\x92\x03a\x02hW`\x01`\x01`\xA0\x1B\x03\x16\x82R`m` \x90\x81R`@\x90\x92 a\x04\xDC\x91\x90a\x16\xB5V[P4a\x01\xBCW\x80`\x03\x196\x01\x12a\x01\xBCW`3T`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x90\xF3[P4a\x01\xBCW\x80`\x03\x196\x01\x12a\x01\xBCW3\x81R`n` R`\xFF`@\x82 T\x16\x15a\x06`W`eT\x80\x15a\x06LW_\x19\x01`eU3\x81R`n` R`@\x81 `\xFF\x19\x81T\x16\x90Ua\x05\xB4a\x05\xAF3a\x1C'V[a\x1E$V[PP`hT\x81\x90`\x01`\x01`\xA0\x1B\x03\x16\x80;\x15a\x06IW\x81\x80\x91`$`@Q\x80\x94\x81\x93cQ\xB2zm`\xE1\x1B\x83R3`\x04\x84\x01RZ\xF1\x80\x15a\x06>Wa\x06)W[P`hT`\x01`\x01`\xA0\x1B\x03\x163\x7F1\xE0\xAD\xFE\xC7\x1B\xCC\xEE7\xB6\xE8:\x90\xC2\xFE\xDB\x17\xD8\xF1i?\xEE\x86=\x90\xFD[P\xFD[cNH{q`\xE0\x1B\x82R`\x11`\x04R`$\x82\xFD[c%\xECl\x1F`\xE0\x1B\x81R`\x04\x90\xFD[P4a\x01\xBCW` 6`\x03\x19\x01\x12a\x01\xBCWa\x06\x89a\x0F\xAFV[3\x82R`n` R`\xFF`@\x83 T\x16\x15a\x06\xA8Wa\x01e\x903a\x19\xDDV[c%\xECl\x1F`\xE0\x1B\x82R`\x04\x82\xFD[P4a\x01\xBCW\x80`\x03\x196\x01\x12a\x01\xBCWa\x06\xD0a\x17\x85V[`3\x80T`\x01`\x01`\xA0\x1B\x03\x19\x81\x16\x90\x91U\x81\x90`\x01`\x01`\xA0\x1B\x03\x16\x7F\x8B\xE0\x07\x9CS\x16Y\x14\x13D\xCD\x1F\xD0\xA4\xF2\x84\x19I\x7F\x97\"\xA3\xDA\xAF\xE3\xB4\x18okdW\xE0\x82\x80\xA3\x80\xF3[P4a\x01\xBCW`@6`\x03\x19\x01\x12a\x01\xBCW`$5`\x045`\x01`\x01`@\x1B\x03\x82\x11a\x02hW\x7Fq<\xA5;\x88\xD6\xEBc\xF5\xB1\x85L\xB8\xCB\xDDsn\xC5\x1E\xDA\"^Fy\x1A\xA9)\x8B\x01`d\x8F`@a\x07na\x01e\x946\x90`\x04\x01a\x0F\xC5V[\x92a\x07wa\x17\x85V[`gT\x90\x80`gU\x82Q\x91\x82R` \x82\x01R\xA1a\x14\xD7V[P4a\x01\xBCW` 6`\x03\x19\x01\x12a\x01\xBCWa\x07\xA9a\x17\x85V[a\x01e`\x045a\x17\xDDV[P4a\x01\xBCW`@6`\x03\x19\x01\x12a\x01\xBCW` \x90`\x01`\x01`\xA0\x1B\x03a\x07\xD9a\x0F\xAFV[\x16\x81R`j\x82R`@\x90 `\x01`\x01`\xA0\x1B\x03\x90a\x02\xB2\x90`$5\x90a\x16\xB5V[P4a\x01\xBCW`@6`\x03\x19\x01\x12a\x01\xBCW`\x045`\x01`\x01`@\x1B\x03\x81\x11a\x02lW6`#\x82\x01\x12\x15a\x02lW\x80`\x04\x015\x90a\x087\x82a\x0F\x98V[\x90a\x08E`@Q\x92\x83a\x0FwV[\x82\x82R` \x82\x01\x92`\x05\x1B\x81\x01`$\x01\x836\x82\x11a\t\x02W`$\x83\x01\x90[\x82\x82\x10a\x08\xCFWPPPP`$5`\x01`\x01`@\x1B\x03\x81\x11a\x08\xCBWa\x08\x8D\x906\x90`\x04\x01a\x10aV[PQ\x15a\x08\xB7WQ\x80Q`eT\x03a\x08\xA8Wa\x01e\x90a\x14\xD7V[c\x16\x9E\xFB[`\xE1\x1B\x82R`\x04\x82\xFD[cNH{q`\xE0\x1B\x82R`2`\x04R`$\x82\xFD[\x83\x80\xFD[\x815`\x01`\x01`@\x1B\x03\x81\x11a\x08\xFEW` \x91a\x08\xF3\x83\x92`$6\x91\x89\x01\x01a\x0F\xC5V[\x81R\x01\x91\x01\x90a\x08cV[\x87\x80\xFD[\x85\x80\xFD[P4a\x01\xBCW\x80`\x03\x196\x01\x12a\x01\xBCW` `gT`@Q\x90\x81R\xF3[P4a\n\xD2W`@6`\x03\x19\x01\x12a\n\xD2W`\x045`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2W```\x03\x19\x826\x03\x01\x12a\n\xD2W`@Q``\x81\x01\x81\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\n\xF9W`@R\x81`\x04\x015`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2Wa\t\x94\x90`\x046\x91\x85\x01\x01a\x10aV[\x81R`$\x80\x83\x015` \x83\x01\x90\x81R`D\x90\x93\x015`@\x83\x01\x90\x81R\x905`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x03a\n\xD2W3_R`n` R`\xFF`@_ T\x16a\n\xEAW`eT\x90_\x19\x82\x14a\n\xD6W`\x01a\n\x17\x92\x01`eU3_R`n` R`@_ `\x01`\xFF\x19\x82T\x16\x17\x90Ua\n\x0Fa\x05\xAF3a\x1C'V[PP3a\x19\xDDV[`hT`\x01`\x01`\xA0\x1B\x03\x16\x80;\x15a\n\xD2Wa\nc_\x80\x94`@Q\x96\x87\x95\x86\x94\x85\x93c\x99&\xEE}`\xE0\x1B\x85R3`\x04\x86\x01R`@`$\x86\x01RQ```D\x86\x01R`\xA4\x85\x01\x90a\x17`V[\x91Q`d\x84\x01RQ`\x84\x83\x01R\x03\x92Z\xF1\x80\x15a\n\xC7Wa\n\xB4W[P`hT`\x01`\x01`\xA0\x1B\x03\x163\x7F\xA4S\xDBa*\xF5\x9EU!\xD6\xAB\x92\x84\xDC>-\x06\xAF(n\xB1\xB1\xB7\xB7q\xFC\xE4ql\x19\xF2\xC1\x83\x80\xA3\x80\xF3[a\n\xC0\x91P_\x90a\x0FwV[__a\n\x7FV[`@Q=_\x82>=\x90\xFD[_\x80\xFD[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[cB\xEEh\xB5`\xE0\x1B_R`\x04_\xFD[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[4a\n\xD2W` 6`\x03\x19\x01\x12a\n\xD2W`\x01`\x01`\xA0\x1B\x03a\x0B.a\x0F\xAFV[\x16_R`m` R` a\x04\xDC`@_ a\x17RV[4a\n\xD2W_6`\x03\x19\x01\x12a\n\xD2W` a\x04\xDCa\x17EV[4a\n\xD2W` 6`\x03\x19\x01\x12a\n\xD2W` a\x04\xDCc\xFF\xFF\xFF\xFFa\x0B\x81a\x103V[\x16a\x16$V[4a\n\xD2W_6`\x03\x19\x01\x12a\n\xD2W```@Qa\x0B\xA5\x81a\x0FAV[Ra\x0B\xD3`@Qa\x0B\xB5\x81a\x0FAV[a\x0B\xBDa\x11\xF2V[\x81R`@Q\x91\x82\x91` \x83R` \x83\x01\x90a\x10\xA7V[\x03\x90\xF3[4a\n\xD2W`@6`\x03\x19\x01\x12a\n\xD2W`\x045`$5`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2Wa\x0C\n\x906\x90`\x04\x01a\x10aV[\x80Q\x81\x01``\x82` \x83\x01\x92\x03\x12a\n\xD2W` \x82\x01Q`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2W\x82\x01\x91\x81`?\x84\x01\x12\x15a\n\xD2W` \x83\x01Qa\x0CK\x81a\x0F\x98V[\x93a\x0CY`@Q\x95\x86a\x0FwV[\x81\x85R` \x80\x80\x87\x01\x93`\x05\x1B\x83\x01\x01\x01\x90\x84\x82\x11a\n\xD2W`@\x01\x91[\x81\x83\x10a\x0E\xC3WPPP`@\x81\x01Q`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2W\x81\x01\x82`?\x82\x01\x12\x15a\n\xD2W` \x81\x01Q\x90a\x0C\xB0\x82a\x0F\x98V[\x93a\x0C\xBE`@Q\x95\x86a\x0FwV[\x82\x85R` \x80\x80\x87\x01\x94`\x05\x1B\x84\x01\x01\x01\x91\x81\x83\x11a\n\xD2W`@\x81\x01\x93[\x83\x85\x10a\x0EVW\x88\x88\x88``\x89\x01Q\x91c\xFF\xFF\xFF\xFF\x83\x16\x80\x93\x03a\n\xD2W\x80Q\x91__\x95\x82Q\x85\x03a\x0EGW\x84\x15a\x0E8WC\x86\x10\x15\x94_\x94\x90\x93\x92[\x84\x86\x10a\r\x84W\x88\x88\x88a\ruWa\r1\x81a\x15;V[\x82\x11a\rfWa\r@\x90a\x16$V[\x11a\rWW`@Qc\x0B\x13]?`\xE1\x1B\x81R` \x90\xF3[c\xE1!c/`\xE0\x1B_R`\x04_\xFD[cK\x05\xA0\xF7`\xE1\x1B_R`\x04_\xFD[c\xE6O\x18\x0F`\xE0\x1B_R`\x04_\xFD[\x94\x97\x93\x94\x92\x93\x92`\x01`\x01`\xA0\x1B\x03a\r\x9D\x8A\x84a\x12iV[Q\x16\x96a\ruW\x86_R`j` R\x86`\x01\x80`\xA0\x1B\x03a\r\xC1\x8A`@_ a\x16\xB5V[\x16\x91`\x01`\x01`\xA0\x1B\x03\x16\x10\x15a\x0E)Wa\r\xE8\x90\x83a\r\xE1\x8B\x88a\x12iV[Q\x91a \xB5V[\x15a\x0E\x1AW`\x01a\x0E\x10\x87\x94_\x98_R`m` Ra\x0E\n\x8A`@_ a\x16\xB5V[\x90a\x12\x91V[\x98\x01\x94\x93\x92a\r\x1AV[c\x8B\xAAW\x9F`\xE0\x1B_R`\x04_\xFD[c\xBAP\xF9\x11`\xE0\x1B_R`\x04_\xFD[c%\x1FV\xA1`\xE2\x1B_R`\x04_\xFD[c\x1F\xECgG`\xE3\x1B_R`\x04_\xFD[\x84Q`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2W` \x90\x83\x01\x01\x90\x83`?\x83\x01\x12\x15a\n\xD2W` \x82\x01Q\x90a\x0E\x87\x82a\x10FV[a\x0E\x94`@Q\x91\x82a\x0FwV[\x82\x81R`@\x84\x84\x01\x01\x86\x10a\n\xD2Wa\x0E\xB8` \x94\x93\x85\x94`@\x86\x85\x01\x91\x01a\x11\xD1V[\x81R\x01\x94\x01\x93a\x0C\xDDV[\x82Q`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x03a\n\xD2W\x81R` \x92\x83\x01\x92\x01a\x0CwV[4a\n\xD2W` 6`\x03\x19\x01\x12a\n\xD2W` a\x04\xDCc\xFF\xFF\xFF\xFFa\x0F\x06a\x103V[\x16a\x15;V[4a\n\xD2W` 6`\x03\x19\x01\x12a\n\xD2W`\x045`\x01`\x01`@\x1B\x03\x81\x11a\n\xD2Wa\x02ca\x0F?\x916\x90`\x04\x01a\x0F\xC5V[\0[` \x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\n\xF9W`@RV[`@\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\n\xF9W`@RV[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\n\xF9W`@RV[`\x01`\x01`@\x1B\x03\x81\x11a\n\xF9W`\x05\x1B` \x01\x90V[`\x045\x90`\x01`\x01`\xA0\x1B\x03\x82\x16\x82\x03a\n\xD2WV[\x90\x80`\x1F\x83\x01\x12\x15a\n\xD2W\x815\x90a\x0F\xDD\x82a\x0F\x98V[\x92a\x0F\xEB`@Q\x94\x85a\x0FwV[\x82\x84R` \x80\x85\x01\x93`\x05\x1B\x82\x01\x01\x91\x82\x11a\n\xD2W` \x01\x91[\x81\x83\x10a\x10\x13WPPP\x90V[\x825`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x03a\n\xD2W\x81R` \x92\x83\x01\x92\x01a\x10\x06V[`\x045\x90c\xFF\xFF\xFF\xFF\x82\x16\x82\x03a\n\xD2WV[`\x01`\x01`@\x1B\x03\x81\x11a\n\xF9W`\x1F\x01`\x1F\x19\x16` \x01\x90V[\x81`\x1F\x82\x01\x12\x15a\n\xD2W\x805\x90a\x10x\x82a\x10FV[\x92a\x10\x86`@Q\x94\x85a\x0FwV[\x82\x84R` \x83\x83\x01\x01\x11a\n\xD2W\x81_\x92` \x80\x93\x01\x83\x86\x017\x83\x01\x01R\x90V[` `@\x81\x84\x01\x92Q\x93\x82\x81R\x84Q\x80\x94R\x01\x92\x01\x90_[\x81\x81\x10a\x10\xCCWPPP\x90V[\x82Q\x80Q`\x01`\x01`\xA0\x1B\x03\x16\x85R` \x90\x81\x01Q`\x01`\x01``\x1B\x03\x16\x81\x86\x01R`@\x90\x94\x01\x93\x90\x92\x01\x91`\x01\x01a\x10\xBFV[\x91\x90` \x83\x82\x03\x12a\n\xD2W`@Qa\x11\x18\x81a\x0FAV[\x80\x93\x805\x90`\x01`\x01`@\x1B\x03\x82\x11a\n\xD2W\x01\x82`\x1F\x82\x01\x12\x15a\n\xD2W\x805\x90a\x11C\x82a\x0F\x98V[\x93a\x11Q`@Q\x95\x86a\x0FwV[\x82\x85R` \x80\x86\x01\x93`\x06\x1B\x83\x01\x01\x91\x81\x83\x11a\n\xD2W` \x01\x92[\x82\x84\x10a\x11{WPPPPRV[`@\x84\x83\x03\x12a\n\xD2W`@Q\x90a\x11\x92\x82a\x0F\\V[\x845`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x03a\n\xD2W\x82R` \x85\x015\x90`\x01`\x01``\x1B\x03\x82\x16\x82\x03a\n\xD2W\x82` \x92\x83`@\x95\x01R\x81R\x01\x93\x01\x92a\x11mV[_[\x83\x81\x10a\x11\xE2WPP_\x91\x01RV[\x81\x81\x01Q\x83\x82\x01R` \x01a\x11\xD3V[`fT\x90a\x11\xFF\x82a\x0F\x98V[\x91a\x12\r`@Q\x93\x84a\x0FwV[\x80\x83R`f_\x90\x81R_Q` a#M_9_Q\x90_R` \x85\x01[\x83\x83\x10a\x126WPPPPV[`\x01` \x81\x92`@Qa\x12H\x81a\x0F\\V[\x85T\x84\x80`\xA0\x1B\x03\x81\x16\x82R`\xA0\x1C\x83\x82\x01R\x81R\x01\x92\x01\x92\x01\x91\x90a\x12)V[\x80Q\x82\x10\x15a\x12}W` \x91`\x05\x1B\x01\x01\x90V[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[\x91\x90\x82\x01\x80\x92\x11a\n\xD6WV[a\x12\xA6a\x11\xF2V[\x80Q\x90\x92_a\x12\xCDa\x12\xB7\x84a\x0F\x98V[\x93a\x12\xC5`@Q\x95\x86a\x0FwV[\x80\x85Ra\x0F\x98V[` \x84\x01\x90`\x1F\x19\x016\x827_[\x86Q\x81\x10\x15a\x13\rW`\x01\x90`\x01`\x01`\xA0\x1B\x03a\x12\xF9\x82\x8Aa\x12iV[QQ\x16a\x13\x06\x82\x88a\x12iV[R\x01a\x12\xDBV[P`@\x80Qc\x90\x04\x13G`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x90\x96\x16`\x04\x87\x01R`$\x86\x01R\x92Q`D\x85\x01\x81\x90R\x91\x93\x90\x92\x90\x91\x82\x91`d\x83\x01\x91_[\x81\x81\x10a\x14\x9AWP_\x93\x92\x83\x90\x03\x91P\x82\x90P\x7F\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\x01`\x01`\xA0\x1B\x03\x16Z\xFA\x90\x81\x15a\n\xC7W_\x91a\x14\nW[P_\x91[\x84Q\x83\x10\x15a\x13\xECWa\x13\xAD\x83\x83a\x12iV[Q\x90`\x01`\x01``\x1B\x03` a\x13\xC3\x86\x89a\x12iV[Q\x01Q\x16\x91\x82\x81\x02\x92\x81\x84\x04\x14\x90\x15\x17\x15a\n\xD6W`\x01\x91a\x13\xE4\x91a\x12\x91V[\x92\x01\x91a\x13\x9AV[\x91PPa'\x10\x91\x92P\x04`gT\x81\x10\x15_\x14a\x14\x05W\x90V[P_\x90V[\x90P=\x80_\x83>a\x14\x1B\x81\x83a\x0FwV[\x81\x01\x90` \x81\x83\x03\x12a\n\xD2W\x80Q\x90`\x01`\x01`@\x1B\x03\x82\x11a\n\xD2W\x01\x90\x80`\x1F\x83\x01\x12\x15a\n\xD2W\x81Qa\x14Q\x81a\x0F\x98V[\x92a\x14_`@Q\x94\x85a\x0FwV[\x81\x84R` \x80\x85\x01\x92`\x05\x1B\x82\x01\x01\x92\x83\x11a\n\xD2W` \x01\x90[\x82\x82\x10a\x14\x8AWPPP_a\x13\x96V[\x81Q\x81R` \x91\x82\x01\x91\x01a\x14zV[\x82Q`\x01`\x01`\xA0\x1B\x03\x16\x84R\x85\x94P` \x93\x84\x01\x93\x90\x92\x01\x91`\x01\x01a\x13IV[\x91\x90\x91_\x83\x82\x01\x93\x84\x12\x91\x12\x90\x80\x15\x82\x16\x91\x15\x16\x17a\n\xD6WV[\x90_\x80[\x83Q\x82\x10\x15a\x15\x15W`\x01\x90a\x15\r\x90a\x15\x07`\x01`\x01`\xA0\x1B\x03a\x15\0\x86\x89a\x12iV[Q\x16a\x1C'V[\x90a\x14\xBCV[\x91\x01\x90a\x14\xDBV[\x90Pa\x15\"\x91\x92Pa\x1E$V[PPV[\x80T\x82\x10\x15a\x12}W_R` _ \x01\x90_\x90V[C\x81\x10\x15a\x15\xE0W`kT\x90_\x90[\x82\x82\x10a\x15\x87WPP\x80a\x15gWP_[`\x01`\x01`\xE0\x1B\x03\x16\x90V[_\x19\x81\x01\x90\x81\x11a\n\xD6Wa\x15}\x90`ka\x15&V[PT` \x1Ca\x15[V[\x90\x91a\x15\x9A\x81\x84\x18`\x01\x1C\x82\x85\x16a\x12\x91V[\x90\x82c\xFF\xFF\xFF\xFFa\x15\xAC\x84`ka\x15&V[PT\x16\x11\x15a\x15\xBEWP\x91[\x90a\x15JV[\x92P`\x01\x81\x01\x80\x91\x11\x15a\x15\xB8WcNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[`d`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R` `$\x82\x01R\x7FCheckpoints: block not yet mined`D\x82\x01R\xFD[C\x81\x10\x15a\x15\xE0W`lT\x90_\x90[\x82\x82\x10a\x16\\WPP\x80a\x16FWP_\x90V[_\x19\x81\x01\x90\x81\x11a\n\xD6Wa\x15}\x90`la\x15&V[\x90\x91a\x16o\x81\x84\x18`\x01\x1C\x82\x85\x16a\x12\x91V[\x90\x82c\xFF\xFF\xFF\xFFa\x16\x81\x84`la\x15&V[PT\x16\x11\x15a\x16\x93WP\x91[\x90a\x163V[\x92P`\x01\x81\x01\x80\x91\x11\x15a\x16\x8DWcNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[\x90C\x81\x10\x15a\x15\xE0W\x81T\x90_\x90[\x82\x82\x10a\x16\xEDWPP\x80a\x16\xD9WP_\x91\x90PV[_\x19\x81\x01\x90\x81\x11a\n\xD6Wa\x15}\x91a\x15&V[\x90\x91a\x17\0\x81\x84\x18`\x01\x1C\x82\x85\x16a\x12\x91V[\x90\x82c\xFF\xFF\xFF\xFFa\x17\x11\x84\x88a\x15&V[PT\x16\x11\x15a\x17#WP\x91[\x90a\x16\xC4V[\x92P`\x01\x81\x01\x80\x91\x11\x15a\x17\x1DWcNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[`kT\x80a\x15gWP_\x90V[\x80T\x80a\x16\xD9WP_\x91\x90PV[\x90` \x91a\x17y\x81Q\x80\x92\x81\x85R\x85\x80\x86\x01\x91\x01a\x11\xD1V[`\x1F\x01`\x1F\x19\x16\x01\x01\x90V[`3T`\x01`\x01`\xA0\x1B\x03\x163\x03a\x17\x99WV[`d`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R` `$\x82\x01R\x7FOwnable: caller is not the owner`D\x82\x01R\xFD[`lT\x90a\x17\xEB`la\x17RV[\x90\x82\x15\x15\x80a\x19oW[\x15a\x18cWa\x18\x03\x81a!\xCDV[\x91_\x19\x84\x01\x93\x84\x11a\n\xD6Wa\x18Y` \x93a\x18A\x7F\x93$\xF7\xE5\xA7\xC0(\x88\x08\xA64\xCC\xDED\xB8\xE9ygdt\xB2.)\xEE\x9D\xD5i\xB5^y\x1AK\x96`la\x15&V[P\x90c\xFF\xFF\xFF\xFF\x82T\x91\x81\x19\x90` \x1B\x16\x91\x16\x17\x90UV[P`@Q\x90\x81R\xA1V[c\xFF\xFF\xFF\xFFC\x11a\x19\x1BWa\x18w\x81a!\xCDV[\x91`@Q\x93a\x18\x85\x85a\x0F\\V[Cc\xFF\xFF\xFF\xFF\x16\x85R`\x01`\x01`\xE0\x1B\x03\x90\x93\x16` \x85\x01\x90\x81R\x92`\x01`@\x1B\x81\x10\x15a\n\xF9W\x80`\x01a\x18\xBF\x92\x01`lU`la\x15&V[\x94\x90\x94a\x19\x08WQ\x92Qc\xFF\xFF\xFF\xFF\x90\x93\x16c\xFF\xFF\xFF\xFF\x19` \x94\x85\x1B\x16\x17\x90\x93U\x7F\x93$\xF7\xE5\xA7\xC0(\x88\x08\xA64\xCC\xDED\xB8\xE9ygdt\xB2.)\xEE\x9D\xD5i\xB5^y\x1AK\x92a\x18YV[cNH{q`\xE0\x1B_R_`\x04R`$_\xFD[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FSafeCast: value doesn't fit in 3`D\x82\x01Re2 bits`\xD0\x1B`d\x82\x01R`\x84\x90\xFD[P_\x19\x83\x01\x83\x81\x11a\n\xD6Wa\x19\x8Bc\xFF\xFF\xFF\xFF\x91`la\x15&V[PT\x16C\x14a\x17\xF5V[`3\x80T`\x01`\x01`\xA0\x1B\x03\x92\x83\x16`\x01`\x01`\xA0\x1B\x03\x19\x82\x16\x81\x17\x90\x92U\x90\x91\x16\x7F\x8B\xE0\x07\x9CS\x16Y\x14\x13D\xCD\x1F\xD0\xA4\xF2\x84\x19I\x7F\x97\"\xA3\xDA\xAF\xE3\xB4\x18okdW\xE0_\x80\xA3V[`\x01`\x01`\xA0\x1B\x03\x90\x81\x16_\x81\x81R`j` R`@\x90 \x90\x92\x91\x90a\x1A\x02\x90a\x17RV[`\x01`\x01`\xA0\x1B\x03\x90\x92\x16\x92\x91\x16\x90\x82\x82\x14a\x1A]W\x80_R`j` Ra\x1A-\x83`@_ a\x1FRV[PP`@Q\x91\x82R\x7F\xD0a\x16\x82R\xF4As6X\xF0\x9EM\x8F[-\x99\x8E\xD4\xEF$\xA2\xBB\xFDl\xEC\xA5.\xA11P\x02` C\x93\xA4V[PPPV[\x15a\x1AiWV[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`+`$\x82\x01R\x7FInitializable: contract is not i`D\x82\x01Rjnitializing`\xA8\x1B`d\x82\x01R`\x84\x90\xFD[a\x1A\xCB\x81a ;V[\x15a\x1C\0W`@Q\x91a\x1A\xDD\x83a\x0FAV[a\x1A\xE5a\x11\xF2V[\x83R`fT_`fU\x80a\x1B\xC6W[P_[\x82Q\x80Q\x82\x10\x15a\x1BsW\x81a\x1B\x0C\x91a\x12iV[Q\x90`fT\x91`\x01`@\x1B\x83\x10\x15a\n\xF9W`\x01\x83\x01`fU`fT\x83\x10\x15a\x12}W`f_R\x80Q` \x91\x90\x91\x01Q`\xA0\x1B`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x91\x90\x91\x16\x17_Q` a#M_9_Q\x90_R\x90\x92\x01\x91\x90\x91U`\x01\x01a\x1A\xF7V[PP\x91a\x1B\xB3\x90a\x1B\xC1\x7F#\xAA\xD4\xE6\x17D\xEC\xE1d\x13\n\xA4\x15\xC1an\x80\x13k\x0F\x07p\xE5e\x89C\x8B\x90\xB2i&^\x93`@Q\x93\x84\x93`@\x85R`@\x85\x01\x90a\x10\xA7V[\x90\x83\x82\x03` \x85\x01Ra\x10\xA7V[\x03\x90\xA1V[`f_R_Q` a#M_9_Q\x90_R\x01_Q` a#M_9_Q\x90_R[\x81\x81\x10a\x1B\xF5WPa\x1A\xF4V[_\x81U`\x01\x01a\x1B\xE8V[c\xD1sWy`\xE0\x1B_R`\x04_\xFD[\x81\x81\x03\x92\x91_\x13\x80\x15\x82\x85\x13\x16\x91\x84\x12\x16\x17a\n\xD6WV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x81\x81R`m` R`@\x81 \x90\x92\x90\x83\x90a\x1CL\x90a\x17RV[\x80\x94\x84_R`n` R`\xFF`@_ T\x16\x15_\x14a\x1D\xC6Wa\x1Cp\x92\x93Pa\x1C\x0FV[\x92\x83\x15a\x1D\xC0W\x82_R`m` R`@_ \x90\x81T\x92a\x1C\x90\x83a\x17RV[\x84\x15\x15\x80a\x1D\x9BW[\x15a\x1C\xF4Wa\x1C\xA7_a!\xCDV[\x94_\x19\x81\x01\x90\x81\x11a\n\xD6W\x7F\x88w\r\xC8b\xE4z~\xD5\x86\x90xW\xEB\x1Bu\xE4\xC5\xFF\xC8\xB7\x07\xC7\xEE\x10\xEBt\xD6\x88_\xE5\x94\x95a\x18Aa\x1C\xE4\x92`@\x97a\x15&V[P[\x82Q\x91\x82R` \x82\x01R\xA2\x90V[c\xFF\xFF\xFF\xFFC\x11a\x19\x1BWa\x1D\x08_a!\xCDV[\x93`@Q\x95a\x1D\x16\x87a\x0F\\V[Cc\xFF\xFF\xFF\xFF\x16\x87R`\x01`\x01`\xE0\x1B\x03\x90\x95\x16` \x87\x01\x90\x81R\x94`\x01`@\x1B\x81\x10\x15a\n\xF9Wa\x1DM\x91`\x01\x82\x01\x81Ua\x15&V[\x95\x90\x95a\x19\x08WQ\x93Q` \x1Bc\xFF\xFF\xFF\xFF\x19\x16c\xFF\xFF\xFF\xFF\x94\x90\x94\x16\x93\x90\x93\x17\x90\x93U\x7F\x88w\r\xC8b\xE4z~\xD5\x86\x90xW\xEB\x1Bu\xE4\xC5\xFF\xC8\xB7\x07\xC7\xEE\x10\xEBt\xD6\x88_\xE5\x94\x92`@\x92a\x1C\xE4V[P_\x19\x85\x01\x85\x81\x11a\n\xD6Wa\x1D\xB6c\xFF\xFF\xFF\xFF\x91\x86a\x15&V[PT\x16C\x14a\x1C\x99V[PPP\x90V[PPPa\x1D\xD2\x90a\x12\x9EV[\x91a\x1D\xDD\x81\x84a\x1C\x0FV[\x92\x83\x15a\x1D\xC0W\x7F\x88w\r\xC8b\xE4z~\xD5\x86\x90xW\xEB\x1Bu\xE4\xC5\xFF\xC8\xB7\x07\xC7\xEE\x10\xEBt\xD6\x88_\xE5\x94\x91`@\x91\x84_R`m` Ra\x1E\x1D\x81\x84_ a\x1FRV[PPa\x1C\xE6V[\x90a\x1E7a\x1E0a\x17EV[\x92\x83a\x14\xBCV[\x90`kTa\x1EE`ka\x17RV[\x90\x80\x15\x15\x80a\x1F,W[\x15a\x1E\xA8Wa\x1E]\x84a!\xCDV[_\x19\x82\x01\x91\x82\x11a\n\xD6Wa\x18Aa\x1Ev\x92`ka\x15&V[P\x7F\x86\xDC\xF8k\x12\xDF\xEE\xDE\xA7J\xE90\r\xBD\xAA\x19;\xCC\xE5\x80\x93i\xC8\x17~\xA2\xF4\xEA\xAAer\x9B`@\x80Q\x85\x81R\x84` \x82\x01R\xA1V[c\xFF\xFF\xFF\xFFC\x11a\x19\x1BWa\x1E\xBC\x84a!\xCDV[`@Q\x91a\x1E\xC9\x83a\x0F\\V[Cc\xFF\xFF\xFF\xFF\x16\x83R`\x01`\x01`\xE0\x1B\x03\x90\x91\x16` \x83\x01\x90\x81R\x90`\x01`@\x1B\x81\x10\x15a\n\xF9W\x80`\x01a\x1F\x03\x92\x01`kU`ka\x15&V[\x91\x90\x91a\x19\x08W\x91Q\x91Q` \x1Bc\xFF\xFF\xFF\xFF\x19\x16c\xFF\xFF\xFF\xFF\x92\x90\x92\x16\x91\x90\x91\x17\x90Ua\x1EvV[P_\x19\x81\x01\x81\x81\x11a\n\xD6Wa\x1FHc\xFF\xFF\xFF\xFF\x91`ka\x15&V[PT\x16C\x14a\x1EOV[\x91\x90\x91\x80Ta\x1F`\x82a\x17RV[\x91\x81\x15\x15\x80a \x16W[\x15a\x1F\x95Wa\x1Fx\x85a!\xCDV[\x90_\x19\x83\x01\x92\x83\x11a\n\xD6Wa\x1F\x91\x92a\x18A\x91a\x15&V[\x91\x90V[c\xFF\xFF\xFF\xFFC\x11a\x19\x1BWa\x1F\xA9\x85a!\xCDV[\x90`@Q\x92a\x1F\xB7\x84a\x0F\\V[Cc\xFF\xFF\xFF\xFF\x16\x84R`\x01`\x01`\xE0\x1B\x03\x90\x92\x16` \x84\x01\x90\x81R\x91`\x01`@\x1B\x81\x10\x15a\n\xF9Wa\x1F\xEE\x91`\x01\x82\x01\x81Ua\x15&V[\x91\x90\x91a\x19\x08W\x91Q\x91Q` \x1Bc\xFF\xFF\xFF\xFF\x19\x16c\xFF\xFF\xFF\xFF\x92\x90\x92\x16\x91\x90\x91\x17\x90U\x91\x90V[P_\x19\x82\x01\x82\x81\x11a\n\xD6Wa 1c\xFF\xFF\xFF\xFF\x91\x83a\x15&V[PT\x16C\x14a\x1FjV[Q\x90_\x80\x80[\x84Q\x82\x10\x15a \x9EW`\x01`\x01`\xA0\x1B\x03a \\\x83\x87a\x12iV[QQ\x16\x90`\x01`\x01`\xA0\x1B\x03\x16\x81\x11\x15a\x0E)Wa \x95`\x01\x91\x93`\x01`\x01``\x1B\x03` a \x8B\x86\x8Aa\x12iV[Q\x01Q\x16\x90a\x12\x91V[\x91\x01\x90\x91a AV[P\x91\x92Pa'\x10\x14\x90Pa \xB0W_\x90V[`\x01\x90V[\x91\x90\x91a \xC2\x82\x84a\"[\x81a!\x88W[\x81a!VWP\x90V[\x90P` \x81\x80Q\x81\x01\x03\x12a\n\xD2W` \x01Q`\x01`\x01`\xE0\x1B\x03\x19\x81\x16\x90\x81\x90\x03a\n\xD2Wc\x0B\x13]?`\xE1\x1B\x14\x90V[\x80Q` \x14\x91Pa!MV[``a!GV[PPP`\x01\x90V[`\x01`\x01`\xA0\x1B\x03\x83\x81\x16\x91\x16\x14\x90P_a \xD3V[cNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[`\x01`\x01`\xE0\x1B\x03\x81\x11a!\xE7W`\x01`\x01`\xE0\x1B\x03\x16\x90V[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`'`$\x82\x01R\x7FSafeCast: value doesn't fit in 2`D\x82\x01Rf24 bits`\xC8\x1B`d\x82\x01R`\x84\x90\xFD[\x81Q`A\x81\x03a\"hWP\x90a\"d\x91` \x82\x01Q\x90```@\x84\x01Q\x93\x01Q_\x1A\x90a\"\xAAV[\x90\x91V[`@\x03a\"\xA1W`@` \x83\x01Q\x92\x01Q\x91\x82`\xFF\x1C\x91`\x1B\x83\x01\x80\x93\x11a\n\xD6Wa\"d\x93`\x01`\x01`\xFF\x1B\x03\x16\x92`\xFF\x16\x90a\"\xAAV[PP_\x90`\x02\x90V[\x90\x7F\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF]WnsW\xA4P\x1D\xDF\xE9/Fh\x1B \xA0\x84\x11a#AW`\xFF\x16\x90`\x1B\x82\x14\x15\x80a#6W[a#+W` \x93_\x93`\x80\x93`@Q\x93\x84R\x86\x84\x01R`@\x83\x01R``\x82\x01R\x82\x80R`\x01Z\xFA\x15a\n\xC7W_Q`\x01`\x01`\xA0\x1B\x03\x81\x16\x15a##W\x90_\x90V[P_\x90`\x01\x90V[PPPP_\x90`\x04\x90V[P`\x1C\x82\x14\x15a\"\xE1V[PPPP_\x90`\x03\x90V\xFEFP\x18y\xB8\xCA\x85%\xE8\xC2\xFDQ\x9E/\xBF\xCF\xA2\xEB\xEA&P\x12\x94\xAA\x02\xCB\xFC\xFB\x12\xE9CT\xA2dipfsX\"\x12 \xED\x9C\x9D\x91\x8A\xD0\x7F\xBC\xFE\x8D\0\xC4\xA3\xE0\xC7\xC5\xFEK\xA4J\xEE\xC5O\x15zR\"\xEF\xF3\x1A(\xA2dsolcC\0\x08\x1C\x003", - ); - /**```solidity - struct Quorum { StrategyParams[] strategies; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct Quorum { - pub strategies: - alloy::sol_types::private::Vec<::RustType>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec<::RustType>, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: Quorum) -> Self { - (value.strategies,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for Quorum { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { strategies: tuple.0 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for Quorum { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for Quorum { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.strategies), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for Quorum { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for Quorum { - const NAME: &'static str = "Quorum"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed("Quorum(StrategyParams[] strategies)") - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - let mut components = alloy_sol_types::private::Vec::with_capacity(1); - components.push(::eip712_root_type()); - components - .extend(::eip712_components()); - components - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - as alloy_sol_types::SolType>::eip712_data_word(&self.strategies) - .0 - .to_vec() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for Quorum { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.strategies, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.strategies, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct StrategyParams { address strategy; uint96 multiplier; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct StrategyParams { - pub strategy: alloy::sol_types::private::Address, - pub multiplier: alloy::sol_types::private::primitives::aliases::U96, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<96>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U96, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: StrategyParams) -> Self { - (value.strategy, value.multiplier) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for StrategyParams { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { strategy: tuple.0, multiplier: tuple.1 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for StrategyParams { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for StrategyParams { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.strategy, - ), - as alloy_sol_types::SolType>::tokenize( - &self.multiplier, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for StrategyParams { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for StrategyParams { - const NAME: &'static str = "StrategyParams"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "StrategyParams(address strategy,uint96 multiplier)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.strategy, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.multiplier) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for StrategyParams { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.strategy, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.multiplier, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.strategy, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.multiplier, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**Custom error with signature `InsufficientSignedStake()` and selector `0xe121632f`. - ```solidity - error InsufficientSignedStake(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InsufficientSignedStake {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InsufficientSignedStake) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InsufficientSignedStake { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InsufficientSignedStake { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InsufficientSignedStake()"; - const SELECTOR: [u8; 4] = [225u8, 33u8, 99u8, 47u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InsufficientWeight()` and selector `0xa8792fd1`. - ```solidity - error InsufficientWeight(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InsufficientWeight {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InsufficientWeight) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InsufficientWeight { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InsufficientWeight { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InsufficientWeight()"; - const SELECTOR: [u8; 4] = [168u8, 121u8, 47u8, 209u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidLength()` and selector `0x947d5a84`. - ```solidity - error InvalidLength(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidLength {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidLength) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidLength { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidLength { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidLength()"; - const SELECTOR: [u8; 4] = [148u8, 125u8, 90u8, 132u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidQuorum()` and selector `0xd1735779`. - ```solidity - error InvalidQuorum(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidQuorum {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidQuorum) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidQuorum { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidQuorum { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidQuorum()"; - const SELECTOR: [u8; 4] = [209u8, 115u8, 87u8, 121u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidReferenceBlock()` and selector `0xe64f180f`. - ```solidity - error InvalidReferenceBlock(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidReferenceBlock {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidReferenceBlock) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidReferenceBlock { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidReferenceBlock { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidReferenceBlock()"; - const SELECTOR: [u8; 4] = [230u8, 79u8, 24u8, 15u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidSignature()` and selector `0x8baa579f`. - ```solidity - error InvalidSignature(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidSignature {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidSignature) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidSignature { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidSignature { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidSignature()"; - const SELECTOR: [u8; 4] = [139u8, 170u8, 87u8, 159u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidSignedWeight()` and selector `0x960b41ee`. - ```solidity - error InvalidSignedWeight(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidSignedWeight {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidSignedWeight) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidSignedWeight { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidSignedWeight { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidSignedWeight()"; - const SELECTOR: [u8; 4] = [150u8, 11u8, 65u8, 238u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidThreshold()` and selector `0xaabd5a09`. - ```solidity - error InvalidThreshold(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidThreshold {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidThreshold) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidThreshold { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidThreshold { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidThreshold()"; - const SELECTOR: [u8; 4] = [170u8, 189u8, 90u8, 9u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `LengthMismatch()` and selector `0xff633a38`. - ```solidity - error LengthMismatch(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct LengthMismatch {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: LengthMismatch) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for LengthMismatch { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for LengthMismatch { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "LengthMismatch()"; - const SELECTOR: [u8; 4] = [255u8, 99u8, 58u8, 56u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `MustUpdateAllOperators()` and selector `0x2d3df6b6`. - ```solidity - error MustUpdateAllOperators(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct MustUpdateAllOperators {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: MustUpdateAllOperators) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for MustUpdateAllOperators { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for MustUpdateAllOperators { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "MustUpdateAllOperators()"; - const SELECTOR: [u8; 4] = [45u8, 61u8, 246u8, 182u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `NotSorted()` and selector `0xba50f911`. - ```solidity - error NotSorted(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct NotSorted {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: NotSorted) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for NotSorted { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for NotSorted { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "NotSorted()"; - const SELECTOR: [u8; 4] = [186u8, 80u8, 249u8, 17u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `OperatorAlreadyRegistered()` and selector `0x42ee68b5`. - ```solidity - error OperatorAlreadyRegistered(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OperatorAlreadyRegistered {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: OperatorAlreadyRegistered) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OperatorAlreadyRegistered { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for OperatorAlreadyRegistered { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "OperatorAlreadyRegistered()"; - const SELECTOR: [u8; 4] = [66u8, 238u8, 104u8, 181u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `OperatorNotRegistered()` and selector `0x25ec6c1f`. - ```solidity - error OperatorNotRegistered(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OperatorNotRegistered {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: OperatorNotRegistered) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OperatorNotRegistered { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for OperatorNotRegistered { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "OperatorNotRegistered()"; - const SELECTOR: [u8; 4] = [37u8, 236u8, 108u8, 31u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Event with signature `Initialized(uint8)` and selector `0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498`. - ```solidity - event Initialized(uint8 version); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Initialized { - #[allow(missing_docs)] - pub version: u8, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Initialized { - type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<8>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "Initialized(uint8)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 127u8, 38u8, 184u8, 63u8, 249u8, 110u8, 31u8, 43u8, 106u8, 104u8, 47u8, 19u8, - 56u8, 82u8, 246u8, 121u8, 138u8, 9u8, 196u8, 101u8, 218u8, 149u8, 146u8, 20u8, - 96u8, 206u8, 251u8, 56u8, 71u8, 64u8, 36u8, 152u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { version: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.version, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Initialized { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Initialized> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Initialized) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `MinimumWeightUpdated(uint256,uint256)` and selector `0x713ca53b88d6eb63f5b1854cb8cbdd736ec51eda225e46791aa9298b0160648f`. - ```solidity - event MinimumWeightUpdated(uint256 _old, uint256 _new); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct MinimumWeightUpdated { - #[allow(missing_docs)] - pub _old: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub _new: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for MinimumWeightUpdated { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "MinimumWeightUpdated(uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 113u8, 60u8, 165u8, 59u8, 136u8, 214u8, 235u8, 99u8, 245u8, 177u8, 133u8, 76u8, - 184u8, 203u8, 221u8, 115u8, 110u8, 197u8, 30u8, 218u8, 34u8, 94u8, 70u8, 121u8, - 26u8, 169u8, 41u8, 139u8, 1u8, 96u8, 100u8, 143u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _old: data.0, _new: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self._old, - ), - as alloy_sol_types::SolType>::tokenize( - &self._new, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for MinimumWeightUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&MinimumWeightUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &MinimumWeightUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorDeregistered(address,address)` and selector `0x31e0adfec71bccee37b6e83a90c2fedb17d8f1693fee863c4771e7bfe2aed580`. - ```solidity - event OperatorDeregistered(address indexed _operator, address indexed _avs); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorDeregistered { - #[allow(missing_docs)] - pub _operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _avs: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorDeregistered { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "OperatorDeregistered(address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 49u8, 224u8, 173u8, 254u8, 199u8, 27u8, 204u8, 238u8, 55u8, 182u8, 232u8, 58u8, - 144u8, 194u8, 254u8, 219u8, 23u8, 216u8, 241u8, 105u8, 63u8, 238u8, 134u8, - 60u8, 71u8, 113u8, 231u8, 191u8, 226u8, 174u8, 213u8, 128u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _operator: topics.1, _avs: topics.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self._operator.clone(), self._avs.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._operator, - ); - out[2usize] = ::encode_topic( - &self._avs, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorDeregistered { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorDeregistered> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorDeregistered) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorRegistered(address,address)` and selector `0xa453db612af59e5521d6ab9284dc3e2d06af286eb1b1b7b771fce4716c19f2c1`. - ```solidity - event OperatorRegistered(address indexed _operator, address indexed _avs); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorRegistered { - #[allow(missing_docs)] - pub _operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _avs: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorRegistered { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "OperatorRegistered(address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 164u8, 83u8, 219u8, 97u8, 42u8, 245u8, 158u8, 85u8, 33u8, 214u8, 171u8, 146u8, - 132u8, 220u8, 62u8, 45u8, 6u8, 175u8, 40u8, 110u8, 177u8, 177u8, 183u8, 183u8, - 113u8, 252u8, 228u8, 113u8, 108u8, 25u8, 242u8, 193u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _operator: topics.1, _avs: topics.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self._operator.clone(), self._avs.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._operator, - ); - out[2usize] = ::encode_topic( - &self._avs, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorRegistered { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorRegistered> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorRegistered) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorWeightUpdated(address,uint256,uint256)` and selector `0x88770dc862e47a7ed586907857eb1b75e4c5ffc8b707c7ee10eb74d6885fe594`. - ```solidity - event OperatorWeightUpdated(address indexed _operator, uint256 oldWeight, uint256 newWeight); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorWeightUpdated { - #[allow(missing_docs)] - pub _operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub oldWeight: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newWeight: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorWeightUpdated { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = - (alloy_sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Address); - const SIGNATURE: &'static str = "OperatorWeightUpdated(address,uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 136u8, 119u8, 13u8, 200u8, 98u8, 228u8, 122u8, 126u8, 213u8, 134u8, 144u8, - 120u8, 87u8, 235u8, 27u8, 117u8, 228u8, 197u8, 255u8, 200u8, 183u8, 7u8, 199u8, - 238u8, 16u8, 235u8, 116u8, 214u8, 136u8, 95u8, 229u8, 148u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _operator: topics.1, oldWeight: data.0, newWeight: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.oldWeight, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newWeight, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self._operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorWeightUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorWeightUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorWeightUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OwnershipTransferred(address,address)` and selector `0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0`. - ```solidity - event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OwnershipTransferred { - #[allow(missing_docs)] - pub previousOwner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub newOwner: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OwnershipTransferred { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "OwnershipTransferred(address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8, 31u8, - 208u8, 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8, 218u8, - 175u8, 227u8, 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { previousOwner: topics.1, newOwner: topics.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.previousOwner.clone(), self.newOwner.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.previousOwner, - ); - out[2usize] = ::encode_topic( - &self.newOwner, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OwnershipTransferred { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OwnershipTransferred> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OwnershipTransferred) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `QuorumUpdated(((address,uint96)[]),((address,uint96)[]))` and selector `0x23aad4e61744ece164130aa415c1616e80136b0f0770e56589438b90b269265e`. - ```solidity - event QuorumUpdated(Quorum _old, Quorum _new); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct QuorumUpdated { - #[allow(missing_docs)] - pub _old: ::RustType, - #[allow(missing_docs)] - pub _new: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for QuorumUpdated { - type DataTuple<'a> = (Quorum, Quorum); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = - "QuorumUpdated(((address,uint96)[]),((address,uint96)[]))"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 35u8, 170u8, 212u8, 230u8, 23u8, 68u8, 236u8, 225u8, 100u8, 19u8, 10u8, 164u8, - 21u8, 193u8, 97u8, 110u8, 128u8, 19u8, 107u8, 15u8, 7u8, 112u8, 229u8, 101u8, - 137u8, 67u8, 139u8, 144u8, 178u8, 105u8, 38u8, 94u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _old: data.0, _new: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - ::tokenize(&self._old), - ::tokenize(&self._new), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for QuorumUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&QuorumUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &QuorumUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `SigningKeyUpdate(address,uint256,address,address)` and selector `0xd061168252f441733658f09e4d8f5b2d998ed4ef24a2bbfd6ceca52ea1315002`. - ```solidity - event SigningKeyUpdate(address indexed operator, uint256 indexed updateBlock, address indexed newSigningKey, address oldSigningKey); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct SigningKeyUpdate { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub updateBlock: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newSigningKey: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub oldSigningKey: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for SigningKeyUpdate { - type DataTuple<'a> = (alloy::sol_types::sol_data::Address,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "SigningKeyUpdate(address,uint256,address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 208u8, 97u8, 22u8, 130u8, 82u8, 244u8, 65u8, 115u8, 54u8, 88u8, 240u8, 158u8, - 77u8, 143u8, 91u8, 45u8, 153u8, 142u8, 212u8, 239u8, 36u8, 162u8, 187u8, 253u8, - 108u8, 236u8, 165u8, 46u8, 161u8, 49u8, 80u8, 2u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - operator: topics.1, - updateBlock: topics.2, - newSigningKey: topics.3, - oldSigningKey: data.0, - } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - (::tokenize( - &self.oldSigningKey, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self.operator.clone(), - self.updateBlock.clone(), - self.newSigningKey.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.operator, - ); - out[2usize] = as alloy_sol_types::EventTopic>::encode_topic(&self.updateBlock); - out[3usize] = ::encode_topic( - &self.newSigningKey, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for SigningKeyUpdate { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&SigningKeyUpdate> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &SigningKeyUpdate) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `ThresholdWeightUpdated(uint256)` and selector `0x9324f7e5a7c0288808a634ccde44b8e979676474b22e29ee9dd569b55e791a4b`. - ```solidity - event ThresholdWeightUpdated(uint256 _thresholdWeight); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct ThresholdWeightUpdated { - #[allow(missing_docs)] - pub _thresholdWeight: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for ThresholdWeightUpdated { - type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "ThresholdWeightUpdated(uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 147u8, 36u8, 247u8, 229u8, 167u8, 192u8, 40u8, 136u8, 8u8, 166u8, 52u8, 204u8, - 222u8, 68u8, 184u8, 233u8, 121u8, 103u8, 100u8, 116u8, 178u8, 46u8, 41u8, - 238u8, 157u8, 213u8, 105u8, 181u8, 94u8, 121u8, 26u8, 75u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _thresholdWeight: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._thresholdWeight, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ThresholdWeightUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&ThresholdWeightUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &ThresholdWeightUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `TotalWeightUpdated(uint256,uint256)` and selector `0x86dcf86b12dfeedea74ae9300dbdaa193bcce5809369c8177ea2f4eaaa65729b`. - ```solidity - event TotalWeightUpdated(uint256 oldTotalWeight, uint256 newTotalWeight); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct TotalWeightUpdated { - #[allow(missing_docs)] - pub oldTotalWeight: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newTotalWeight: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for TotalWeightUpdated { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "TotalWeightUpdated(uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 134u8, 220u8, 248u8, 107u8, 18u8, 223u8, 238u8, 222u8, 167u8, 74u8, 233u8, - 48u8, 13u8, 189u8, 170u8, 25u8, 59u8, 204u8, 229u8, 128u8, 147u8, 105u8, 200u8, - 23u8, 126u8, 162u8, 244u8, 234u8, 170u8, 101u8, 114u8, 155u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { oldTotalWeight: data.0, newTotalWeight: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.oldTotalWeight, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newTotalWeight, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for TotalWeightUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&TotalWeightUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &TotalWeightUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `UpdateMinimumWeight(uint256,uint256)` and selector `0x1ea42186b305fa37310450d9fb87ea1e8f0c7f447e771479e3b27634bfe84dc1`. - ```solidity - event UpdateMinimumWeight(uint256 oldMinimumWeight, uint256 newMinimumWeight); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct UpdateMinimumWeight { - #[allow(missing_docs)] - pub oldMinimumWeight: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newMinimumWeight: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for UpdateMinimumWeight { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "UpdateMinimumWeight(uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 30u8, 164u8, 33u8, 134u8, 179u8, 5u8, 250u8, 55u8, 49u8, 4u8, 80u8, 217u8, - 251u8, 135u8, 234u8, 30u8, 143u8, 12u8, 127u8, 68u8, 126u8, 119u8, 20u8, 121u8, - 227u8, 178u8, 118u8, 52u8, 191u8, 232u8, 77u8, 193u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { oldMinimumWeight: data.0, newMinimumWeight: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.oldMinimumWeight, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newMinimumWeight, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for UpdateMinimumWeight { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&UpdateMinimumWeight> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &UpdateMinimumWeight) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Constructor`. - ```solidity - constructor(address _delegationManager); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct constructorCall { - pub _delegationManager: alloy::sol_types::private::Address, - } - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: constructorCall) -> Self { - (value._delegationManager,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for constructorCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _delegationManager: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolConstructor for constructorCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self._delegationManager, - ),) - } - } - }; - /**Function with signature `deregisterOperator()` and selector `0x857dc190`. - ```solidity - function deregisterOperator() external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct deregisterOperatorCall {} - ///Container type for the return parameters of the [`deregisterOperator()`](deregisterOperatorCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct deregisterOperatorReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: deregisterOperatorCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for deregisterOperatorCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: deregisterOperatorReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for deregisterOperatorReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for deregisterOperatorCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = deregisterOperatorReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "deregisterOperator()"; - const SELECTOR: [u8; 4] = [133u8, 125u8, 193u8, 144u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getLastCheckpointOperatorWeight(address)` and selector `0x3b242e4a`. - ```solidity - function getLastCheckpointOperatorWeight(address _operator) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getLastCheckpointOperatorWeightCall { - pub _operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`getLastCheckpointOperatorWeight(address)`](getLastCheckpointOperatorWeightCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getLastCheckpointOperatorWeightReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getLastCheckpointOperatorWeightCall) -> Self { - (value._operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getLastCheckpointOperatorWeightCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getLastCheckpointOperatorWeightReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getLastCheckpointOperatorWeightReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getLastCheckpointOperatorWeightCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getLastCheckpointOperatorWeightReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getLastCheckpointOperatorWeight(address)"; - const SELECTOR: [u8; 4] = [59u8, 36u8, 46u8, 74u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self._operator, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getLastCheckpointThresholdWeight()` and selector `0xb933fa74`. - ```solidity - function getLastCheckpointThresholdWeight() external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getLastCheckpointThresholdWeightCall {} - ///Container type for the return parameters of the [`getLastCheckpointThresholdWeight()`](getLastCheckpointThresholdWeightCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getLastCheckpointThresholdWeightReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getLastCheckpointThresholdWeightCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getLastCheckpointThresholdWeightCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getLastCheckpointThresholdWeightReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getLastCheckpointThresholdWeightReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getLastCheckpointThresholdWeightCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getLastCheckpointThresholdWeightReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getLastCheckpointThresholdWeight()"; - const SELECTOR: [u8; 4] = [185u8, 51u8, 250u8, 116u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getLastCheckpointThresholdWeightAtBlock(uint32)` and selector `0x1e4cd85e`. - ```solidity - function getLastCheckpointThresholdWeightAtBlock(uint32 _blockNumber) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getLastCheckpointThresholdWeightAtBlockCall { - pub _blockNumber: u32, - } - ///Container type for the return parameters of the [`getLastCheckpointThresholdWeightAtBlock(uint32)`](getLastCheckpointThresholdWeightAtBlockCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getLastCheckpointThresholdWeightAtBlockReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u32,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From - for UnderlyingRustTuple<'_> - { - fn from(value: getLastCheckpointThresholdWeightAtBlockCall) -> Self { - (value._blockNumber,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getLastCheckpointThresholdWeightAtBlockCall - { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _blockNumber: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From - for UnderlyingRustTuple<'_> - { - fn from(value: getLastCheckpointThresholdWeightAtBlockReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getLastCheckpointThresholdWeightAtBlockReturn - { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getLastCheckpointThresholdWeightAtBlockCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getLastCheckpointThresholdWeightAtBlockReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getLastCheckpointThresholdWeightAtBlock(uint32)"; - const SELECTOR: [u8; 4] = [30u8, 76u8, 216u8, 94u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._blockNumber, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getLastCheckpointTotalWeight()` and selector `0x314f3a49`. - ```solidity - function getLastCheckpointTotalWeight() external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getLastCheckpointTotalWeightCall {} - ///Container type for the return parameters of the [`getLastCheckpointTotalWeight()`](getLastCheckpointTotalWeightCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getLastCheckpointTotalWeightReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getLastCheckpointTotalWeightCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getLastCheckpointTotalWeightCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getLastCheckpointTotalWeightReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getLastCheckpointTotalWeightReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getLastCheckpointTotalWeightCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getLastCheckpointTotalWeightReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getLastCheckpointTotalWeight()"; - const SELECTOR: [u8; 4] = [49u8, 79u8, 58u8, 73u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getLastCheckpointTotalWeightAtBlock(uint32)` and selector `0x0dba3394`. - ```solidity - function getLastCheckpointTotalWeightAtBlock(uint32 _blockNumber) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getLastCheckpointTotalWeightAtBlockCall { - pub _blockNumber: u32, - } - ///Container type for the return parameters of the [`getLastCheckpointTotalWeightAtBlock(uint32)`](getLastCheckpointTotalWeightAtBlockCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getLastCheckpointTotalWeightAtBlockReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u32,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getLastCheckpointTotalWeightAtBlockCall) -> Self { - (value._blockNumber,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getLastCheckpointTotalWeightAtBlockCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _blockNumber: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getLastCheckpointTotalWeightAtBlockReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getLastCheckpointTotalWeightAtBlockReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getLastCheckpointTotalWeightAtBlockCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getLastCheckpointTotalWeightAtBlockReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getLastCheckpointTotalWeightAtBlock(uint32)"; - const SELECTOR: [u8; 4] = [13u8, 186u8, 51u8, 148u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._blockNumber, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getLastestOperatorSigningKey(address)` and selector `0xcdcd3581`. - ```solidity - function getLastestOperatorSigningKey(address _operator) external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getLastestOperatorSigningKeyCall { - pub _operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`getLastestOperatorSigningKey(address)`](getLastestOperatorSigningKeyCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getLastestOperatorSigningKeyReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getLastestOperatorSigningKeyCall) -> Self { - (value._operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getLastestOperatorSigningKeyCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getLastestOperatorSigningKeyReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getLastestOperatorSigningKeyReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getLastestOperatorSigningKeyCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getLastestOperatorSigningKeyReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getLastestOperatorSigningKey(address)"; - const SELECTOR: [u8; 4] = [205u8, 205u8, 53u8, 129u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self._operator, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getOperatorSigningKeyAtBlock(address,uint256)` and selector `0x5e1042e8`. - ```solidity - function getOperatorSigningKeyAtBlock(address _operator, uint256 _blockNumber) external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorSigningKeyAtBlockCall { - pub _operator: alloy::sol_types::private::Address, - pub _blockNumber: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`getOperatorSigningKeyAtBlock(address,uint256)`](getOperatorSigningKeyAtBlockCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorSigningKeyAtBlockReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorSigningKeyAtBlockCall) -> Self { - (value._operator, value._blockNumber) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorSigningKeyAtBlockCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _operator: tuple.0, _blockNumber: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorSigningKeyAtBlockReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorSigningKeyAtBlockReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorSigningKeyAtBlockCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorSigningKeyAtBlockReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getOperatorSigningKeyAtBlock(address,uint256)"; - const SELECTOR: [u8; 4] = [94u8, 16u8, 66u8, 232u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._operator, - ), - as alloy_sol_types::SolType>::tokenize( - &self._blockNumber, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getOperatorWeight(address)` and selector `0x98ec1ac9`. - ```solidity - function getOperatorWeight(address _operator) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorWeightCall { - pub _operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`getOperatorWeight(address)`](getOperatorWeightCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorWeightReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorWeightCall) -> Self { - (value._operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorWeightCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorWeightReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorWeightReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorWeightCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorWeightReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getOperatorWeight(address)"; - const SELECTOR: [u8; 4] = [152u8, 236u8, 26u8, 201u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self._operator, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getOperatorWeightAtBlock(address,uint32)` and selector `0x955f2d90`. - ```solidity - function getOperatorWeightAtBlock(address _operator, uint32 _blockNumber) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorWeightAtBlockCall { - pub _operator: alloy::sol_types::private::Address, - pub _blockNumber: u32, - } - ///Container type for the return parameters of the [`getOperatorWeightAtBlock(address,uint32)`](getOperatorWeightAtBlockCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorWeightAtBlockReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<32>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address, u32); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorWeightAtBlockCall) -> Self { - (value._operator, value._blockNumber) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorWeightAtBlockCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _operator: tuple.0, _blockNumber: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorWeightAtBlockReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorWeightAtBlockReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorWeightAtBlockCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<32>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorWeightAtBlockReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getOperatorWeightAtBlock(address,uint32)"; - const SELECTOR: [u8; 4] = [149u8, 95u8, 45u8, 144u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._operator, - ), - as alloy_sol_types::SolType>::tokenize( - &self._blockNumber, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `initialize(address,uint256,((address,uint96)[]))` and selector `0xab118995`. - ```solidity - function initialize(address _serviceManager, uint256 _thresholdWeight, Quorum memory _quorum) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct initializeCall { - pub _serviceManager: alloy::sol_types::private::Address, - pub _thresholdWeight: alloy::sol_types::private::primitives::aliases::U256, - pub _quorum: ::RustType, - } - ///Container type for the return parameters of the [`initialize(address,uint256,((address,uint96)[]))`](initializeCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct initializeReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - Quorum, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ::RustType, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: initializeCall) -> Self { - (value._serviceManager, value._thresholdWeight, value._quorum) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for initializeCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _serviceManager: tuple.0, _thresholdWeight: tuple.1, _quorum: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: initializeReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for initializeReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for initializeCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - Quorum, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = initializeReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "initialize(address,uint256,((address,uint96)[]))"; - const SELECTOR: [u8; 4] = [171u8, 17u8, 137u8, 149u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._serviceManager, - ), - as alloy_sol_types::SolType>::tokenize( - &self._thresholdWeight, - ), - ::tokenize(&self._quorum), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `isValidSignature(bytes32,bytes)` and selector `0x1626ba7e`. - ```solidity - function isValidSignature(bytes32 _dataHash, bytes memory _signatureData) external view returns (bytes4); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isValidSignatureCall { - pub _dataHash: alloy::sol_types::private::FixedBytes<32>, - pub _signatureData: alloy::sol_types::private::Bytes, - } - ///Container type for the return parameters of the [`isValidSignature(bytes32,bytes)`](isValidSignatureCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isValidSignatureReturn { - pub _0: alloy::sol_types::private::FixedBytes<4>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Bytes); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::FixedBytes<32>, alloy::sol_types::private::Bytes); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isValidSignatureCall) -> Self { - (value._dataHash, value._signatureData) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isValidSignatureCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _dataHash: tuple.0, _signatureData: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<4>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isValidSignatureReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isValidSignatureReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for isValidSignatureCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Bytes); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = isValidSignatureReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "isValidSignature(bytes32,bytes)"; - const SELECTOR: [u8; 4] = [22u8, 38u8, 186u8, 126u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self._dataHash), - ::tokenize( - &self._signatureData, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `minimumWeight()` and selector `0x40bf2fb7`. - ```solidity - function minimumWeight() external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct minimumWeightCall {} - ///Container type for the return parameters of the [`minimumWeight()`](minimumWeightCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct minimumWeightReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: minimumWeightCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for minimumWeightCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: minimumWeightReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for minimumWeightReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for minimumWeightCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = minimumWeightReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "minimumWeight()"; - const SELECTOR: [u8; 4] = [64u8, 191u8, 47u8, 183u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `operatorRegistered(address)` and selector `0xec7fbb31`. - ```solidity - function operatorRegistered(address _operator) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct operatorRegisteredCall { - pub _operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`operatorRegistered(address)`](operatorRegisteredCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct operatorRegisteredReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: operatorRegisteredCall) -> Self { - (value._operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for operatorRegisteredCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: operatorRegisteredReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for operatorRegisteredReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for operatorRegisteredCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = operatorRegisteredReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "operatorRegistered(address)"; - const SELECTOR: [u8; 4] = [236u8, 127u8, 187u8, 49u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self._operator, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `owner()` and selector `0x8da5cb5b`. - ```solidity - function owner() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ownerCall {} - ///Container type for the return parameters of the [`owner()`](ownerCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ownerReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: ownerCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ownerCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: ownerReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ownerReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for ownerCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = ownerReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "owner()"; - const SELECTOR: [u8; 4] = [141u8, 165u8, 203u8, 91u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `quorum()` and selector `0x1703a018`. - ```solidity - function quorum() external view returns (Quorum memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct quorumCall {} - ///Container type for the return parameters of the [`quorum()`](quorumCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct quorumReturn { - pub _0: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: quorumCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for quorumCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (Quorum,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (::RustType,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: quorumReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for quorumReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for quorumCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = quorumReturn; - type ReturnTuple<'a> = (Quorum,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "quorum()"; - const SELECTOR: [u8; 4] = [23u8, 3u8, 160u8, 24u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `registerOperatorWithSignature((bytes,bytes32,uint256),address)` and selector `0x3d5611f6`. - ```solidity - function registerOperatorWithSignature(ISignatureUtils.SignatureWithSaltAndExpiry memory _operatorSignature, address _signingKey) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registerOperatorWithSignatureCall { - pub _operatorSignature: - ::RustType, - pub _signingKey: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`registerOperatorWithSignature((bytes,bytes32,uint256),address)`](registerOperatorWithSignatureCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registerOperatorWithSignatureReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (ISignatureUtils::SignatureWithSaltAndExpiry, alloy::sol_types::sol_data::Address); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - ::RustType, - alloy::sol_types::private::Address, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: registerOperatorWithSignatureCall) -> Self { - (value._operatorSignature, value._signingKey) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registerOperatorWithSignatureCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _operatorSignature: tuple.0, _signingKey: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: registerOperatorWithSignatureReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registerOperatorWithSignatureReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for registerOperatorWithSignatureCall { - type Parameters<'a> = - (ISignatureUtils::SignatureWithSaltAndExpiry, alloy::sol_types::sol_data::Address); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = registerOperatorWithSignatureReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "registerOperatorWithSignature((bytes,bytes32,uint256),address)"; - const SELECTOR: [u8; 4] = [61u8, 86u8, 17u8, 246u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._operatorSignature, - ), - ::tokenize( - &self._signingKey, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `renounceOwnership()` and selector `0x715018a6`. - ```solidity - function renounceOwnership() external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct renounceOwnershipCall {} - ///Container type for the return parameters of the [`renounceOwnership()`](renounceOwnershipCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct renounceOwnershipReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: renounceOwnershipCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for renounceOwnershipCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: renounceOwnershipReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for renounceOwnershipReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for renounceOwnershipCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = renounceOwnershipReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "renounceOwnership()"; - const SELECTOR: [u8; 4] = [113u8, 80u8, 24u8, 166u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `transferOwnership(address)` and selector `0xf2fde38b`. - ```solidity - function transferOwnership(address newOwner) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferOwnershipCall { - pub newOwner: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`transferOwnership(address)`](transferOwnershipCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferOwnershipReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferOwnershipCall) -> Self { - (value.newOwner,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferOwnershipCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { newOwner: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferOwnershipReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferOwnershipReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for transferOwnershipCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = transferOwnershipReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "transferOwnership(address)"; - const SELECTOR: [u8; 4] = [242u8, 253u8, 227u8, 139u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.newOwner, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `updateMinimumWeight(uint256,address[])` and selector `0x696255be`. - ```solidity - function updateMinimumWeight(uint256 _newMinimumWeight, address[] memory _operators) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateMinimumWeightCall { - pub _newMinimumWeight: alloy::sol_types::private::primitives::aliases::U256, - pub _operators: alloy::sol_types::private::Vec, - } - ///Container type for the return parameters of the [`updateMinimumWeight(uint256,address[])`](updateMinimumWeightCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateMinimumWeightReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Array, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::primitives::aliases::U256, - alloy::sol_types::private::Vec, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateMinimumWeightCall) -> Self { - (value._newMinimumWeight, value._operators) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateMinimumWeightCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _newMinimumWeight: tuple.0, _operators: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateMinimumWeightReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateMinimumWeightReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for updateMinimumWeightCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Array, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = updateMinimumWeightReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "updateMinimumWeight(uint256,address[])"; - const SELECTOR: [u8; 4] = [105u8, 98u8, 85u8, 190u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self._newMinimumWeight), - as alloy_sol_types::SolType>::tokenize(&self._operators), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `updateOperatorSigningKey(address)` and selector `0x743c31f4`. - ```solidity - function updateOperatorSigningKey(address _newSigningKey) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateOperatorSigningKeyCall { - pub _newSigningKey: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`updateOperatorSigningKey(address)`](updateOperatorSigningKeyCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateOperatorSigningKeyReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateOperatorSigningKeyCall) -> Self { - (value._newSigningKey,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateOperatorSigningKeyCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _newSigningKey: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateOperatorSigningKeyReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateOperatorSigningKeyReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for updateOperatorSigningKeyCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = updateOperatorSigningKeyReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "updateOperatorSigningKey(address)"; - const SELECTOR: [u8; 4] = [116u8, 60u8, 49u8, 244u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self._newSigningKey, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `updateOperators(address[])` and selector `0x00cf2ab5`. - ```solidity - function updateOperators(address[] memory _operators) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateOperatorsCall { - pub _operators: alloy::sol_types::private::Vec, - } - ///Container type for the return parameters of the [`updateOperators(address[])`](updateOperatorsCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateOperatorsReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Vec,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateOperatorsCall) -> Self { - (value._operators,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateOperatorsCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _operators: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateOperatorsReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateOperatorsReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for updateOperatorsCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Array,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = updateOperatorsReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "updateOperators(address[])"; - const SELECTOR: [u8; 4] = [0u8, 207u8, 42u8, 181u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self._operators), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `updateOperatorsForQuorum(address[][],bytes)` and selector `0x5140a548`. - ```solidity - function updateOperatorsForQuorum(address[][] memory operatorsPerQuorum, bytes memory) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateOperatorsForQuorumCall { - pub operatorsPerQuorum: alloy::sol_types::private::Vec< - alloy::sol_types::private::Vec, - >, - pub _1: alloy::sol_types::private::Bytes, - } - ///Container type for the return parameters of the [`updateOperatorsForQuorum(address[][],bytes)`](updateOperatorsForQuorumCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateOperatorsForQuorumReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Array< - alloy::sol_types::sol_data::Array, - >, - alloy::sol_types::sol_data::Bytes, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - alloy::sol_types::private::Vec, - >, - alloy::sol_types::private::Bytes, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateOperatorsForQuorumCall) -> Self { - (value.operatorsPerQuorum, value._1) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateOperatorsForQuorumCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operatorsPerQuorum: tuple.0, _1: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateOperatorsForQuorumReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateOperatorsForQuorumReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for updateOperatorsForQuorumCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Array< - alloy::sol_types::sol_data::Array, - >, - alloy::sol_types::sol_data::Bytes, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = updateOperatorsForQuorumReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "updateOperatorsForQuorum(address[][],bytes)"; - const SELECTOR: [u8; 4] = [81u8, 64u8, 165u8, 72u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - , - > as alloy_sol_types::SolType>::tokenize( - &self.operatorsPerQuorum - ), - ::tokenize( - &self._1, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `updateQuorumConfig(((address,uint96)[]),address[])` and selector `0xdec5d1f6`. - ```solidity - function updateQuorumConfig(Quorum memory _quorum, address[] memory _operators) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateQuorumConfigCall { - pub _quorum: ::RustType, - pub _operators: alloy::sol_types::private::Vec, - } - ///Container type for the return parameters of the [`updateQuorumConfig(((address,uint96)[]),address[])`](updateQuorumConfigCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateQuorumConfigReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (Quorum, alloy::sol_types::sol_data::Array); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - ::RustType, - alloy::sol_types::private::Vec, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateQuorumConfigCall) -> Self { - (value._quorum, value._operators) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateQuorumConfigCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _quorum: tuple.0, _operators: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateQuorumConfigReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateQuorumConfigReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for updateQuorumConfigCall { - type Parameters<'a> = - (Quorum, alloy::sol_types::sol_data::Array); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = updateQuorumConfigReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "updateQuorumConfig(((address,uint96)[]),address[])"; - const SELECTOR: [u8; 4] = [222u8, 197u8, 209u8, 246u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize(&self._quorum), - as alloy_sol_types::SolType>::tokenize(&self._operators), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `updateStakeThreshold(uint256)` and selector `0x5ef53329`. - ```solidity - function updateStakeThreshold(uint256 _thresholdWeight) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateStakeThresholdCall { - pub _thresholdWeight: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`updateStakeThreshold(uint256)`](updateStakeThresholdCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateStakeThresholdReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateStakeThresholdCall) -> Self { - (value._thresholdWeight,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateStakeThresholdCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _thresholdWeight: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateStakeThresholdReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateStakeThresholdReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for updateStakeThresholdCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = updateStakeThresholdReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "updateStakeThreshold(uint256)"; - const SELECTOR: [u8; 4] = [94u8, 245u8, 51u8, 41u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._thresholdWeight, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`ECDSAStakeRegistry`](self) function calls. - pub enum ECDSAStakeRegistryCalls { - deregisterOperator(deregisterOperatorCall), - getLastCheckpointOperatorWeight(getLastCheckpointOperatorWeightCall), - getLastCheckpointThresholdWeight(getLastCheckpointThresholdWeightCall), - getLastCheckpointThresholdWeightAtBlock(getLastCheckpointThresholdWeightAtBlockCall), - getLastCheckpointTotalWeight(getLastCheckpointTotalWeightCall), - getLastCheckpointTotalWeightAtBlock(getLastCheckpointTotalWeightAtBlockCall), - getLastestOperatorSigningKey(getLastestOperatorSigningKeyCall), - getOperatorSigningKeyAtBlock(getOperatorSigningKeyAtBlockCall), - getOperatorWeight(getOperatorWeightCall), - getOperatorWeightAtBlock(getOperatorWeightAtBlockCall), - initialize(initializeCall), - isValidSignature(isValidSignatureCall), - minimumWeight(minimumWeightCall), - operatorRegistered(operatorRegisteredCall), - owner(ownerCall), - quorum(quorumCall), - registerOperatorWithSignature(registerOperatorWithSignatureCall), - renounceOwnership(renounceOwnershipCall), - transferOwnership(transferOwnershipCall), - updateMinimumWeight(updateMinimumWeightCall), - updateOperatorSigningKey(updateOperatorSigningKeyCall), - updateOperators(updateOperatorsCall), - updateOperatorsForQuorum(updateOperatorsForQuorumCall), - updateQuorumConfig(updateQuorumConfigCall), - updateStakeThreshold(updateStakeThresholdCall), - } - #[automatically_derived] - impl ECDSAStakeRegistryCalls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [0u8, 207u8, 42u8, 181u8], - [13u8, 186u8, 51u8, 148u8], - [22u8, 38u8, 186u8, 126u8], - [23u8, 3u8, 160u8, 24u8], - [30u8, 76u8, 216u8, 94u8], - [49u8, 79u8, 58u8, 73u8], - [59u8, 36u8, 46u8, 74u8], - [61u8, 86u8, 17u8, 246u8], - [64u8, 191u8, 47u8, 183u8], - [81u8, 64u8, 165u8, 72u8], - [94u8, 16u8, 66u8, 232u8], - [94u8, 245u8, 51u8, 41u8], - [105u8, 98u8, 85u8, 190u8], - [113u8, 80u8, 24u8, 166u8], - [116u8, 60u8, 49u8, 244u8], - [133u8, 125u8, 193u8, 144u8], - [141u8, 165u8, 203u8, 91u8], - [149u8, 95u8, 45u8, 144u8], - [152u8, 236u8, 26u8, 201u8], - [171u8, 17u8, 137u8, 149u8], - [185u8, 51u8, 250u8, 116u8], - [205u8, 205u8, 53u8, 129u8], - [222u8, 197u8, 209u8, 246u8], - [236u8, 127u8, 187u8, 49u8], - [242u8, 253u8, 227u8, 139u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for ECDSAStakeRegistryCalls { - const NAME: &'static str = "ECDSAStakeRegistryCalls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 25usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::deregisterOperator(_) => { - ::SELECTOR - } - Self::getLastCheckpointOperatorWeight(_) => { - ::SELECTOR - } - Self::getLastCheckpointThresholdWeight(_) => { - ::SELECTOR - } - Self::getLastCheckpointThresholdWeightAtBlock(_) => { - ::SELECTOR - } - Self::getLastCheckpointTotalWeight(_) => { - ::SELECTOR - } - Self::getLastCheckpointTotalWeightAtBlock(_) => { - ::SELECTOR - } - Self::getLastestOperatorSigningKey(_) => { - ::SELECTOR - } - Self::getOperatorSigningKeyAtBlock(_) => { - ::SELECTOR - } - Self::getOperatorWeight(_) => { - ::SELECTOR - } - Self::getOperatorWeightAtBlock(_) => { - ::SELECTOR - } - Self::initialize(_) => { - ::SELECTOR - } - Self::isValidSignature(_) => { - ::SELECTOR - } - Self::minimumWeight(_) => { - ::SELECTOR - } - Self::operatorRegistered(_) => { - ::SELECTOR - } - Self::owner(_) => ::SELECTOR, - Self::quorum(_) => ::SELECTOR, - Self::registerOperatorWithSignature(_) => { - ::SELECTOR - } - Self::renounceOwnership(_) => { - ::SELECTOR - } - Self::transferOwnership(_) => { - ::SELECTOR - } - Self::updateMinimumWeight(_) => { - ::SELECTOR - } - Self::updateOperatorSigningKey(_) => { - ::SELECTOR - } - Self::updateOperators(_) => { - ::SELECTOR - } - Self::updateOperatorsForQuorum(_) => { - ::SELECTOR - } - Self::updateQuorumConfig(_) => { - ::SELECTOR - } - Self::updateStakeThreshold(_) => { - ::SELECTOR - } - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn( - &[u8], - bool, - ) - -> alloy_sol_types::Result] = &[ - { - fn updateOperators( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::updateOperators) - } - updateOperators - }, - { - fn getLastCheckpointTotalWeightAtBlock( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - ECDSAStakeRegistryCalls::getLastCheckpointTotalWeightAtBlock, - ) - } - getLastCheckpointTotalWeightAtBlock - }, - { - fn isValidSignature( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::isValidSignature) - } - isValidSignature - }, - { - fn quorum( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(ECDSAStakeRegistryCalls::quorum) - } - quorum - }, - { - fn getLastCheckpointThresholdWeightAtBlock( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - ECDSAStakeRegistryCalls::getLastCheckpointThresholdWeightAtBlock, - ) - } - getLastCheckpointThresholdWeightAtBlock - }, - { - fn getLastCheckpointTotalWeight( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(ECDSAStakeRegistryCalls::getLastCheckpointTotalWeight) - } - getLastCheckpointTotalWeight - }, - { - fn getLastCheckpointOperatorWeight( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - ECDSAStakeRegistryCalls::getLastCheckpointOperatorWeight, - ) - } - getLastCheckpointOperatorWeight - }, - { - fn registerOperatorWithSignature( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(ECDSAStakeRegistryCalls::registerOperatorWithSignature) - } - registerOperatorWithSignature - }, - { - fn minimumWeight( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::minimumWeight) - } - minimumWeight - }, - { - fn updateOperatorsForQuorum( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::updateOperatorsForQuorum) - } - updateOperatorsForQuorum - }, - { - fn getOperatorSigningKeyAtBlock( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(ECDSAStakeRegistryCalls::getOperatorSigningKeyAtBlock) - } - getOperatorSigningKeyAtBlock - }, - { - fn updateStakeThreshold( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::updateStakeThreshold) - } - updateStakeThreshold - }, - { - fn updateMinimumWeight( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::updateMinimumWeight) - } - updateMinimumWeight - }, - { - fn renounceOwnership( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::renounceOwnership) - } - renounceOwnership - }, - { - fn updateOperatorSigningKey( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::updateOperatorSigningKey) - } - updateOperatorSigningKey - }, - { - fn deregisterOperator( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::deregisterOperator) - } - deregisterOperator - }, - { - fn owner( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(ECDSAStakeRegistryCalls::owner) - } - owner - }, - { - fn getOperatorWeightAtBlock( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::getOperatorWeightAtBlock) - } - getOperatorWeightAtBlock - }, - { - fn getOperatorWeight( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::getOperatorWeight) - } - getOperatorWeight - }, - { - fn initialize( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(ECDSAStakeRegistryCalls::initialize) - } - initialize - }, - { - fn getLastCheckpointThresholdWeight( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - ECDSAStakeRegistryCalls::getLastCheckpointThresholdWeight, - ) - } - getLastCheckpointThresholdWeight - }, - { - fn getLastestOperatorSigningKey( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(ECDSAStakeRegistryCalls::getLastestOperatorSigningKey) - } - getLastestOperatorSigningKey - }, - { - fn updateQuorumConfig( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::updateQuorumConfig) - } - updateQuorumConfig - }, - { - fn operatorRegistered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::operatorRegistered) - } - operatorRegistered - }, - { - fn transferOwnership( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryCalls::transferOwnership) - } - transferOwnership - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::deregisterOperator(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getLastCheckpointOperatorWeight(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getLastCheckpointThresholdWeight(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getLastCheckpointThresholdWeightAtBlock(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getLastCheckpointTotalWeight(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getLastCheckpointTotalWeightAtBlock(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getLastestOperatorSigningKey(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorSigningKeyAtBlock(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorWeight(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorWeightAtBlock(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::initialize(inner) => { - ::abi_encoded_size(inner) - } - Self::isValidSignature(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::minimumWeight(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::operatorRegistered(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::owner(inner) => { - ::abi_encoded_size(inner) - } - Self::quorum(inner) => { - ::abi_encoded_size(inner) - } - Self::registerOperatorWithSignature(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::renounceOwnership(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::transferOwnership(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::updateMinimumWeight(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::updateOperatorSigningKey(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::updateOperators(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::updateOperatorsForQuorum(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::updateQuorumConfig(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::updateStakeThreshold(inner) => { - ::abi_encoded_size( - inner, - ) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::deregisterOperator(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getLastCheckpointOperatorWeight(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getLastCheckpointThresholdWeight(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getLastCheckpointThresholdWeightAtBlock(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getLastCheckpointTotalWeight(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getLastCheckpointTotalWeightAtBlock(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getLastestOperatorSigningKey(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getOperatorSigningKeyAtBlock(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getOperatorWeight(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getOperatorWeightAtBlock(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::initialize(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::isValidSignature(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::minimumWeight(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::operatorRegistered(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::owner(inner) => { - ::abi_encode_raw(inner, out) - } - Self::quorum(inner) => { - ::abi_encode_raw(inner, out) - } - Self::registerOperatorWithSignature(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::renounceOwnership(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::transferOwnership(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::updateMinimumWeight(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::updateOperatorSigningKey(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::updateOperators(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::updateOperatorsForQuorum(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::updateQuorumConfig(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::updateStakeThreshold(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - } - } - } - ///Container for all the [`ECDSAStakeRegistry`](self) custom errors. - pub enum ECDSAStakeRegistryErrors { - InsufficientSignedStake(InsufficientSignedStake), - InsufficientWeight(InsufficientWeight), - InvalidLength(InvalidLength), - InvalidQuorum(InvalidQuorum), - InvalidReferenceBlock(InvalidReferenceBlock), - InvalidSignature(InvalidSignature), - InvalidSignedWeight(InvalidSignedWeight), - InvalidThreshold(InvalidThreshold), - LengthMismatch(LengthMismatch), - MustUpdateAllOperators(MustUpdateAllOperators), - NotSorted(NotSorted), - OperatorAlreadyRegistered(OperatorAlreadyRegistered), - OperatorNotRegistered(OperatorNotRegistered), - } - #[automatically_derived] - impl ECDSAStakeRegistryErrors { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [37u8, 236u8, 108u8, 31u8], - [45u8, 61u8, 246u8, 182u8], - [66u8, 238u8, 104u8, 181u8], - [139u8, 170u8, 87u8, 159u8], - [148u8, 125u8, 90u8, 132u8], - [150u8, 11u8, 65u8, 238u8], - [168u8, 121u8, 47u8, 209u8], - [170u8, 189u8, 90u8, 9u8], - [186u8, 80u8, 249u8, 17u8], - [209u8, 115u8, 87u8, 121u8], - [225u8, 33u8, 99u8, 47u8], - [230u8, 79u8, 24u8, 15u8], - [255u8, 99u8, 58u8, 56u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for ECDSAStakeRegistryErrors { - const NAME: &'static str = "ECDSAStakeRegistryErrors"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 13usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::InsufficientSignedStake(_) => { - ::SELECTOR - } - Self::InsufficientWeight(_) => { - ::SELECTOR - } - Self::InvalidLength(_) => ::SELECTOR, - Self::InvalidQuorum(_) => ::SELECTOR, - Self::InvalidReferenceBlock(_) => { - ::SELECTOR - } - Self::InvalidSignature(_) => { - ::SELECTOR - } - Self::InvalidSignedWeight(_) => { - ::SELECTOR - } - Self::InvalidThreshold(_) => { - ::SELECTOR - } - Self::LengthMismatch(_) => ::SELECTOR, - Self::MustUpdateAllOperators(_) => { - ::SELECTOR - } - Self::NotSorted(_) => ::SELECTOR, - Self::OperatorAlreadyRegistered(_) => { - ::SELECTOR - } - Self::OperatorNotRegistered(_) => { - ::SELECTOR - } - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn( - &[u8], - bool, - ) - -> alloy_sol_types::Result] = &[ - { - fn OperatorNotRegistered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryErrors::OperatorNotRegistered) - } - OperatorNotRegistered - }, - { - fn MustUpdateAllOperators( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryErrors::MustUpdateAllOperators) - } - MustUpdateAllOperators - }, - { - fn OperatorAlreadyRegistered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryErrors::OperatorAlreadyRegistered) - } - OperatorAlreadyRegistered - }, - { - fn InvalidSignature( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryErrors::InvalidSignature) - } - InvalidSignature - }, - { - fn InvalidLength( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(ECDSAStakeRegistryErrors::InvalidLength) - } - InvalidLength - }, - { - fn InvalidSignedWeight( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryErrors::InvalidSignedWeight) - } - InvalidSignedWeight - }, - { - fn InsufficientWeight( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryErrors::InsufficientWeight) - } - InsufficientWeight - }, - { - fn InvalidThreshold( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryErrors::InvalidThreshold) - } - InvalidThreshold - }, - { - fn NotSorted( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(ECDSAStakeRegistryErrors::NotSorted) - } - NotSorted - }, - { - fn InvalidQuorum( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(ECDSAStakeRegistryErrors::InvalidQuorum) - } - InvalidQuorum - }, - { - fn InsufficientSignedStake( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryErrors::InsufficientSignedStake) - } - InsufficientSignedStake - }, - { - fn InvalidReferenceBlock( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryErrors::InvalidReferenceBlock) - } - InvalidReferenceBlock - }, - { - fn LengthMismatch( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryErrors::LengthMismatch) - } - LengthMismatch - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::InsufficientSignedStake(inner) => { - ::abi_encoded_size(inner) - } - Self::InsufficientWeight(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidLength(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidQuorum(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidReferenceBlock(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidSignature(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidSignedWeight(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidThreshold(inner) => { - ::abi_encoded_size(inner) - } - Self::LengthMismatch(inner) => { - ::abi_encoded_size(inner) - } - Self::MustUpdateAllOperators(inner) => { - ::abi_encoded_size(inner) - } - Self::NotSorted(inner) => { - ::abi_encoded_size(inner) - } - Self::OperatorAlreadyRegistered(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::OperatorNotRegistered(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::InsufficientSignedStake(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::InsufficientWeight(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidLength(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidQuorum(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidReferenceBlock(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidSignature(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidSignedWeight(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidThreshold(inner) => { - ::abi_encode_raw(inner, out) - } - Self::LengthMismatch(inner) => { - ::abi_encode_raw(inner, out) - } - Self::MustUpdateAllOperators(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::NotSorted(inner) => { - ::abi_encode_raw(inner, out) - } - Self::OperatorAlreadyRegistered(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::OperatorNotRegistered(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - ///Container for all the [`ECDSAStakeRegistry`](self) events. - pub enum ECDSAStakeRegistryEvents { - Initialized(Initialized), - MinimumWeightUpdated(MinimumWeightUpdated), - OperatorDeregistered(OperatorDeregistered), - OperatorRegistered(OperatorRegistered), - OperatorWeightUpdated(OperatorWeightUpdated), - OwnershipTransferred(OwnershipTransferred), - QuorumUpdated(QuorumUpdated), - SigningKeyUpdate(SigningKeyUpdate), - ThresholdWeightUpdated(ThresholdWeightUpdated), - TotalWeightUpdated(TotalWeightUpdated), - UpdateMinimumWeight(UpdateMinimumWeight), - } - #[automatically_derived] - impl ECDSAStakeRegistryEvents { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[ - [ - 30u8, 164u8, 33u8, 134u8, 179u8, 5u8, 250u8, 55u8, 49u8, 4u8, 80u8, 217u8, 251u8, - 135u8, 234u8, 30u8, 143u8, 12u8, 127u8, 68u8, 126u8, 119u8, 20u8, 121u8, 227u8, - 178u8, 118u8, 52u8, 191u8, 232u8, 77u8, 193u8, - ], - [ - 35u8, 170u8, 212u8, 230u8, 23u8, 68u8, 236u8, 225u8, 100u8, 19u8, 10u8, 164u8, - 21u8, 193u8, 97u8, 110u8, 128u8, 19u8, 107u8, 15u8, 7u8, 112u8, 229u8, 101u8, - 137u8, 67u8, 139u8, 144u8, 178u8, 105u8, 38u8, 94u8, - ], - [ - 49u8, 224u8, 173u8, 254u8, 199u8, 27u8, 204u8, 238u8, 55u8, 182u8, 232u8, 58u8, - 144u8, 194u8, 254u8, 219u8, 23u8, 216u8, 241u8, 105u8, 63u8, 238u8, 134u8, 60u8, - 71u8, 113u8, 231u8, 191u8, 226u8, 174u8, 213u8, 128u8, - ], - [ - 113u8, 60u8, 165u8, 59u8, 136u8, 214u8, 235u8, 99u8, 245u8, 177u8, 133u8, 76u8, - 184u8, 203u8, 221u8, 115u8, 110u8, 197u8, 30u8, 218u8, 34u8, 94u8, 70u8, 121u8, - 26u8, 169u8, 41u8, 139u8, 1u8, 96u8, 100u8, 143u8, - ], - [ - 127u8, 38u8, 184u8, 63u8, 249u8, 110u8, 31u8, 43u8, 106u8, 104u8, 47u8, 19u8, 56u8, - 82u8, 246u8, 121u8, 138u8, 9u8, 196u8, 101u8, 218u8, 149u8, 146u8, 20u8, 96u8, - 206u8, 251u8, 56u8, 71u8, 64u8, 36u8, 152u8, - ], - [ - 134u8, 220u8, 248u8, 107u8, 18u8, 223u8, 238u8, 222u8, 167u8, 74u8, 233u8, 48u8, - 13u8, 189u8, 170u8, 25u8, 59u8, 204u8, 229u8, 128u8, 147u8, 105u8, 200u8, 23u8, - 126u8, 162u8, 244u8, 234u8, 170u8, 101u8, 114u8, 155u8, - ], - [ - 136u8, 119u8, 13u8, 200u8, 98u8, 228u8, 122u8, 126u8, 213u8, 134u8, 144u8, 120u8, - 87u8, 235u8, 27u8, 117u8, 228u8, 197u8, 255u8, 200u8, 183u8, 7u8, 199u8, 238u8, - 16u8, 235u8, 116u8, 214u8, 136u8, 95u8, 229u8, 148u8, - ], - [ - 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8, 31u8, 208u8, - 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8, 218u8, 175u8, 227u8, - 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8, - ], - [ - 147u8, 36u8, 247u8, 229u8, 167u8, 192u8, 40u8, 136u8, 8u8, 166u8, 52u8, 204u8, - 222u8, 68u8, 184u8, 233u8, 121u8, 103u8, 100u8, 116u8, 178u8, 46u8, 41u8, 238u8, - 157u8, 213u8, 105u8, 181u8, 94u8, 121u8, 26u8, 75u8, - ], - [ - 164u8, 83u8, 219u8, 97u8, 42u8, 245u8, 158u8, 85u8, 33u8, 214u8, 171u8, 146u8, - 132u8, 220u8, 62u8, 45u8, 6u8, 175u8, 40u8, 110u8, 177u8, 177u8, 183u8, 183u8, - 113u8, 252u8, 228u8, 113u8, 108u8, 25u8, 242u8, 193u8, - ], - [ - 208u8, 97u8, 22u8, 130u8, 82u8, 244u8, 65u8, 115u8, 54u8, 88u8, 240u8, 158u8, 77u8, - 143u8, 91u8, 45u8, 153u8, 142u8, 212u8, 239u8, 36u8, 162u8, 187u8, 253u8, 108u8, - 236u8, 165u8, 46u8, 161u8, 49u8, 80u8, 2u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for ECDSAStakeRegistryEvents { - const NAME: &'static str = "ECDSAStakeRegistryEvents"; - const COUNT: usize = 11usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::Initialized) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::MinimumWeightUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorDeregistered) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorRegistered) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorWeightUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OwnershipTransferred) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::QuorumUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::SigningKeyUpdate) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::ThresholdWeightUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::TotalWeightUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::UpdateMinimumWeight) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ECDSAStakeRegistryEvents { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::Initialized(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::MinimumWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorDeregistered(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorRegistered(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OwnershipTransferred(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::QuorumUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::SigningKeyUpdate(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::ThresholdWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::TotalWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::UpdateMinimumWeight(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::Initialized(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::MinimumWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorDeregistered(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorRegistered(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OwnershipTransferred(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::QuorumUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::SigningKeyUpdate(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::ThresholdWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::TotalWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::UpdateMinimumWeight(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`ECDSAStakeRegistry`](self) contract instance. - - See the [wrapper's documentation](`ECDSAStakeRegistryInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> ECDSAStakeRegistryInstance { - ECDSAStakeRegistryInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - _delegationManager: alloy::sol_types::private::Address, - ) -> impl ::core::future::Future>> - { - ECDSAStakeRegistryInstance::::deploy(provider, _delegationManager) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - _delegationManager: alloy::sol_types::private::Address, - ) -> alloy_contract::RawCallBuilder { - ECDSAStakeRegistryInstance::::deploy_builder(provider, _delegationManager) - } - /**A [`ECDSAStakeRegistry`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`ECDSAStakeRegistry`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct ECDSAStakeRegistryInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for ECDSAStakeRegistryInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ECDSAStakeRegistryInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ECDSAStakeRegistryInstance - { - /**Creates a new wrapper around an on-chain [`ECDSAStakeRegistry`](self) contract instance. - - See the [wrapper's documentation](`ECDSAStakeRegistryInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - _delegationManager: alloy::sol_types::private::Address, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider, _delegationManager); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder( - provider: P, - _delegationManager: alloy::sol_types::private::Address, - ) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - [ - &BYTECODE[..], - &alloy_sol_types::SolConstructor::abi_encode(&constructorCall { - _delegationManager, - })[..], - ] - .concat() - .into(), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl ECDSAStakeRegistryInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> ECDSAStakeRegistryInstance { - ECDSAStakeRegistryInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ECDSAStakeRegistryInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`deregisterOperator`] function. - pub fn deregisterOperator( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&deregisterOperatorCall {}) - } - ///Creates a new call builder for the [`getLastCheckpointOperatorWeight`] function. - pub fn getLastCheckpointOperatorWeight( - &self, - _operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getLastCheckpointOperatorWeightCall { _operator }) - } - ///Creates a new call builder for the [`getLastCheckpointThresholdWeight`] function. - pub fn getLastCheckpointThresholdWeight( - &self, - ) -> alloy_contract::SolCallBuilder - { - self.call_builder(&getLastCheckpointThresholdWeightCall {}) - } - ///Creates a new call builder for the [`getLastCheckpointThresholdWeightAtBlock`] function. - pub fn getLastCheckpointThresholdWeightAtBlock( - &self, - _blockNumber: u32, - ) -> alloy_contract::SolCallBuilder - { - self.call_builder(&getLastCheckpointThresholdWeightAtBlockCall { _blockNumber }) - } - ///Creates a new call builder for the [`getLastCheckpointTotalWeight`] function. - pub fn getLastCheckpointTotalWeight( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getLastCheckpointTotalWeightCall {}) - } - ///Creates a new call builder for the [`getLastCheckpointTotalWeightAtBlock`] function. - pub fn getLastCheckpointTotalWeightAtBlock( - &self, - _blockNumber: u32, - ) -> alloy_contract::SolCallBuilder - { - self.call_builder(&getLastCheckpointTotalWeightAtBlockCall { _blockNumber }) - } - ///Creates a new call builder for the [`getLastestOperatorSigningKey`] function. - pub fn getLastestOperatorSigningKey( - &self, - _operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getLastestOperatorSigningKeyCall { _operator }) - } - ///Creates a new call builder for the [`getOperatorSigningKeyAtBlock`] function. - pub fn getOperatorSigningKeyAtBlock( - &self, - _operator: alloy::sol_types::private::Address, - _blockNumber: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorSigningKeyAtBlockCall { _operator, _blockNumber }) - } - ///Creates a new call builder for the [`getOperatorWeight`] function. - pub fn getOperatorWeight( - &self, - _operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorWeightCall { _operator }) - } - ///Creates a new call builder for the [`getOperatorWeightAtBlock`] function. - pub fn getOperatorWeightAtBlock( - &self, - _operator: alloy::sol_types::private::Address, - _blockNumber: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorWeightAtBlockCall { _operator, _blockNumber }) - } - ///Creates a new call builder for the [`initialize`] function. - pub fn initialize( - &self, - _serviceManager: alloy::sol_types::private::Address, - _thresholdWeight: alloy::sol_types::private::primitives::aliases::U256, - _quorum: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&initializeCall { _serviceManager, _thresholdWeight, _quorum }) - } - ///Creates a new call builder for the [`isValidSignature`] function. - pub fn isValidSignature( - &self, - _dataHash: alloy::sol_types::private::FixedBytes<32>, - _signatureData: alloy::sol_types::private::Bytes, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&isValidSignatureCall { _dataHash, _signatureData }) - } - ///Creates a new call builder for the [`minimumWeight`] function. - pub fn minimumWeight(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&minimumWeightCall {}) - } - ///Creates a new call builder for the [`operatorRegistered`] function. - pub fn operatorRegistered( - &self, - _operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&operatorRegisteredCall { _operator }) - } - ///Creates a new call builder for the [`owner`] function. - pub fn owner(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&ownerCall {}) - } - ///Creates a new call builder for the [`quorum`] function. - pub fn quorum(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&quorumCall {}) - } - ///Creates a new call builder for the [`registerOperatorWithSignature`] function. - pub fn registerOperatorWithSignature( - &self, - _operatorSignature: ::RustType, - _signingKey: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(®isterOperatorWithSignatureCall { - _operatorSignature, - _signingKey, - }) - } - ///Creates a new call builder for the [`renounceOwnership`] function. - pub fn renounceOwnership( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&renounceOwnershipCall {}) - } - ///Creates a new call builder for the [`transferOwnership`] function. - pub fn transferOwnership( - &self, - newOwner: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&transferOwnershipCall { newOwner }) - } - ///Creates a new call builder for the [`updateMinimumWeight`] function. - pub fn updateMinimumWeight( - &self, - _newMinimumWeight: alloy::sol_types::private::primitives::aliases::U256, - _operators: alloy::sol_types::private::Vec, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&updateMinimumWeightCall { _newMinimumWeight, _operators }) - } - ///Creates a new call builder for the [`updateOperatorSigningKey`] function. - pub fn updateOperatorSigningKey( - &self, - _newSigningKey: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&updateOperatorSigningKeyCall { _newSigningKey }) - } - ///Creates a new call builder for the [`updateOperators`] function. - pub fn updateOperators( - &self, - _operators: alloy::sol_types::private::Vec, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&updateOperatorsCall { _operators }) - } - ///Creates a new call builder for the [`updateOperatorsForQuorum`] function. - pub fn updateOperatorsForQuorum( - &self, - operatorsPerQuorum: alloy::sol_types::private::Vec< - alloy::sol_types::private::Vec, - >, - _1: alloy::sol_types::private::Bytes, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&updateOperatorsForQuorumCall { operatorsPerQuorum, _1 }) - } - ///Creates a new call builder for the [`updateQuorumConfig`] function. - pub fn updateQuorumConfig( - &self, - _quorum: ::RustType, - _operators: alloy::sol_types::private::Vec, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&updateQuorumConfigCall { _quorum, _operators }) - } - ///Creates a new call builder for the [`updateStakeThreshold`] function. - pub fn updateStakeThreshold( - &self, - _thresholdWeight: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&updateStakeThresholdCall { _thresholdWeight }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ECDSAStakeRegistryInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`Initialized`] event. - pub fn Initialized_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`MinimumWeightUpdated`] event. - pub fn MinimumWeightUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorDeregistered`] event. - pub fn OperatorDeregistered_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorRegistered`] event. - pub fn OperatorRegistered_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorWeightUpdated`] event. - pub fn OperatorWeightUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OwnershipTransferred`] event. - pub fn OwnershipTransferred_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`QuorumUpdated`] event. - pub fn QuorumUpdated_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`SigningKeyUpdate`] event. - pub fn SigningKeyUpdate_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`ThresholdWeightUpdated`] event. - pub fn ThresholdWeightUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`TotalWeightUpdated`] event. - pub fn TotalWeightUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`UpdateMinimumWeight`] event. - pub fn UpdateMinimumWeight_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/ecdsastakeregistryeventsanderrors.rs b/crates/bindings/src/ecdsastakeregistryeventsanderrors.rs deleted file mode 100644 index e07e40f1..00000000 --- a/crates/bindings/src/ecdsastakeregistryeventsanderrors.rs +++ /dev/null @@ -1,3106 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface ECDSAStakeRegistryEventsAndErrors { - struct Quorum { - StrategyParams[] strategies; - } - struct StrategyParams { - address strategy; - uint96 multiplier; - } - - error InsufficientSignedStake(); - error InsufficientWeight(); - error InvalidLength(); - error InvalidQuorum(); - error InvalidReferenceBlock(); - error InvalidSignature(); - error InvalidSignedWeight(); - error InvalidThreshold(); - error LengthMismatch(); - error MustUpdateAllOperators(); - error NotSorted(); - error OperatorAlreadyRegistered(); - error OperatorNotRegistered(); - - event MinimumWeightUpdated(uint256 _old, uint256 _new); - event OperatorDeregistered(address indexed _operator, address indexed _avs); - event OperatorRegistered(address indexed _operator, address indexed _avs); - event OperatorWeightUpdated(address indexed _operator, uint256 oldWeight, uint256 newWeight); - event QuorumUpdated(Quorum _old, Quorum _new); - event SigningKeyUpdate(address indexed operator, uint256 indexed updateBlock, address indexed newSigningKey, address oldSigningKey); - event ThresholdWeightUpdated(uint256 _thresholdWeight); - event TotalWeightUpdated(uint256 oldTotalWeight, uint256 newTotalWeight); - event UpdateMinimumWeight(uint256 oldMinimumWeight, uint256 newMinimumWeight); -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "event", - "name": "MinimumWeightUpdated", - "inputs": [ - { - "name": "_old", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "_new", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorDeregistered", - "inputs": [ - { - "name": "_operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_avs", - "type": "address", - "indexed": true, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorRegistered", - "inputs": [ - { - "name": "_operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_avs", - "type": "address", - "indexed": true, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorWeightUpdated", - "inputs": [ - { - "name": "_operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "oldWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "newWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "QuorumUpdated", - "inputs": [ - { - "name": "_old", - "type": "tuple", - "indexed": false, - "internalType": "struct Quorum", - "components": [ - { - "name": "strategies", - "type": "tuple[]", - "internalType": "struct StrategyParams[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ] - }, - { - "name": "_new", - "type": "tuple", - "indexed": false, - "internalType": "struct Quorum", - "components": [ - { - "name": "strategies", - "type": "tuple[]", - "internalType": "struct StrategyParams[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ] - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "SigningKeyUpdate", - "inputs": [ - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "updateBlock", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - }, - { - "name": "newSigningKey", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "oldSigningKey", - "type": "address", - "indexed": false, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "ThresholdWeightUpdated", - "inputs": [ - { - "name": "_thresholdWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "TotalWeightUpdated", - "inputs": [ - { - "name": "oldTotalWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "newTotalWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "UpdateMinimumWeight", - "inputs": [ - { - "name": "oldMinimumWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "newMinimumWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "error", - "name": "InsufficientSignedStake", - "inputs": [] - }, - { - "type": "error", - "name": "InsufficientWeight", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidLength", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidQuorum", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidReferenceBlock", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidSignature", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidSignedWeight", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidThreshold", - "inputs": [] - }, - { - "type": "error", - "name": "LengthMismatch", - "inputs": [] - }, - { - "type": "error", - "name": "MustUpdateAllOperators", - "inputs": [] - }, - { - "type": "error", - "name": "NotSorted", - "inputs": [] - }, - { - "type": "error", - "name": "OperatorAlreadyRegistered", - "inputs": [] - }, - { - "type": "error", - "name": "OperatorNotRegistered", - "inputs": [] - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod ECDSAStakeRegistryEventsAndErrors { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**```solidity - struct Quorum { StrategyParams[] strategies; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct Quorum { - pub strategies: - alloy::sol_types::private::Vec<::RustType>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec<::RustType>, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: Quorum) -> Self { - (value.strategies,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for Quorum { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { strategies: tuple.0 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for Quorum { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for Quorum { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.strategies), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for Quorum { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for Quorum { - const NAME: &'static str = "Quorum"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed("Quorum(StrategyParams[] strategies)") - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - let mut components = alloy_sol_types::private::Vec::with_capacity(1); - components.push(::eip712_root_type()); - components - .extend(::eip712_components()); - components - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - as alloy_sol_types::SolType>::eip712_data_word(&self.strategies) - .0 - .to_vec() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for Quorum { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.strategies, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.strategies, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct StrategyParams { address strategy; uint96 multiplier; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct StrategyParams { - pub strategy: alloy::sol_types::private::Address, - pub multiplier: alloy::sol_types::private::primitives::aliases::U96, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<96>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U96, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: StrategyParams) -> Self { - (value.strategy, value.multiplier) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for StrategyParams { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { strategy: tuple.0, multiplier: tuple.1 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for StrategyParams { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for StrategyParams { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.strategy, - ), - as alloy_sol_types::SolType>::tokenize( - &self.multiplier, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for StrategyParams { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for StrategyParams { - const NAME: &'static str = "StrategyParams"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "StrategyParams(address strategy,uint96 multiplier)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.strategy, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.multiplier) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for StrategyParams { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.strategy, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.multiplier, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.strategy, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.multiplier, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**Custom error with signature `InsufficientSignedStake()` and selector `0xe121632f`. - ```solidity - error InsufficientSignedStake(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InsufficientSignedStake {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InsufficientSignedStake) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InsufficientSignedStake { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InsufficientSignedStake { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InsufficientSignedStake()"; - const SELECTOR: [u8; 4] = [225u8, 33u8, 99u8, 47u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InsufficientWeight()` and selector `0xa8792fd1`. - ```solidity - error InsufficientWeight(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InsufficientWeight {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InsufficientWeight) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InsufficientWeight { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InsufficientWeight { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InsufficientWeight()"; - const SELECTOR: [u8; 4] = [168u8, 121u8, 47u8, 209u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidLength()` and selector `0x947d5a84`. - ```solidity - error InvalidLength(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidLength {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidLength) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidLength { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidLength { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidLength()"; - const SELECTOR: [u8; 4] = [148u8, 125u8, 90u8, 132u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidQuorum()` and selector `0xd1735779`. - ```solidity - error InvalidQuorum(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidQuorum {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidQuorum) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidQuorum { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidQuorum { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidQuorum()"; - const SELECTOR: [u8; 4] = [209u8, 115u8, 87u8, 121u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidReferenceBlock()` and selector `0xe64f180f`. - ```solidity - error InvalidReferenceBlock(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidReferenceBlock {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidReferenceBlock) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidReferenceBlock { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidReferenceBlock { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidReferenceBlock()"; - const SELECTOR: [u8; 4] = [230u8, 79u8, 24u8, 15u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidSignature()` and selector `0x8baa579f`. - ```solidity - error InvalidSignature(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidSignature {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidSignature) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidSignature { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidSignature { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidSignature()"; - const SELECTOR: [u8; 4] = [139u8, 170u8, 87u8, 159u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidSignedWeight()` and selector `0x960b41ee`. - ```solidity - error InvalidSignedWeight(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidSignedWeight {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidSignedWeight) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidSignedWeight { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidSignedWeight { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidSignedWeight()"; - const SELECTOR: [u8; 4] = [150u8, 11u8, 65u8, 238u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidThreshold()` and selector `0xaabd5a09`. - ```solidity - error InvalidThreshold(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidThreshold {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidThreshold) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidThreshold { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidThreshold { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidThreshold()"; - const SELECTOR: [u8; 4] = [170u8, 189u8, 90u8, 9u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `LengthMismatch()` and selector `0xff633a38`. - ```solidity - error LengthMismatch(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct LengthMismatch {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: LengthMismatch) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for LengthMismatch { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for LengthMismatch { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "LengthMismatch()"; - const SELECTOR: [u8; 4] = [255u8, 99u8, 58u8, 56u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `MustUpdateAllOperators()` and selector `0x2d3df6b6`. - ```solidity - error MustUpdateAllOperators(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct MustUpdateAllOperators {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: MustUpdateAllOperators) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for MustUpdateAllOperators { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for MustUpdateAllOperators { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "MustUpdateAllOperators()"; - const SELECTOR: [u8; 4] = [45u8, 61u8, 246u8, 182u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `NotSorted()` and selector `0xba50f911`. - ```solidity - error NotSorted(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct NotSorted {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: NotSorted) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for NotSorted { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for NotSorted { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "NotSorted()"; - const SELECTOR: [u8; 4] = [186u8, 80u8, 249u8, 17u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `OperatorAlreadyRegistered()` and selector `0x42ee68b5`. - ```solidity - error OperatorAlreadyRegistered(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OperatorAlreadyRegistered {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: OperatorAlreadyRegistered) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OperatorAlreadyRegistered { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for OperatorAlreadyRegistered { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "OperatorAlreadyRegistered()"; - const SELECTOR: [u8; 4] = [66u8, 238u8, 104u8, 181u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `OperatorNotRegistered()` and selector `0x25ec6c1f`. - ```solidity - error OperatorNotRegistered(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OperatorNotRegistered {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: OperatorNotRegistered) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OperatorNotRegistered { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for OperatorNotRegistered { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "OperatorNotRegistered()"; - const SELECTOR: [u8; 4] = [37u8, 236u8, 108u8, 31u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Event with signature `MinimumWeightUpdated(uint256,uint256)` and selector `0x713ca53b88d6eb63f5b1854cb8cbdd736ec51eda225e46791aa9298b0160648f`. - ```solidity - event MinimumWeightUpdated(uint256 _old, uint256 _new); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct MinimumWeightUpdated { - #[allow(missing_docs)] - pub _old: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub _new: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for MinimumWeightUpdated { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "MinimumWeightUpdated(uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 113u8, 60u8, 165u8, 59u8, 136u8, 214u8, 235u8, 99u8, 245u8, 177u8, 133u8, 76u8, - 184u8, 203u8, 221u8, 115u8, 110u8, 197u8, 30u8, 218u8, 34u8, 94u8, 70u8, 121u8, - 26u8, 169u8, 41u8, 139u8, 1u8, 96u8, 100u8, 143u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _old: data.0, _new: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self._old, - ), - as alloy_sol_types::SolType>::tokenize( - &self._new, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for MinimumWeightUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&MinimumWeightUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &MinimumWeightUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorDeregistered(address,address)` and selector `0x31e0adfec71bccee37b6e83a90c2fedb17d8f1693fee863c4771e7bfe2aed580`. - ```solidity - event OperatorDeregistered(address indexed _operator, address indexed _avs); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorDeregistered { - #[allow(missing_docs)] - pub _operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _avs: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorDeregistered { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "OperatorDeregistered(address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 49u8, 224u8, 173u8, 254u8, 199u8, 27u8, 204u8, 238u8, 55u8, 182u8, 232u8, 58u8, - 144u8, 194u8, 254u8, 219u8, 23u8, 216u8, 241u8, 105u8, 63u8, 238u8, 134u8, - 60u8, 71u8, 113u8, 231u8, 191u8, 226u8, 174u8, 213u8, 128u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _operator: topics.1, _avs: topics.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self._operator.clone(), self._avs.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._operator, - ); - out[2usize] = ::encode_topic( - &self._avs, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorDeregistered { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorDeregistered> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorDeregistered) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorRegistered(address,address)` and selector `0xa453db612af59e5521d6ab9284dc3e2d06af286eb1b1b7b771fce4716c19f2c1`. - ```solidity - event OperatorRegistered(address indexed _operator, address indexed _avs); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorRegistered { - #[allow(missing_docs)] - pub _operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _avs: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorRegistered { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "OperatorRegistered(address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 164u8, 83u8, 219u8, 97u8, 42u8, 245u8, 158u8, 85u8, 33u8, 214u8, 171u8, 146u8, - 132u8, 220u8, 62u8, 45u8, 6u8, 175u8, 40u8, 110u8, 177u8, 177u8, 183u8, 183u8, - 113u8, 252u8, 228u8, 113u8, 108u8, 25u8, 242u8, 193u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _operator: topics.1, _avs: topics.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self._operator.clone(), self._avs.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._operator, - ); - out[2usize] = ::encode_topic( - &self._avs, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorRegistered { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorRegistered> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorRegistered) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorWeightUpdated(address,uint256,uint256)` and selector `0x88770dc862e47a7ed586907857eb1b75e4c5ffc8b707c7ee10eb74d6885fe594`. - ```solidity - event OperatorWeightUpdated(address indexed _operator, uint256 oldWeight, uint256 newWeight); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorWeightUpdated { - #[allow(missing_docs)] - pub _operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub oldWeight: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newWeight: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorWeightUpdated { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = - (alloy_sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Address); - const SIGNATURE: &'static str = "OperatorWeightUpdated(address,uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 136u8, 119u8, 13u8, 200u8, 98u8, 228u8, 122u8, 126u8, 213u8, 134u8, 144u8, - 120u8, 87u8, 235u8, 27u8, 117u8, 228u8, 197u8, 255u8, 200u8, 183u8, 7u8, 199u8, - 238u8, 16u8, 235u8, 116u8, 214u8, 136u8, 95u8, 229u8, 148u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _operator: topics.1, oldWeight: data.0, newWeight: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.oldWeight, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newWeight, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self._operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorWeightUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorWeightUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorWeightUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `QuorumUpdated(((address,uint96)[]),((address,uint96)[]))` and selector `0x23aad4e61744ece164130aa415c1616e80136b0f0770e56589438b90b269265e`. - ```solidity - event QuorumUpdated(Quorum _old, Quorum _new); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct QuorumUpdated { - #[allow(missing_docs)] - pub _old: ::RustType, - #[allow(missing_docs)] - pub _new: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for QuorumUpdated { - type DataTuple<'a> = (Quorum, Quorum); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = - "QuorumUpdated(((address,uint96)[]),((address,uint96)[]))"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 35u8, 170u8, 212u8, 230u8, 23u8, 68u8, 236u8, 225u8, 100u8, 19u8, 10u8, 164u8, - 21u8, 193u8, 97u8, 110u8, 128u8, 19u8, 107u8, 15u8, 7u8, 112u8, 229u8, 101u8, - 137u8, 67u8, 139u8, 144u8, 178u8, 105u8, 38u8, 94u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _old: data.0, _new: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - ::tokenize(&self._old), - ::tokenize(&self._new), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for QuorumUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&QuorumUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &QuorumUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `SigningKeyUpdate(address,uint256,address,address)` and selector `0xd061168252f441733658f09e4d8f5b2d998ed4ef24a2bbfd6ceca52ea1315002`. - ```solidity - event SigningKeyUpdate(address indexed operator, uint256 indexed updateBlock, address indexed newSigningKey, address oldSigningKey); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct SigningKeyUpdate { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub updateBlock: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newSigningKey: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub oldSigningKey: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for SigningKeyUpdate { - type DataTuple<'a> = (alloy::sol_types::sol_data::Address,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "SigningKeyUpdate(address,uint256,address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 208u8, 97u8, 22u8, 130u8, 82u8, 244u8, 65u8, 115u8, 54u8, 88u8, 240u8, 158u8, - 77u8, 143u8, 91u8, 45u8, 153u8, 142u8, 212u8, 239u8, 36u8, 162u8, 187u8, 253u8, - 108u8, 236u8, 165u8, 46u8, 161u8, 49u8, 80u8, 2u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - operator: topics.1, - updateBlock: topics.2, - newSigningKey: topics.3, - oldSigningKey: data.0, - } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - (::tokenize( - &self.oldSigningKey, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self.operator.clone(), - self.updateBlock.clone(), - self.newSigningKey.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.operator, - ); - out[2usize] = as alloy_sol_types::EventTopic>::encode_topic(&self.updateBlock); - out[3usize] = ::encode_topic( - &self.newSigningKey, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for SigningKeyUpdate { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&SigningKeyUpdate> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &SigningKeyUpdate) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `ThresholdWeightUpdated(uint256)` and selector `0x9324f7e5a7c0288808a634ccde44b8e979676474b22e29ee9dd569b55e791a4b`. - ```solidity - event ThresholdWeightUpdated(uint256 _thresholdWeight); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct ThresholdWeightUpdated { - #[allow(missing_docs)] - pub _thresholdWeight: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for ThresholdWeightUpdated { - type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "ThresholdWeightUpdated(uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 147u8, 36u8, 247u8, 229u8, 167u8, 192u8, 40u8, 136u8, 8u8, 166u8, 52u8, 204u8, - 222u8, 68u8, 184u8, 233u8, 121u8, 103u8, 100u8, 116u8, 178u8, 46u8, 41u8, - 238u8, 157u8, 213u8, 105u8, 181u8, 94u8, 121u8, 26u8, 75u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _thresholdWeight: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._thresholdWeight, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ThresholdWeightUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&ThresholdWeightUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &ThresholdWeightUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `TotalWeightUpdated(uint256,uint256)` and selector `0x86dcf86b12dfeedea74ae9300dbdaa193bcce5809369c8177ea2f4eaaa65729b`. - ```solidity - event TotalWeightUpdated(uint256 oldTotalWeight, uint256 newTotalWeight); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct TotalWeightUpdated { - #[allow(missing_docs)] - pub oldTotalWeight: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newTotalWeight: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for TotalWeightUpdated { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "TotalWeightUpdated(uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 134u8, 220u8, 248u8, 107u8, 18u8, 223u8, 238u8, 222u8, 167u8, 74u8, 233u8, - 48u8, 13u8, 189u8, 170u8, 25u8, 59u8, 204u8, 229u8, 128u8, 147u8, 105u8, 200u8, - 23u8, 126u8, 162u8, 244u8, 234u8, 170u8, 101u8, 114u8, 155u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { oldTotalWeight: data.0, newTotalWeight: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.oldTotalWeight, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newTotalWeight, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for TotalWeightUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&TotalWeightUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &TotalWeightUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `UpdateMinimumWeight(uint256,uint256)` and selector `0x1ea42186b305fa37310450d9fb87ea1e8f0c7f447e771479e3b27634bfe84dc1`. - ```solidity - event UpdateMinimumWeight(uint256 oldMinimumWeight, uint256 newMinimumWeight); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct UpdateMinimumWeight { - #[allow(missing_docs)] - pub oldMinimumWeight: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newMinimumWeight: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for UpdateMinimumWeight { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "UpdateMinimumWeight(uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 30u8, 164u8, 33u8, 134u8, 179u8, 5u8, 250u8, 55u8, 49u8, 4u8, 80u8, 217u8, - 251u8, 135u8, 234u8, 30u8, 143u8, 12u8, 127u8, 68u8, 126u8, 119u8, 20u8, 121u8, - 227u8, 178u8, 118u8, 52u8, 191u8, 232u8, 77u8, 193u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { oldMinimumWeight: data.0, newMinimumWeight: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.oldMinimumWeight, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newMinimumWeight, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for UpdateMinimumWeight { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&UpdateMinimumWeight> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &UpdateMinimumWeight) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - ///Container for all the [`ECDSAStakeRegistryEventsAndErrors`](self) custom errors. - pub enum ECDSAStakeRegistryEventsAndErrorsErrors { - InsufficientSignedStake(InsufficientSignedStake), - InsufficientWeight(InsufficientWeight), - InvalidLength(InvalidLength), - InvalidQuorum(InvalidQuorum), - InvalidReferenceBlock(InvalidReferenceBlock), - InvalidSignature(InvalidSignature), - InvalidSignedWeight(InvalidSignedWeight), - InvalidThreshold(InvalidThreshold), - LengthMismatch(LengthMismatch), - MustUpdateAllOperators(MustUpdateAllOperators), - NotSorted(NotSorted), - OperatorAlreadyRegistered(OperatorAlreadyRegistered), - OperatorNotRegistered(OperatorNotRegistered), - } - #[automatically_derived] - impl ECDSAStakeRegistryEventsAndErrorsErrors { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [37u8, 236u8, 108u8, 31u8], - [45u8, 61u8, 246u8, 182u8], - [66u8, 238u8, 104u8, 181u8], - [139u8, 170u8, 87u8, 159u8], - [148u8, 125u8, 90u8, 132u8], - [150u8, 11u8, 65u8, 238u8], - [168u8, 121u8, 47u8, 209u8], - [170u8, 189u8, 90u8, 9u8], - [186u8, 80u8, 249u8, 17u8], - [209u8, 115u8, 87u8, 121u8], - [225u8, 33u8, 99u8, 47u8], - [230u8, 79u8, 24u8, 15u8], - [255u8, 99u8, 58u8, 56u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for ECDSAStakeRegistryEventsAndErrorsErrors { - const NAME: &'static str = "ECDSAStakeRegistryEventsAndErrorsErrors"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 13usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::InsufficientSignedStake(_) => { - ::SELECTOR - } - Self::InsufficientWeight(_) => { - ::SELECTOR - } - Self::InvalidLength(_) => ::SELECTOR, - Self::InvalidQuorum(_) => ::SELECTOR, - Self::InvalidReferenceBlock(_) => { - ::SELECTOR - } - Self::InvalidSignature(_) => { - ::SELECTOR - } - Self::InvalidSignedWeight(_) => { - ::SELECTOR - } - Self::InvalidThreshold(_) => { - ::SELECTOR - } - Self::LengthMismatch(_) => ::SELECTOR, - Self::MustUpdateAllOperators(_) => { - ::SELECTOR - } - Self::NotSorted(_) => ::SELECTOR, - Self::OperatorAlreadyRegistered(_) => { - ::SELECTOR - } - Self::OperatorNotRegistered(_) => { - ::SELECTOR - } - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn( - &[u8], - bool, - ) -> alloy_sol_types::Result< - ECDSAStakeRegistryEventsAndErrorsErrors, - >] = &[ - { - fn OperatorNotRegistered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryEventsAndErrorsErrors::OperatorNotRegistered) - } - OperatorNotRegistered - }, - { - fn MustUpdateAllOperators( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryEventsAndErrorsErrors::MustUpdateAllOperators) - } - MustUpdateAllOperators - }, - { - fn OperatorAlreadyRegistered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryEventsAndErrorsErrors::OperatorAlreadyRegistered) - } - OperatorAlreadyRegistered - }, - { - fn InvalidSignature( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryEventsAndErrorsErrors::InvalidSignature) - } - InvalidSignature - }, - { - fn InvalidLength( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw(data, validate) - .map(ECDSAStakeRegistryEventsAndErrorsErrors::InvalidLength) - } - InvalidLength - }, - { - fn InvalidSignedWeight( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryEventsAndErrorsErrors::InvalidSignedWeight) - } - InvalidSignedWeight - }, - { - fn InsufficientWeight( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryEventsAndErrorsErrors::InsufficientWeight) - } - InsufficientWeight - }, - { - fn InvalidThreshold( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryEventsAndErrorsErrors::InvalidThreshold) - } - InvalidThreshold - }, - { - fn NotSorted( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw(data, validate) - .map(ECDSAStakeRegistryEventsAndErrorsErrors::NotSorted) - } - NotSorted - }, - { - fn InvalidQuorum( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw(data, validate) - .map(ECDSAStakeRegistryEventsAndErrorsErrors::InvalidQuorum) - } - InvalidQuorum - }, - { - fn InsufficientSignedStake( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryEventsAndErrorsErrors::InsufficientSignedStake) - } - InsufficientSignedStake - }, - { - fn InvalidReferenceBlock( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryEventsAndErrorsErrors::InvalidReferenceBlock) - } - InvalidReferenceBlock - }, - { - fn LengthMismatch( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryEventsAndErrorsErrors::LengthMismatch) - } - LengthMismatch - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::InsufficientSignedStake(inner) => { - ::abi_encoded_size(inner) - } - Self::InsufficientWeight(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidLength(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidQuorum(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidReferenceBlock(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidSignature(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidSignedWeight(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidThreshold(inner) => { - ::abi_encoded_size(inner) - } - Self::LengthMismatch(inner) => { - ::abi_encoded_size(inner) - } - Self::MustUpdateAllOperators(inner) => { - ::abi_encoded_size(inner) - } - Self::NotSorted(inner) => { - ::abi_encoded_size(inner) - } - Self::OperatorAlreadyRegistered(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::OperatorNotRegistered(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::InsufficientSignedStake(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::InsufficientWeight(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidLength(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidQuorum(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidReferenceBlock(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidSignature(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidSignedWeight(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidThreshold(inner) => { - ::abi_encode_raw(inner, out) - } - Self::LengthMismatch(inner) => { - ::abi_encode_raw(inner, out) - } - Self::MustUpdateAllOperators(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::NotSorted(inner) => { - ::abi_encode_raw(inner, out) - } - Self::OperatorAlreadyRegistered(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::OperatorNotRegistered(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - ///Container for all the [`ECDSAStakeRegistryEventsAndErrors`](self) events. - pub enum ECDSAStakeRegistryEventsAndErrorsEvents { - MinimumWeightUpdated(MinimumWeightUpdated), - OperatorDeregistered(OperatorDeregistered), - OperatorRegistered(OperatorRegistered), - OperatorWeightUpdated(OperatorWeightUpdated), - QuorumUpdated(QuorumUpdated), - SigningKeyUpdate(SigningKeyUpdate), - ThresholdWeightUpdated(ThresholdWeightUpdated), - TotalWeightUpdated(TotalWeightUpdated), - UpdateMinimumWeight(UpdateMinimumWeight), - } - #[automatically_derived] - impl ECDSAStakeRegistryEventsAndErrorsEvents { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[ - [ - 30u8, 164u8, 33u8, 134u8, 179u8, 5u8, 250u8, 55u8, 49u8, 4u8, 80u8, 217u8, 251u8, - 135u8, 234u8, 30u8, 143u8, 12u8, 127u8, 68u8, 126u8, 119u8, 20u8, 121u8, 227u8, - 178u8, 118u8, 52u8, 191u8, 232u8, 77u8, 193u8, - ], - [ - 35u8, 170u8, 212u8, 230u8, 23u8, 68u8, 236u8, 225u8, 100u8, 19u8, 10u8, 164u8, - 21u8, 193u8, 97u8, 110u8, 128u8, 19u8, 107u8, 15u8, 7u8, 112u8, 229u8, 101u8, - 137u8, 67u8, 139u8, 144u8, 178u8, 105u8, 38u8, 94u8, - ], - [ - 49u8, 224u8, 173u8, 254u8, 199u8, 27u8, 204u8, 238u8, 55u8, 182u8, 232u8, 58u8, - 144u8, 194u8, 254u8, 219u8, 23u8, 216u8, 241u8, 105u8, 63u8, 238u8, 134u8, 60u8, - 71u8, 113u8, 231u8, 191u8, 226u8, 174u8, 213u8, 128u8, - ], - [ - 113u8, 60u8, 165u8, 59u8, 136u8, 214u8, 235u8, 99u8, 245u8, 177u8, 133u8, 76u8, - 184u8, 203u8, 221u8, 115u8, 110u8, 197u8, 30u8, 218u8, 34u8, 94u8, 70u8, 121u8, - 26u8, 169u8, 41u8, 139u8, 1u8, 96u8, 100u8, 143u8, - ], - [ - 134u8, 220u8, 248u8, 107u8, 18u8, 223u8, 238u8, 222u8, 167u8, 74u8, 233u8, 48u8, - 13u8, 189u8, 170u8, 25u8, 59u8, 204u8, 229u8, 128u8, 147u8, 105u8, 200u8, 23u8, - 126u8, 162u8, 244u8, 234u8, 170u8, 101u8, 114u8, 155u8, - ], - [ - 136u8, 119u8, 13u8, 200u8, 98u8, 228u8, 122u8, 126u8, 213u8, 134u8, 144u8, 120u8, - 87u8, 235u8, 27u8, 117u8, 228u8, 197u8, 255u8, 200u8, 183u8, 7u8, 199u8, 238u8, - 16u8, 235u8, 116u8, 214u8, 136u8, 95u8, 229u8, 148u8, - ], - [ - 147u8, 36u8, 247u8, 229u8, 167u8, 192u8, 40u8, 136u8, 8u8, 166u8, 52u8, 204u8, - 222u8, 68u8, 184u8, 233u8, 121u8, 103u8, 100u8, 116u8, 178u8, 46u8, 41u8, 238u8, - 157u8, 213u8, 105u8, 181u8, 94u8, 121u8, 26u8, 75u8, - ], - [ - 164u8, 83u8, 219u8, 97u8, 42u8, 245u8, 158u8, 85u8, 33u8, 214u8, 171u8, 146u8, - 132u8, 220u8, 62u8, 45u8, 6u8, 175u8, 40u8, 110u8, 177u8, 177u8, 183u8, 183u8, - 113u8, 252u8, 228u8, 113u8, 108u8, 25u8, 242u8, 193u8, - ], - [ - 208u8, 97u8, 22u8, 130u8, 82u8, 244u8, 65u8, 115u8, 54u8, 88u8, 240u8, 158u8, 77u8, - 143u8, 91u8, 45u8, 153u8, 142u8, 212u8, 239u8, 36u8, 162u8, 187u8, 253u8, 108u8, - 236u8, 165u8, 46u8, 161u8, 49u8, 80u8, 2u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for ECDSAStakeRegistryEventsAndErrorsEvents { - const NAME: &'static str = "ECDSAStakeRegistryEventsAndErrorsEvents"; - const COUNT: usize = 9usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::MinimumWeightUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorDeregistered) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorRegistered) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorWeightUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::QuorumUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::SigningKeyUpdate) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::ThresholdWeightUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::TotalWeightUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::UpdateMinimumWeight) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ECDSAStakeRegistryEventsAndErrorsEvents { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::MinimumWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorDeregistered(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorRegistered(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::QuorumUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::SigningKeyUpdate(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::ThresholdWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::TotalWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::UpdateMinimumWeight(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::MinimumWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorDeregistered(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorRegistered(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::QuorumUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::SigningKeyUpdate(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::ThresholdWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::TotalWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::UpdateMinimumWeight(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`ECDSAStakeRegistryEventsAndErrors`](self) contract instance. - - See the [wrapper's documentation](`ECDSAStakeRegistryEventsAndErrorsInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> ECDSAStakeRegistryEventsAndErrorsInstance { - ECDSAStakeRegistryEventsAndErrorsInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future< - Output = alloy_contract::Result>, - > { - ECDSAStakeRegistryEventsAndErrorsInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - ECDSAStakeRegistryEventsAndErrorsInstance::::deploy_builder(provider) - } - /**A [`ECDSAStakeRegistryEventsAndErrors`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`ECDSAStakeRegistryEventsAndErrors`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct ECDSAStakeRegistryEventsAndErrorsInstance< - T, - P, - N = alloy_contract::private::Ethereum, - > { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for ECDSAStakeRegistryEventsAndErrorsInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ECDSAStakeRegistryEventsAndErrorsInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ECDSAStakeRegistryEventsAndErrorsInstance - { - /**Creates a new wrapper around an on-chain [`ECDSAStakeRegistryEventsAndErrors`](self) contract instance. - - See the [wrapper's documentation](`ECDSAStakeRegistryEventsAndErrorsInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl ECDSAStakeRegistryEventsAndErrorsInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> ECDSAStakeRegistryEventsAndErrorsInstance { - ECDSAStakeRegistryEventsAndErrorsInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ECDSAStakeRegistryEventsAndErrorsInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ECDSAStakeRegistryEventsAndErrorsInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`MinimumWeightUpdated`] event. - pub fn MinimumWeightUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorDeregistered`] event. - pub fn OperatorDeregistered_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorRegistered`] event. - pub fn OperatorRegistered_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorWeightUpdated`] event. - pub fn OperatorWeightUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`QuorumUpdated`] event. - pub fn QuorumUpdated_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`SigningKeyUpdate`] event. - pub fn SigningKeyUpdate_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`ThresholdWeightUpdated`] event. - pub fn ThresholdWeightUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`TotalWeightUpdated`] event. - pub fn TotalWeightUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`UpdateMinimumWeight`] event. - pub fn UpdateMinimumWeight_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/ecdsastakeregistrystorage.rs b/crates/bindings/src/ecdsastakeregistrystorage.rs deleted file mode 100644 index 77c94d09..00000000 --- a/crates/bindings/src/ecdsastakeregistrystorage.rs +++ /dev/null @@ -1,3102 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface ECDSAStakeRegistryStorage { - struct Quorum { - StrategyParams[] strategies; - } - struct StrategyParams { - address strategy; - uint96 multiplier; - } - - error InsufficientSignedStake(); - error InsufficientWeight(); - error InvalidLength(); - error InvalidQuorum(); - error InvalidReferenceBlock(); - error InvalidSignature(); - error InvalidSignedWeight(); - error InvalidThreshold(); - error LengthMismatch(); - error MustUpdateAllOperators(); - error NotSorted(); - error OperatorAlreadyRegistered(); - error OperatorNotRegistered(); - - event MinimumWeightUpdated(uint256 _old, uint256 _new); - event OperatorDeregistered(address indexed _operator, address indexed _avs); - event OperatorRegistered(address indexed _operator, address indexed _avs); - event OperatorWeightUpdated(address indexed _operator, uint256 oldWeight, uint256 newWeight); - event QuorumUpdated(Quorum _old, Quorum _new); - event SigningKeyUpdate(address indexed operator, uint256 indexed updateBlock, address indexed newSigningKey, address oldSigningKey); - event ThresholdWeightUpdated(uint256 _thresholdWeight); - event TotalWeightUpdated(uint256 oldTotalWeight, uint256 newTotalWeight); - event UpdateMinimumWeight(uint256 oldMinimumWeight, uint256 newMinimumWeight); -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "event", - "name": "MinimumWeightUpdated", - "inputs": [ - { - "name": "_old", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "_new", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorDeregistered", - "inputs": [ - { - "name": "_operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_avs", - "type": "address", - "indexed": true, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorRegistered", - "inputs": [ - { - "name": "_operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_avs", - "type": "address", - "indexed": true, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorWeightUpdated", - "inputs": [ - { - "name": "_operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "oldWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "newWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "QuorumUpdated", - "inputs": [ - { - "name": "_old", - "type": "tuple", - "indexed": false, - "internalType": "struct Quorum", - "components": [ - { - "name": "strategies", - "type": "tuple[]", - "internalType": "struct StrategyParams[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ] - }, - { - "name": "_new", - "type": "tuple", - "indexed": false, - "internalType": "struct Quorum", - "components": [ - { - "name": "strategies", - "type": "tuple[]", - "internalType": "struct StrategyParams[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ] - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "SigningKeyUpdate", - "inputs": [ - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "updateBlock", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - }, - { - "name": "newSigningKey", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "oldSigningKey", - "type": "address", - "indexed": false, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "ThresholdWeightUpdated", - "inputs": [ - { - "name": "_thresholdWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "TotalWeightUpdated", - "inputs": [ - { - "name": "oldTotalWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "newTotalWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "UpdateMinimumWeight", - "inputs": [ - { - "name": "oldMinimumWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "newMinimumWeight", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "error", - "name": "InsufficientSignedStake", - "inputs": [] - }, - { - "type": "error", - "name": "InsufficientWeight", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidLength", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidQuorum", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidReferenceBlock", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidSignature", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidSignedWeight", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidThreshold", - "inputs": [] - }, - { - "type": "error", - "name": "LengthMismatch", - "inputs": [] - }, - { - "type": "error", - "name": "MustUpdateAllOperators", - "inputs": [] - }, - { - "type": "error", - "name": "NotSorted", - "inputs": [] - }, - { - "type": "error", - "name": "OperatorAlreadyRegistered", - "inputs": [] - }, - { - "type": "error", - "name": "OperatorNotRegistered", - "inputs": [] - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod ECDSAStakeRegistryStorage { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**```solidity - struct Quorum { StrategyParams[] strategies; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct Quorum { - pub strategies: - alloy::sol_types::private::Vec<::RustType>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec<::RustType>, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: Quorum) -> Self { - (value.strategies,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for Quorum { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { strategies: tuple.0 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for Quorum { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for Quorum { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.strategies), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for Quorum { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for Quorum { - const NAME: &'static str = "Quorum"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed("Quorum(StrategyParams[] strategies)") - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - let mut components = alloy_sol_types::private::Vec::with_capacity(1); - components.push(::eip712_root_type()); - components - .extend(::eip712_components()); - components - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - as alloy_sol_types::SolType>::eip712_data_word(&self.strategies) - .0 - .to_vec() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for Quorum { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.strategies, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.strategies, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct StrategyParams { address strategy; uint96 multiplier; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct StrategyParams { - pub strategy: alloy::sol_types::private::Address, - pub multiplier: alloy::sol_types::private::primitives::aliases::U96, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<96>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U96, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: StrategyParams) -> Self { - (value.strategy, value.multiplier) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for StrategyParams { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { strategy: tuple.0, multiplier: tuple.1 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for StrategyParams { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for StrategyParams { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.strategy, - ), - as alloy_sol_types::SolType>::tokenize( - &self.multiplier, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for StrategyParams { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for StrategyParams { - const NAME: &'static str = "StrategyParams"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "StrategyParams(address strategy,uint96 multiplier)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.strategy, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.multiplier) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for StrategyParams { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.strategy, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.multiplier, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.strategy, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.multiplier, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**Custom error with signature `InsufficientSignedStake()` and selector `0xe121632f`. - ```solidity - error InsufficientSignedStake(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InsufficientSignedStake {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InsufficientSignedStake) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InsufficientSignedStake { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InsufficientSignedStake { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InsufficientSignedStake()"; - const SELECTOR: [u8; 4] = [225u8, 33u8, 99u8, 47u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InsufficientWeight()` and selector `0xa8792fd1`. - ```solidity - error InsufficientWeight(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InsufficientWeight {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InsufficientWeight) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InsufficientWeight { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InsufficientWeight { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InsufficientWeight()"; - const SELECTOR: [u8; 4] = [168u8, 121u8, 47u8, 209u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidLength()` and selector `0x947d5a84`. - ```solidity - error InvalidLength(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidLength {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidLength) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidLength { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidLength { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidLength()"; - const SELECTOR: [u8; 4] = [148u8, 125u8, 90u8, 132u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidQuorum()` and selector `0xd1735779`. - ```solidity - error InvalidQuorum(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidQuorum {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidQuorum) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidQuorum { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidQuorum { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidQuorum()"; - const SELECTOR: [u8; 4] = [209u8, 115u8, 87u8, 121u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidReferenceBlock()` and selector `0xe64f180f`. - ```solidity - error InvalidReferenceBlock(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidReferenceBlock {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidReferenceBlock) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidReferenceBlock { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidReferenceBlock { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidReferenceBlock()"; - const SELECTOR: [u8; 4] = [230u8, 79u8, 24u8, 15u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidSignature()` and selector `0x8baa579f`. - ```solidity - error InvalidSignature(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidSignature {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidSignature) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidSignature { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidSignature { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidSignature()"; - const SELECTOR: [u8; 4] = [139u8, 170u8, 87u8, 159u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidSignedWeight()` and selector `0x960b41ee`. - ```solidity - error InvalidSignedWeight(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidSignedWeight {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidSignedWeight) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidSignedWeight { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidSignedWeight { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidSignedWeight()"; - const SELECTOR: [u8; 4] = [150u8, 11u8, 65u8, 238u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `InvalidThreshold()` and selector `0xaabd5a09`. - ```solidity - error InvalidThreshold(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidThreshold {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: InvalidThreshold) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidThreshold { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidThreshold { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidThreshold()"; - const SELECTOR: [u8; 4] = [170u8, 189u8, 90u8, 9u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `LengthMismatch()` and selector `0xff633a38`. - ```solidity - error LengthMismatch(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct LengthMismatch {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: LengthMismatch) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for LengthMismatch { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for LengthMismatch { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "LengthMismatch()"; - const SELECTOR: [u8; 4] = [255u8, 99u8, 58u8, 56u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `MustUpdateAllOperators()` and selector `0x2d3df6b6`. - ```solidity - error MustUpdateAllOperators(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct MustUpdateAllOperators {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: MustUpdateAllOperators) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for MustUpdateAllOperators { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for MustUpdateAllOperators { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "MustUpdateAllOperators()"; - const SELECTOR: [u8; 4] = [45u8, 61u8, 246u8, 182u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `NotSorted()` and selector `0xba50f911`. - ```solidity - error NotSorted(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct NotSorted {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: NotSorted) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for NotSorted { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for NotSorted { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "NotSorted()"; - const SELECTOR: [u8; 4] = [186u8, 80u8, 249u8, 17u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `OperatorAlreadyRegistered()` and selector `0x42ee68b5`. - ```solidity - error OperatorAlreadyRegistered(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OperatorAlreadyRegistered {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: OperatorAlreadyRegistered) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OperatorAlreadyRegistered { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for OperatorAlreadyRegistered { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "OperatorAlreadyRegistered()"; - const SELECTOR: [u8; 4] = [66u8, 238u8, 104u8, 181u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Custom error with signature `OperatorNotRegistered()` and selector `0x25ec6c1f`. - ```solidity - error OperatorNotRegistered(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OperatorNotRegistered {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: OperatorNotRegistered) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OperatorNotRegistered { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for OperatorNotRegistered { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "OperatorNotRegistered()"; - const SELECTOR: [u8; 4] = [37u8, 236u8, 108u8, 31u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Event with signature `MinimumWeightUpdated(uint256,uint256)` and selector `0x713ca53b88d6eb63f5b1854cb8cbdd736ec51eda225e46791aa9298b0160648f`. - ```solidity - event MinimumWeightUpdated(uint256 _old, uint256 _new); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct MinimumWeightUpdated { - #[allow(missing_docs)] - pub _old: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub _new: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for MinimumWeightUpdated { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "MinimumWeightUpdated(uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 113u8, 60u8, 165u8, 59u8, 136u8, 214u8, 235u8, 99u8, 245u8, 177u8, 133u8, 76u8, - 184u8, 203u8, 221u8, 115u8, 110u8, 197u8, 30u8, 218u8, 34u8, 94u8, 70u8, 121u8, - 26u8, 169u8, 41u8, 139u8, 1u8, 96u8, 100u8, 143u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _old: data.0, _new: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self._old, - ), - as alloy_sol_types::SolType>::tokenize( - &self._new, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for MinimumWeightUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&MinimumWeightUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &MinimumWeightUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorDeregistered(address,address)` and selector `0x31e0adfec71bccee37b6e83a90c2fedb17d8f1693fee863c4771e7bfe2aed580`. - ```solidity - event OperatorDeregistered(address indexed _operator, address indexed _avs); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorDeregistered { - #[allow(missing_docs)] - pub _operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _avs: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorDeregistered { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "OperatorDeregistered(address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 49u8, 224u8, 173u8, 254u8, 199u8, 27u8, 204u8, 238u8, 55u8, 182u8, 232u8, 58u8, - 144u8, 194u8, 254u8, 219u8, 23u8, 216u8, 241u8, 105u8, 63u8, 238u8, 134u8, - 60u8, 71u8, 113u8, 231u8, 191u8, 226u8, 174u8, 213u8, 128u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _operator: topics.1, _avs: topics.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self._operator.clone(), self._avs.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._operator, - ); - out[2usize] = ::encode_topic( - &self._avs, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorDeregistered { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorDeregistered> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorDeregistered) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorRegistered(address,address)` and selector `0xa453db612af59e5521d6ab9284dc3e2d06af286eb1b1b7b771fce4716c19f2c1`. - ```solidity - event OperatorRegistered(address indexed _operator, address indexed _avs); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorRegistered { - #[allow(missing_docs)] - pub _operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _avs: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorRegistered { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "OperatorRegistered(address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 164u8, 83u8, 219u8, 97u8, 42u8, 245u8, 158u8, 85u8, 33u8, 214u8, 171u8, 146u8, - 132u8, 220u8, 62u8, 45u8, 6u8, 175u8, 40u8, 110u8, 177u8, 177u8, 183u8, 183u8, - 113u8, 252u8, 228u8, 113u8, 108u8, 25u8, 242u8, 193u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _operator: topics.1, _avs: topics.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self._operator.clone(), self._avs.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._operator, - ); - out[2usize] = ::encode_topic( - &self._avs, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorRegistered { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorRegistered> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorRegistered) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorWeightUpdated(address,uint256,uint256)` and selector `0x88770dc862e47a7ed586907857eb1b75e4c5ffc8b707c7ee10eb74d6885fe594`. - ```solidity - event OperatorWeightUpdated(address indexed _operator, uint256 oldWeight, uint256 newWeight); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorWeightUpdated { - #[allow(missing_docs)] - pub _operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub oldWeight: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newWeight: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorWeightUpdated { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = - (alloy_sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Address); - const SIGNATURE: &'static str = "OperatorWeightUpdated(address,uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 136u8, 119u8, 13u8, 200u8, 98u8, 228u8, 122u8, 126u8, 213u8, 134u8, 144u8, - 120u8, 87u8, 235u8, 27u8, 117u8, 228u8, 197u8, 255u8, 200u8, 183u8, 7u8, 199u8, - 238u8, 16u8, 235u8, 116u8, 214u8, 136u8, 95u8, 229u8, 148u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _operator: topics.1, oldWeight: data.0, newWeight: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.oldWeight, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newWeight, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self._operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorWeightUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorWeightUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorWeightUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `QuorumUpdated(((address,uint96)[]),((address,uint96)[]))` and selector `0x23aad4e61744ece164130aa415c1616e80136b0f0770e56589438b90b269265e`. - ```solidity - event QuorumUpdated(Quorum _old, Quorum _new); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct QuorumUpdated { - #[allow(missing_docs)] - pub _old: ::RustType, - #[allow(missing_docs)] - pub _new: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for QuorumUpdated { - type DataTuple<'a> = (Quorum, Quorum); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = - "QuorumUpdated(((address,uint96)[]),((address,uint96)[]))"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 35u8, 170u8, 212u8, 230u8, 23u8, 68u8, 236u8, 225u8, 100u8, 19u8, 10u8, 164u8, - 21u8, 193u8, 97u8, 110u8, 128u8, 19u8, 107u8, 15u8, 7u8, 112u8, 229u8, 101u8, - 137u8, 67u8, 139u8, 144u8, 178u8, 105u8, 38u8, 94u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _old: data.0, _new: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - ::tokenize(&self._old), - ::tokenize(&self._new), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for QuorumUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&QuorumUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &QuorumUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `SigningKeyUpdate(address,uint256,address,address)` and selector `0xd061168252f441733658f09e4d8f5b2d998ed4ef24a2bbfd6ceca52ea1315002`. - ```solidity - event SigningKeyUpdate(address indexed operator, uint256 indexed updateBlock, address indexed newSigningKey, address oldSigningKey); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct SigningKeyUpdate { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub updateBlock: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newSigningKey: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub oldSigningKey: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for SigningKeyUpdate { - type DataTuple<'a> = (alloy::sol_types::sol_data::Address,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "SigningKeyUpdate(address,uint256,address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 208u8, 97u8, 22u8, 130u8, 82u8, 244u8, 65u8, 115u8, 54u8, 88u8, 240u8, 158u8, - 77u8, 143u8, 91u8, 45u8, 153u8, 142u8, 212u8, 239u8, 36u8, 162u8, 187u8, 253u8, - 108u8, 236u8, 165u8, 46u8, 161u8, 49u8, 80u8, 2u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - operator: topics.1, - updateBlock: topics.2, - newSigningKey: topics.3, - oldSigningKey: data.0, - } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - (::tokenize( - &self.oldSigningKey, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self.operator.clone(), - self.updateBlock.clone(), - self.newSigningKey.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.operator, - ); - out[2usize] = as alloy_sol_types::EventTopic>::encode_topic(&self.updateBlock); - out[3usize] = ::encode_topic( - &self.newSigningKey, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for SigningKeyUpdate { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&SigningKeyUpdate> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &SigningKeyUpdate) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `ThresholdWeightUpdated(uint256)` and selector `0x9324f7e5a7c0288808a634ccde44b8e979676474b22e29ee9dd569b55e791a4b`. - ```solidity - event ThresholdWeightUpdated(uint256 _thresholdWeight); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct ThresholdWeightUpdated { - #[allow(missing_docs)] - pub _thresholdWeight: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for ThresholdWeightUpdated { - type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "ThresholdWeightUpdated(uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 147u8, 36u8, 247u8, 229u8, 167u8, 192u8, 40u8, 136u8, 8u8, 166u8, 52u8, 204u8, - 222u8, 68u8, 184u8, 233u8, 121u8, 103u8, 100u8, 116u8, 178u8, 46u8, 41u8, - 238u8, 157u8, 213u8, 105u8, 181u8, 94u8, 121u8, 26u8, 75u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _thresholdWeight: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._thresholdWeight, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ThresholdWeightUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&ThresholdWeightUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &ThresholdWeightUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `TotalWeightUpdated(uint256,uint256)` and selector `0x86dcf86b12dfeedea74ae9300dbdaa193bcce5809369c8177ea2f4eaaa65729b`. - ```solidity - event TotalWeightUpdated(uint256 oldTotalWeight, uint256 newTotalWeight); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct TotalWeightUpdated { - #[allow(missing_docs)] - pub oldTotalWeight: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newTotalWeight: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for TotalWeightUpdated { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "TotalWeightUpdated(uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 134u8, 220u8, 248u8, 107u8, 18u8, 223u8, 238u8, 222u8, 167u8, 74u8, 233u8, - 48u8, 13u8, 189u8, 170u8, 25u8, 59u8, 204u8, 229u8, 128u8, 147u8, 105u8, 200u8, - 23u8, 126u8, 162u8, 244u8, 234u8, 170u8, 101u8, 114u8, 155u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { oldTotalWeight: data.0, newTotalWeight: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.oldTotalWeight, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newTotalWeight, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for TotalWeightUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&TotalWeightUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &TotalWeightUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `UpdateMinimumWeight(uint256,uint256)` and selector `0x1ea42186b305fa37310450d9fb87ea1e8f0c7f447e771479e3b27634bfe84dc1`. - ```solidity - event UpdateMinimumWeight(uint256 oldMinimumWeight, uint256 newMinimumWeight); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct UpdateMinimumWeight { - #[allow(missing_docs)] - pub oldMinimumWeight: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newMinimumWeight: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for UpdateMinimumWeight { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "UpdateMinimumWeight(uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 30u8, 164u8, 33u8, 134u8, 179u8, 5u8, 250u8, 55u8, 49u8, 4u8, 80u8, 217u8, - 251u8, 135u8, 234u8, 30u8, 143u8, 12u8, 127u8, 68u8, 126u8, 119u8, 20u8, 121u8, - 227u8, 178u8, 118u8, 52u8, 191u8, 232u8, 77u8, 193u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { oldMinimumWeight: data.0, newMinimumWeight: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.oldMinimumWeight, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newMinimumWeight, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for UpdateMinimumWeight { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&UpdateMinimumWeight> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &UpdateMinimumWeight) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - ///Container for all the [`ECDSAStakeRegistryStorage`](self) custom errors. - pub enum ECDSAStakeRegistryStorageErrors { - InsufficientSignedStake(InsufficientSignedStake), - InsufficientWeight(InsufficientWeight), - InvalidLength(InvalidLength), - InvalidQuorum(InvalidQuorum), - InvalidReferenceBlock(InvalidReferenceBlock), - InvalidSignature(InvalidSignature), - InvalidSignedWeight(InvalidSignedWeight), - InvalidThreshold(InvalidThreshold), - LengthMismatch(LengthMismatch), - MustUpdateAllOperators(MustUpdateAllOperators), - NotSorted(NotSorted), - OperatorAlreadyRegistered(OperatorAlreadyRegistered), - OperatorNotRegistered(OperatorNotRegistered), - } - #[automatically_derived] - impl ECDSAStakeRegistryStorageErrors { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [37u8, 236u8, 108u8, 31u8], - [45u8, 61u8, 246u8, 182u8], - [66u8, 238u8, 104u8, 181u8], - [139u8, 170u8, 87u8, 159u8], - [148u8, 125u8, 90u8, 132u8], - [150u8, 11u8, 65u8, 238u8], - [168u8, 121u8, 47u8, 209u8], - [170u8, 189u8, 90u8, 9u8], - [186u8, 80u8, 249u8, 17u8], - [209u8, 115u8, 87u8, 121u8], - [225u8, 33u8, 99u8, 47u8], - [230u8, 79u8, 24u8, 15u8], - [255u8, 99u8, 58u8, 56u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for ECDSAStakeRegistryStorageErrors { - const NAME: &'static str = "ECDSAStakeRegistryStorageErrors"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 13usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::InsufficientSignedStake(_) => { - ::SELECTOR - } - Self::InsufficientWeight(_) => { - ::SELECTOR - } - Self::InvalidLength(_) => ::SELECTOR, - Self::InvalidQuorum(_) => ::SELECTOR, - Self::InvalidReferenceBlock(_) => { - ::SELECTOR - } - Self::InvalidSignature(_) => { - ::SELECTOR - } - Self::InvalidSignedWeight(_) => { - ::SELECTOR - } - Self::InvalidThreshold(_) => { - ::SELECTOR - } - Self::LengthMismatch(_) => ::SELECTOR, - Self::MustUpdateAllOperators(_) => { - ::SELECTOR - } - Self::NotSorted(_) => ::SELECTOR, - Self::OperatorAlreadyRegistered(_) => { - ::SELECTOR - } - Self::OperatorNotRegistered(_) => { - ::SELECTOR - } - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn( - &[u8], - bool, - ) -> alloy_sol_types::Result< - ECDSAStakeRegistryStorageErrors, - >] = &[ - { - fn OperatorNotRegistered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryStorageErrors::OperatorNotRegistered) - } - OperatorNotRegistered - }, - { - fn MustUpdateAllOperators( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryStorageErrors::MustUpdateAllOperators) - } - MustUpdateAllOperators - }, - { - fn OperatorAlreadyRegistered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryStorageErrors::OperatorAlreadyRegistered) - } - OperatorAlreadyRegistered - }, - { - fn InvalidSignature( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryStorageErrors::InvalidSignature) - } - InvalidSignature - }, - { - fn InvalidLength( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw(data, validate) - .map(ECDSAStakeRegistryStorageErrors::InvalidLength) - } - InvalidLength - }, - { - fn InvalidSignedWeight( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryStorageErrors::InvalidSignedWeight) - } - InvalidSignedWeight - }, - { - fn InsufficientWeight( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryStorageErrors::InsufficientWeight) - } - InsufficientWeight - }, - { - fn InvalidThreshold( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryStorageErrors::InvalidThreshold) - } - InvalidThreshold - }, - { - fn NotSorted( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw(data, validate) - .map(ECDSAStakeRegistryStorageErrors::NotSorted) - } - NotSorted - }, - { - fn InvalidQuorum( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw(data, validate) - .map(ECDSAStakeRegistryStorageErrors::InvalidQuorum) - } - InvalidQuorum - }, - { - fn InsufficientSignedStake( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryStorageErrors::InsufficientSignedStake) - } - InsufficientSignedStake - }, - { - fn InvalidReferenceBlock( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryStorageErrors::InvalidReferenceBlock) - } - InvalidReferenceBlock - }, - { - fn LengthMismatch( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(ECDSAStakeRegistryStorageErrors::LengthMismatch) - } - LengthMismatch - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::InsufficientSignedStake(inner) => { - ::abi_encoded_size(inner) - } - Self::InsufficientWeight(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidLength(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidQuorum(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidReferenceBlock(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidSignature(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidSignedWeight(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidThreshold(inner) => { - ::abi_encoded_size(inner) - } - Self::LengthMismatch(inner) => { - ::abi_encoded_size(inner) - } - Self::MustUpdateAllOperators(inner) => { - ::abi_encoded_size(inner) - } - Self::NotSorted(inner) => { - ::abi_encoded_size(inner) - } - Self::OperatorAlreadyRegistered(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::OperatorNotRegistered(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::InsufficientSignedStake(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::InsufficientWeight(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidLength(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidQuorum(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidReferenceBlock(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidSignature(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidSignedWeight(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidThreshold(inner) => { - ::abi_encode_raw(inner, out) - } - Self::LengthMismatch(inner) => { - ::abi_encode_raw(inner, out) - } - Self::MustUpdateAllOperators(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::NotSorted(inner) => { - ::abi_encode_raw(inner, out) - } - Self::OperatorAlreadyRegistered(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::OperatorNotRegistered(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - ///Container for all the [`ECDSAStakeRegistryStorage`](self) events. - pub enum ECDSAStakeRegistryStorageEvents { - MinimumWeightUpdated(MinimumWeightUpdated), - OperatorDeregistered(OperatorDeregistered), - OperatorRegistered(OperatorRegistered), - OperatorWeightUpdated(OperatorWeightUpdated), - QuorumUpdated(QuorumUpdated), - SigningKeyUpdate(SigningKeyUpdate), - ThresholdWeightUpdated(ThresholdWeightUpdated), - TotalWeightUpdated(TotalWeightUpdated), - UpdateMinimumWeight(UpdateMinimumWeight), - } - #[automatically_derived] - impl ECDSAStakeRegistryStorageEvents { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[ - [ - 30u8, 164u8, 33u8, 134u8, 179u8, 5u8, 250u8, 55u8, 49u8, 4u8, 80u8, 217u8, 251u8, - 135u8, 234u8, 30u8, 143u8, 12u8, 127u8, 68u8, 126u8, 119u8, 20u8, 121u8, 227u8, - 178u8, 118u8, 52u8, 191u8, 232u8, 77u8, 193u8, - ], - [ - 35u8, 170u8, 212u8, 230u8, 23u8, 68u8, 236u8, 225u8, 100u8, 19u8, 10u8, 164u8, - 21u8, 193u8, 97u8, 110u8, 128u8, 19u8, 107u8, 15u8, 7u8, 112u8, 229u8, 101u8, - 137u8, 67u8, 139u8, 144u8, 178u8, 105u8, 38u8, 94u8, - ], - [ - 49u8, 224u8, 173u8, 254u8, 199u8, 27u8, 204u8, 238u8, 55u8, 182u8, 232u8, 58u8, - 144u8, 194u8, 254u8, 219u8, 23u8, 216u8, 241u8, 105u8, 63u8, 238u8, 134u8, 60u8, - 71u8, 113u8, 231u8, 191u8, 226u8, 174u8, 213u8, 128u8, - ], - [ - 113u8, 60u8, 165u8, 59u8, 136u8, 214u8, 235u8, 99u8, 245u8, 177u8, 133u8, 76u8, - 184u8, 203u8, 221u8, 115u8, 110u8, 197u8, 30u8, 218u8, 34u8, 94u8, 70u8, 121u8, - 26u8, 169u8, 41u8, 139u8, 1u8, 96u8, 100u8, 143u8, - ], - [ - 134u8, 220u8, 248u8, 107u8, 18u8, 223u8, 238u8, 222u8, 167u8, 74u8, 233u8, 48u8, - 13u8, 189u8, 170u8, 25u8, 59u8, 204u8, 229u8, 128u8, 147u8, 105u8, 200u8, 23u8, - 126u8, 162u8, 244u8, 234u8, 170u8, 101u8, 114u8, 155u8, - ], - [ - 136u8, 119u8, 13u8, 200u8, 98u8, 228u8, 122u8, 126u8, 213u8, 134u8, 144u8, 120u8, - 87u8, 235u8, 27u8, 117u8, 228u8, 197u8, 255u8, 200u8, 183u8, 7u8, 199u8, 238u8, - 16u8, 235u8, 116u8, 214u8, 136u8, 95u8, 229u8, 148u8, - ], - [ - 147u8, 36u8, 247u8, 229u8, 167u8, 192u8, 40u8, 136u8, 8u8, 166u8, 52u8, 204u8, - 222u8, 68u8, 184u8, 233u8, 121u8, 103u8, 100u8, 116u8, 178u8, 46u8, 41u8, 238u8, - 157u8, 213u8, 105u8, 181u8, 94u8, 121u8, 26u8, 75u8, - ], - [ - 164u8, 83u8, 219u8, 97u8, 42u8, 245u8, 158u8, 85u8, 33u8, 214u8, 171u8, 146u8, - 132u8, 220u8, 62u8, 45u8, 6u8, 175u8, 40u8, 110u8, 177u8, 177u8, 183u8, 183u8, - 113u8, 252u8, 228u8, 113u8, 108u8, 25u8, 242u8, 193u8, - ], - [ - 208u8, 97u8, 22u8, 130u8, 82u8, 244u8, 65u8, 115u8, 54u8, 88u8, 240u8, 158u8, 77u8, - 143u8, 91u8, 45u8, 153u8, 142u8, 212u8, 239u8, 36u8, 162u8, 187u8, 253u8, 108u8, - 236u8, 165u8, 46u8, 161u8, 49u8, 80u8, 2u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for ECDSAStakeRegistryStorageEvents { - const NAME: &'static str = "ECDSAStakeRegistryStorageEvents"; - const COUNT: usize = 9usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::MinimumWeightUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorDeregistered) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorRegistered) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorWeightUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::QuorumUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::SigningKeyUpdate) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::ThresholdWeightUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::TotalWeightUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::UpdateMinimumWeight) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ECDSAStakeRegistryStorageEvents { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::MinimumWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorDeregistered(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorRegistered(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::QuorumUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::SigningKeyUpdate(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::ThresholdWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::TotalWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::UpdateMinimumWeight(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::MinimumWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorDeregistered(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorRegistered(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::QuorumUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::SigningKeyUpdate(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::ThresholdWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::TotalWeightUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::UpdateMinimumWeight(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`ECDSAStakeRegistryStorage`](self) contract instance. - - See the [wrapper's documentation](`ECDSAStakeRegistryStorageInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> ECDSAStakeRegistryStorageInstance { - ECDSAStakeRegistryStorageInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future< - Output = alloy_contract::Result>, - > { - ECDSAStakeRegistryStorageInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - ECDSAStakeRegistryStorageInstance::::deploy_builder(provider) - } - /**A [`ECDSAStakeRegistryStorage`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`ECDSAStakeRegistryStorage`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct ECDSAStakeRegistryStorageInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for ECDSAStakeRegistryStorageInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ECDSAStakeRegistryStorageInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ECDSAStakeRegistryStorageInstance - { - /**Creates a new wrapper around an on-chain [`ECDSAStakeRegistryStorage`](self) contract instance. - - See the [wrapper's documentation](`ECDSAStakeRegistryStorageInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl ECDSAStakeRegistryStorageInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> ECDSAStakeRegistryStorageInstance { - ECDSAStakeRegistryStorageInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ECDSAStakeRegistryStorageInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ECDSAStakeRegistryStorageInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`MinimumWeightUpdated`] event. - pub fn MinimumWeightUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorDeregistered`] event. - pub fn OperatorDeregistered_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorRegistered`] event. - pub fn OperatorRegistered_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorWeightUpdated`] event. - pub fn OperatorWeightUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`QuorumUpdated`] event. - pub fn QuorumUpdated_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`SigningKeyUpdate`] event. - pub fn SigningKeyUpdate_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`ThresholdWeightUpdated`] event. - pub fn ThresholdWeightUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`TotalWeightUpdated`] event. - pub fn TotalWeightUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`UpdateMinimumWeight`] event. - pub fn UpdateMinimumWeight_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/idelegationmanager.rs b/crates/bindings/src/idelegationmanager.rs deleted file mode 100644 index 0b2eaf2f..00000000 --- a/crates/bindings/src/idelegationmanager.rs +++ /dev/null @@ -1,9990 +0,0 @@ -///Module containing a contract's types and functions. -/** - -```solidity -library ISignatureUtils { - struct SignatureWithExpiry { bytes signature; uint256 expiry; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod ISignatureUtils { - use super::*; - use alloy::sol_types as alloy_sol_types; - /**```solidity - struct SignatureWithExpiry { bytes signature; uint256 expiry; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct SignatureWithExpiry { - pub signature: alloy::sol_types::private::Bytes, - pub expiry: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Bytes, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Bytes, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: SignatureWithExpiry) -> Self { - (value.signature, value.expiry) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for SignatureWithExpiry { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { signature: tuple.0, expiry: tuple.1 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for SignatureWithExpiry { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for SignatureWithExpiry { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.signature, - ), - as alloy_sol_types::SolType>::tokenize( - &self.expiry, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for SignatureWithExpiry { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for SignatureWithExpiry { - const NAME: &'static str = "SignatureWithExpiry"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "SignatureWithExpiry(bytes signature,uint256 expiry)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.signature, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.expiry) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for SignatureWithExpiry { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.signature, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.expiry, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.signature, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.expiry, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`ISignatureUtils`](self) contract instance. - - See the [wrapper's documentation](`ISignatureUtilsInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> ISignatureUtilsInstance { - ISignatureUtilsInstance::::new(address, provider) - } - /**A [`ISignatureUtils`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`ISignatureUtils`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct ISignatureUtilsInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for ISignatureUtilsInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ISignatureUtilsInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ISignatureUtilsInstance - { - /**Creates a new wrapper around an on-chain [`ISignatureUtils`](self) contract instance. - - See the [wrapper's documentation](`ISignatureUtilsInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl ISignatureUtilsInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> ISignatureUtilsInstance { - ISignatureUtilsInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ISignatureUtilsInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ISignatureUtilsInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - } -} -/** - -Generated by the following Solidity interface... -```solidity -library ISignatureUtils { - struct SignatureWithExpiry { - bytes signature; - uint256 expiry; - } -} - -interface IDelegationManager { - struct OperatorDetails { - address __deprecated_earningsReceiver; - address delegationApprover; - uint32 stakerOptOutWindowBlocks; - } - struct QueuedWithdrawalParams { - address[] strategies; - uint256[] shares; - address withdrawer; - } - struct Withdrawal { - address staker; - address delegatedTo; - address withdrawer; - uint256 nonce; - uint32 startBlock; - address[] strategies; - uint256[] shares; - } - - event MinWithdrawalDelayBlocksSet(uint256 previousValue, uint256 newValue); - event OperatorDetailsModified(address indexed operator, OperatorDetails newOperatorDetails); - event OperatorMetadataURIUpdated(address indexed operator, string metadataURI); - event OperatorRegistered(address indexed operator, OperatorDetails operatorDetails); - event OperatorSharesDecreased(address indexed operator, address staker, address strategy, uint256 shares); - event OperatorSharesIncreased(address indexed operator, address staker, address strategy, uint256 shares); - event StakerDelegated(address indexed staker, address indexed operator); - event StakerForceUndelegated(address indexed staker, address indexed operator); - event StakerUndelegated(address indexed staker, address indexed operator); - event StrategyWithdrawalDelayBlocksSet(address strategy, uint256 previousValue, uint256 newValue); - event WithdrawalCompleted(bytes32 withdrawalRoot); - event WithdrawalQueued(bytes32 withdrawalRoot, Withdrawal withdrawal); - - function DELEGATION_APPROVAL_TYPEHASH() external view returns (bytes32); - function DOMAIN_TYPEHASH() external view returns (bytes32); - function STAKER_DELEGATION_TYPEHASH() external view returns (bytes32); - function beaconChainETHStrategy() external view returns (address); - function calculateCurrentStakerDelegationDigestHash(address staker, address operator, uint256 expiry) external view returns (bytes32); - function calculateDelegationApprovalDigestHash(address staker, address operator, address _delegationApprover, bytes32 approverSalt, uint256 expiry) external view returns (bytes32); - function calculateStakerDelegationDigestHash(address staker, uint256 _stakerNonce, address operator, uint256 expiry) external view returns (bytes32); - function calculateWithdrawalRoot(Withdrawal memory withdrawal) external pure returns (bytes32); - function completeQueuedWithdrawal(Withdrawal memory withdrawal, address[] memory tokens, uint256 middlewareTimesIndex, bool receiveAsTokens) external; - function completeQueuedWithdrawals(Withdrawal[] memory withdrawals, address[][] memory tokens, uint256[] memory middlewareTimesIndexes, bool[] memory receiveAsTokens) external; - function cumulativeWithdrawalsQueued(address staker) external view returns (uint256); - function decreaseDelegatedShares(address staker, address strategy, uint256 shares) external; - function delegateTo(address operator, ISignatureUtils.SignatureWithExpiry memory approverSignatureAndExpiry, bytes32 approverSalt) external; - function delegateToBySignature(address staker, address operator, ISignatureUtils.SignatureWithExpiry memory stakerSignatureAndExpiry, ISignatureUtils.SignatureWithExpiry memory approverSignatureAndExpiry, bytes32 approverSalt) external; - function delegatedTo(address staker) external view returns (address); - function delegationApprover(address operator) external view returns (address); - function delegationApproverSaltIsSpent(address _delegationApprover, bytes32 salt) external view returns (bool); - function domainSeparator() external view returns (bytes32); - function getDelegatableShares(address staker) external view returns (address[] memory, uint256[] memory); - function getOperatorShares(address operator, address[] memory strategies) external view returns (uint256[] memory); - function getWithdrawalDelay(address[] memory strategies) external view returns (uint256); - function increaseDelegatedShares(address staker, address strategy, uint256 shares) external; - function isDelegated(address staker) external view returns (bool); - function isOperator(address operator) external view returns (bool); - function minWithdrawalDelayBlocks() external view returns (uint256); - function modifyOperatorDetails(OperatorDetails memory newOperatorDetails) external; - function operatorDetails(address operator) external view returns (OperatorDetails memory); - function operatorShares(address operator, address strategy) external view returns (uint256); - function queueWithdrawals(QueuedWithdrawalParams[] memory queuedWithdrawalParams) external returns (bytes32[] memory); - function registerAsOperator(OperatorDetails memory registeringOperatorDetails, string memory metadataURI) external; - function setMinWithdrawalDelayBlocks(uint256 newMinWithdrawalDelayBlocks) external; - function setStrategyWithdrawalDelayBlocks(address[] memory strategies, uint256[] memory withdrawalDelayBlocks) external; - function stakerNonce(address staker) external view returns (uint256); - function stakerOptOutWindowBlocks(address operator) external view returns (uint256); - function strategyWithdrawalDelayBlocks(address strategy) external view returns (uint256); - function undelegate(address staker) external returns (bytes32[] memory withdrawalRoot); - function updateOperatorMetadataURI(string memory metadataURI) external; -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "DELEGATION_APPROVAL_TYPEHASH", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "DOMAIN_TYPEHASH", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "STAKER_DELEGATION_TYPEHASH", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "beaconChainETHStrategy", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "contract IStrategy" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "calculateCurrentStakerDelegationDigestHash", - "inputs": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - }, - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "expiry", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "calculateDelegationApprovalDigestHash", - "inputs": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - }, - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "_delegationApprover", - "type": "address", - "internalType": "address" - }, - { - "name": "approverSalt", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "expiry", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "calculateStakerDelegationDigestHash", - "inputs": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - }, - { - "name": "_stakerNonce", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "expiry", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "calculateWithdrawalRoot", - "inputs": [ - { - "name": "withdrawal", - "type": "tuple", - "internalType": "struct IDelegationManager.Withdrawal", - "components": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - }, - { - "name": "delegatedTo", - "type": "address", - "internalType": "address" - }, - { - "name": "withdrawer", - "type": "address", - "internalType": "address" - }, - { - "name": "nonce", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "startBlock", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "strategies", - "type": "address[]", - "internalType": "contract IStrategy[]" - }, - { - "name": "shares", - "type": "uint256[]", - "internalType": "uint256[]" - } - ] - } - ], - "outputs": [ - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "pure" - }, - { - "type": "function", - "name": "completeQueuedWithdrawal", - "inputs": [ - { - "name": "withdrawal", - "type": "tuple", - "internalType": "struct IDelegationManager.Withdrawal", - "components": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - }, - { - "name": "delegatedTo", - "type": "address", - "internalType": "address" - }, - { - "name": "withdrawer", - "type": "address", - "internalType": "address" - }, - { - "name": "nonce", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "startBlock", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "strategies", - "type": "address[]", - "internalType": "contract IStrategy[]" - }, - { - "name": "shares", - "type": "uint256[]", - "internalType": "uint256[]" - } - ] - }, - { - "name": "tokens", - "type": "address[]", - "internalType": "contract IERC20[]" - }, - { - "name": "middlewareTimesIndex", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "receiveAsTokens", - "type": "bool", - "internalType": "bool" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "completeQueuedWithdrawals", - "inputs": [ - { - "name": "withdrawals", - "type": "tuple[]", - "internalType": "struct IDelegationManager.Withdrawal[]", - "components": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - }, - { - "name": "delegatedTo", - "type": "address", - "internalType": "address" - }, - { - "name": "withdrawer", - "type": "address", - "internalType": "address" - }, - { - "name": "nonce", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "startBlock", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "strategies", - "type": "address[]", - "internalType": "contract IStrategy[]" - }, - { - "name": "shares", - "type": "uint256[]", - "internalType": "uint256[]" - } - ] - }, - { - "name": "tokens", - "type": "address[][]", - "internalType": "contract IERC20[][]" - }, - { - "name": "middlewareTimesIndexes", - "type": "uint256[]", - "internalType": "uint256[]" - }, - { - "name": "receiveAsTokens", - "type": "bool[]", - "internalType": "bool[]" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "cumulativeWithdrawalsQueued", - "inputs": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "decreaseDelegatedShares", - "inputs": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - }, - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "shares", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "delegateTo", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "approverSignatureAndExpiry", - "type": "tuple", - "internalType": "struct ISignatureUtils.SignatureWithExpiry", - "components": [ - { - "name": "signature", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "expiry", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "approverSalt", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "delegateToBySignature", - "inputs": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - }, - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "stakerSignatureAndExpiry", - "type": "tuple", - "internalType": "struct ISignatureUtils.SignatureWithExpiry", - "components": [ - { - "name": "signature", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "expiry", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "approverSignatureAndExpiry", - "type": "tuple", - "internalType": "struct ISignatureUtils.SignatureWithExpiry", - "components": [ - { - "name": "signature", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "expiry", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "approverSalt", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "delegatedTo", - "inputs": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "delegationApprover", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "delegationApproverSaltIsSpent", - "inputs": [ - { - "name": "_delegationApprover", - "type": "address", - "internalType": "address" - }, - { - "name": "salt", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "domainSeparator", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getDelegatableShares", - "inputs": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "address[]", - "internalType": "contract IStrategy[]" - }, - { - "name": "", - "type": "uint256[]", - "internalType": "uint256[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorShares", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "strategies", - "type": "address[]", - "internalType": "contract IStrategy[]" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256[]", - "internalType": "uint256[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getWithdrawalDelay", - "inputs": [ - { - "name": "strategies", - "type": "address[]", - "internalType": "contract IStrategy[]" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "increaseDelegatedShares", - "inputs": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - }, - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "shares", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "isDelegated", - "inputs": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "isOperator", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "minWithdrawalDelayBlocks", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "modifyOperatorDetails", - "inputs": [ - { - "name": "newOperatorDetails", - "type": "tuple", - "internalType": "struct IDelegationManager.OperatorDetails", - "components": [ - { - "name": "__deprecated_earningsReceiver", - "type": "address", - "internalType": "address" - }, - { - "name": "delegationApprover", - "type": "address", - "internalType": "address" - }, - { - "name": "stakerOptOutWindowBlocks", - "type": "uint32", - "internalType": "uint32" - } - ] - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "operatorDetails", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct IDelegationManager.OperatorDetails", - "components": [ - { - "name": "__deprecated_earningsReceiver", - "type": "address", - "internalType": "address" - }, - { - "name": "delegationApprover", - "type": "address", - "internalType": "address" - }, - { - "name": "stakerOptOutWindowBlocks", - "type": "uint32", - "internalType": "uint32" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "operatorShares", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "queueWithdrawals", - "inputs": [ - { - "name": "queuedWithdrawalParams", - "type": "tuple[]", - "internalType": "struct IDelegationManager.QueuedWithdrawalParams[]", - "components": [ - { - "name": "strategies", - "type": "address[]", - "internalType": "contract IStrategy[]" - }, - { - "name": "shares", - "type": "uint256[]", - "internalType": "uint256[]" - }, - { - "name": "withdrawer", - "type": "address", - "internalType": "address" - } - ] - } - ], - "outputs": [ - { - "name": "", - "type": "bytes32[]", - "internalType": "bytes32[]" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "registerAsOperator", - "inputs": [ - { - "name": "registeringOperatorDetails", - "type": "tuple", - "internalType": "struct IDelegationManager.OperatorDetails", - "components": [ - { - "name": "__deprecated_earningsReceiver", - "type": "address", - "internalType": "address" - }, - { - "name": "delegationApprover", - "type": "address", - "internalType": "address" - }, - { - "name": "stakerOptOutWindowBlocks", - "type": "uint32", - "internalType": "uint32" - } - ] - }, - { - "name": "metadataURI", - "type": "string", - "internalType": "string" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "setMinWithdrawalDelayBlocks", - "inputs": [ - { - "name": "newMinWithdrawalDelayBlocks", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "setStrategyWithdrawalDelayBlocks", - "inputs": [ - { - "name": "strategies", - "type": "address[]", - "internalType": "contract IStrategy[]" - }, - { - "name": "withdrawalDelayBlocks", - "type": "uint256[]", - "internalType": "uint256[]" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "stakerNonce", - "inputs": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "stakerOptOutWindowBlocks", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "strategyWithdrawalDelayBlocks", - "inputs": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "undelegate", - "inputs": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "withdrawalRoot", - "type": "bytes32[]", - "internalType": "bytes32[]" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "updateOperatorMetadataURI", - "inputs": [ - { - "name": "metadataURI", - "type": "string", - "internalType": "string" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "event", - "name": "MinWithdrawalDelayBlocksSet", - "inputs": [ - { - "name": "previousValue", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "newValue", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorDetailsModified", - "inputs": [ - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "newOperatorDetails", - "type": "tuple", - "indexed": false, - "internalType": "struct IDelegationManager.OperatorDetails", - "components": [ - { - "name": "__deprecated_earningsReceiver", - "type": "address", - "internalType": "address" - }, - { - "name": "delegationApprover", - "type": "address", - "internalType": "address" - }, - { - "name": "stakerOptOutWindowBlocks", - "type": "uint32", - "internalType": "uint32" - } - ] - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorMetadataURIUpdated", - "inputs": [ - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "metadataURI", - "type": "string", - "indexed": false, - "internalType": "string" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorRegistered", - "inputs": [ - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "operatorDetails", - "type": "tuple", - "indexed": false, - "internalType": "struct IDelegationManager.OperatorDetails", - "components": [ - { - "name": "__deprecated_earningsReceiver", - "type": "address", - "internalType": "address" - }, - { - "name": "delegationApprover", - "type": "address", - "internalType": "address" - }, - { - "name": "stakerOptOutWindowBlocks", - "type": "uint32", - "internalType": "uint32" - } - ] - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorSharesDecreased", - "inputs": [ - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "staker", - "type": "address", - "indexed": false, - "internalType": "address" - }, - { - "name": "strategy", - "type": "address", - "indexed": false, - "internalType": "contract IStrategy" - }, - { - "name": "shares", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorSharesIncreased", - "inputs": [ - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "staker", - "type": "address", - "indexed": false, - "internalType": "address" - }, - { - "name": "strategy", - "type": "address", - "indexed": false, - "internalType": "contract IStrategy" - }, - { - "name": "shares", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "StakerDelegated", - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "StakerForceUndelegated", - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "StakerUndelegated", - "inputs": [ - { - "name": "staker", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "StrategyWithdrawalDelayBlocksSet", - "inputs": [ - { - "name": "strategy", - "type": "address", - "indexed": false, - "internalType": "contract IStrategy" - }, - { - "name": "previousValue", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "newValue", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "WithdrawalCompleted", - "inputs": [ - { - "name": "withdrawalRoot", - "type": "bytes32", - "indexed": false, - "internalType": "bytes32" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "WithdrawalQueued", - "inputs": [ - { - "name": "withdrawalRoot", - "type": "bytes32", - "indexed": false, - "internalType": "bytes32" - }, - { - "name": "withdrawal", - "type": "tuple", - "indexed": false, - "internalType": "struct IDelegationManager.Withdrawal", - "components": [ - { - "name": "staker", - "type": "address", - "internalType": "address" - }, - { - "name": "delegatedTo", - "type": "address", - "internalType": "address" - }, - { - "name": "withdrawer", - "type": "address", - "internalType": "address" - }, - { - "name": "nonce", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "startBlock", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "strategies", - "type": "address[]", - "internalType": "contract IStrategy[]" - }, - { - "name": "shares", - "type": "uint256[]", - "internalType": "uint256[]" - } - ] - } - ], - "anonymous": false - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IDelegationManager { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**```solidity - struct OperatorDetails { address __deprecated_earningsReceiver; address delegationApprover; uint32 stakerOptOutWindowBlocks; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OperatorDetails { - pub __deprecated_earningsReceiver: alloy::sol_types::private::Address, - pub delegationApprover: alloy::sol_types::private::Address, - pub stakerOptOutWindowBlocks: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Address, alloy::sol_types::private::Address, u32); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: OperatorDetails) -> Self { - ( - value.__deprecated_earningsReceiver, - value.delegationApprover, - value.stakerOptOutWindowBlocks, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OperatorDetails { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - __deprecated_earningsReceiver: tuple.0, - delegationApprover: tuple.1, - stakerOptOutWindowBlocks: tuple.2, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for OperatorDetails { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for OperatorDetails { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.__deprecated_earningsReceiver, - ), - ::tokenize( - &self.delegationApprover, - ), - as alloy_sol_types::SolType>::tokenize( - &self.stakerOptOutWindowBlocks, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for OperatorDetails { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for OperatorDetails { - const NAME: &'static str = "OperatorDetails"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "OperatorDetails(address __deprecated_earningsReceiver,address delegationApprover,uint32 stakerOptOutWindowBlocks)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.__deprecated_earningsReceiver, - ) - .0, - ::eip712_data_word( - &self.delegationApprover, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.stakerOptOutWindowBlocks, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for OperatorDetails { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.__deprecated_earningsReceiver, - ) - + ::topic_preimage_length( - &rust.delegationApprover, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.stakerOptOutWindowBlocks, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.__deprecated_earningsReceiver, - out, - ); - ::encode_topic_preimage( - &rust.delegationApprover, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.stakerOptOutWindowBlocks, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct QueuedWithdrawalParams { address[] strategies; uint256[] shares; address withdrawer; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct QueuedWithdrawalParams { - pub strategies: alloy::sol_types::private::Vec, - pub shares: - alloy::sol_types::private::Vec, - pub withdrawer: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Array>, - alloy::sol_types::sol_data::Address, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec, - alloy::sol_types::private::Vec, - alloy::sol_types::private::Address, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: QueuedWithdrawalParams) -> Self { - (value.strategies, value.shares, value.withdrawer) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for QueuedWithdrawalParams { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { strategies: tuple.0, shares: tuple.1, withdrawer: tuple.2 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for QueuedWithdrawalParams { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for QueuedWithdrawalParams { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.strategies), - , - > as alloy_sol_types::SolType>::tokenize(&self.shares), - ::tokenize( - &self.withdrawer, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for QueuedWithdrawalParams { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for QueuedWithdrawalParams { - const NAME: &'static str = "QueuedWithdrawalParams"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "QueuedWithdrawalParams(address[] strategies,uint256[] shares,address withdrawer)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - as alloy_sol_types::SolType>::eip712_data_word(&self.strategies) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word(&self.shares) - .0, - ::eip712_data_word( - &self.withdrawer, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for QueuedWithdrawalParams { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.strategies, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.shares, - ) - + ::topic_preimage_length( - &rust.withdrawer, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.strategies, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.shares, - out, - ); - ::encode_topic_preimage( - &rust.withdrawer, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct Withdrawal { address staker; address delegatedTo; address withdrawer; uint256 nonce; uint32 startBlock; address[] strategies; uint256[] shares; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct Withdrawal { - pub staker: alloy::sol_types::private::Address, - pub delegatedTo: alloy::sol_types::private::Address, - pub withdrawer: alloy::sol_types::private::Address, - pub nonce: alloy::sol_types::private::primitives::aliases::U256, - pub startBlock: u32, - pub strategies: alloy::sol_types::private::Vec, - pub shares: - alloy::sol_types::private::Vec, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Array>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - u32, - alloy::sol_types::private::Vec, - alloy::sol_types::private::Vec, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: Withdrawal) -> Self { - ( - value.staker, - value.delegatedTo, - value.withdrawer, - value.nonce, - value.startBlock, - value.strategies, - value.shares, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for Withdrawal { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - staker: tuple.0, - delegatedTo: tuple.1, - withdrawer: tuple.2, - nonce: tuple.3, - startBlock: tuple.4, - strategies: tuple.5, - shares: tuple.6, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for Withdrawal { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for Withdrawal { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.staker, - ), - ::tokenize( - &self.delegatedTo, - ), - ::tokenize( - &self.withdrawer, - ), - as alloy_sol_types::SolType>::tokenize(&self.nonce), - as alloy_sol_types::SolType>::tokenize(&self.startBlock), - as alloy_sol_types::SolType>::tokenize(&self.strategies), - , - > as alloy_sol_types::SolType>::tokenize(&self.shares), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for Withdrawal { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for Withdrawal { - const NAME: &'static str = "Withdrawal"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "Withdrawal(address staker,address delegatedTo,address withdrawer,uint256 nonce,uint32 startBlock,address[] strategies,uint256[] shares)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.staker, - ) - .0, - ::eip712_data_word( - &self.delegatedTo, - ) - .0, - ::eip712_data_word( - &self.withdrawer, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.nonce) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.startBlock) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.strategies) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word(&self.shares) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for Withdrawal { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.staker, - ) - + ::topic_preimage_length( - &rust.delegatedTo, - ) - + ::topic_preimage_length( - &rust.withdrawer, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.nonce) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.startBlock, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.strategies, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.shares, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.staker, - out, - ); - ::encode_topic_preimage( - &rust.delegatedTo, - out, - ); - ::encode_topic_preimage( - &rust.withdrawer, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.nonce, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.startBlock, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.strategies, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.shares, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**Event with signature `MinWithdrawalDelayBlocksSet(uint256,uint256)` and selector `0xafa003cd76f87ff9d62b35beea889920f33c0c42b8d45b74954d61d50f4b6b69`. - ```solidity - event MinWithdrawalDelayBlocksSet(uint256 previousValue, uint256 newValue); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct MinWithdrawalDelayBlocksSet { - #[allow(missing_docs)] - pub previousValue: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newValue: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for MinWithdrawalDelayBlocksSet { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "MinWithdrawalDelayBlocksSet(uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 175u8, 160u8, 3u8, 205u8, 118u8, 248u8, 127u8, 249u8, 214u8, 43u8, 53u8, 190u8, - 234u8, 136u8, 153u8, 32u8, 243u8, 60u8, 12u8, 66u8, 184u8, 212u8, 91u8, 116u8, - 149u8, 77u8, 97u8, 213u8, 15u8, 75u8, 107u8, 105u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { previousValue: data.0, newValue: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.previousValue, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newValue, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for MinWithdrawalDelayBlocksSet { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&MinWithdrawalDelayBlocksSet> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &MinWithdrawalDelayBlocksSet) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorDetailsModified(address,(address,address,uint32))` and selector `0xfebe5cd24b2cbc7b065b9d0fdeb904461e4afcff57dd57acda1e7832031ba7ac`. - ```solidity - event OperatorDetailsModified(address indexed operator, OperatorDetails newOperatorDetails); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorDetailsModified { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub newOperatorDetails: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorDetailsModified { - type DataTuple<'a> = (OperatorDetails,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = - (alloy_sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Address); - const SIGNATURE: &'static str = - "OperatorDetailsModified(address,(address,address,uint32))"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 254u8, 190u8, 92u8, 210u8, 75u8, 44u8, 188u8, 123u8, 6u8, 91u8, 157u8, 15u8, - 222u8, 185u8, 4u8, 70u8, 30u8, 74u8, 252u8, 255u8, 87u8, 221u8, 87u8, 172u8, - 218u8, 30u8, 120u8, 50u8, 3u8, 27u8, 167u8, 172u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { operator: topics.1, newOperatorDetails: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - (::tokenize(&self.newOperatorDetails),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorDetailsModified { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorDetailsModified> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorDetailsModified) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorMetadataURIUpdated(address,string)` and selector `0x02a919ed0e2acad1dd90f17ef2fa4ae5462ee1339170034a8531cca4b6708090`. - ```solidity - event OperatorMetadataURIUpdated(address indexed operator, string metadataURI); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorMetadataURIUpdated { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub metadataURI: alloy::sol_types::private::String, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorMetadataURIUpdated { - type DataTuple<'a> = (alloy::sol_types::sol_data::String,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = - (alloy_sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Address); - const SIGNATURE: &'static str = "OperatorMetadataURIUpdated(address,string)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 2u8, 169u8, 25u8, 237u8, 14u8, 42u8, 202u8, 209u8, 221u8, 144u8, 241u8, 126u8, - 242u8, 250u8, 74u8, 229u8, 70u8, 46u8, 225u8, 51u8, 145u8, 112u8, 3u8, 74u8, - 133u8, 49u8, 204u8, 164u8, 182u8, 112u8, 128u8, 144u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { operator: topics.1, metadataURI: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - (::tokenize( - &self.metadataURI, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorMetadataURIUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorMetadataURIUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorMetadataURIUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorRegistered(address,(address,address,uint32))` and selector `0x8e8485583a2310d41f7c82b9427d0bd49bad74bb9cff9d3402a29d8f9b28a0e2`. - ```solidity - event OperatorRegistered(address indexed operator, OperatorDetails operatorDetails); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorRegistered { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorDetails: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorRegistered { - type DataTuple<'a> = (OperatorDetails,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = - (alloy_sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Address); - const SIGNATURE: &'static str = "OperatorRegistered(address,(address,address,uint32))"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 142u8, 132u8, 133u8, 88u8, 58u8, 35u8, 16u8, 212u8, 31u8, 124u8, 130u8, 185u8, - 66u8, 125u8, 11u8, 212u8, 155u8, 173u8, 116u8, 187u8, 156u8, 255u8, 157u8, - 52u8, 2u8, 162u8, 157u8, 143u8, 155u8, 40u8, 160u8, 226u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { operator: topics.1, operatorDetails: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - (::tokenize(&self.operatorDetails),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorRegistered { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorRegistered> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorRegistered) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorSharesDecreased(address,address,address,uint256)` and selector `0x6909600037b75d7b4733aedd815442b5ec018a827751c832aaff64eba5d6d2dd`. - ```solidity - event OperatorSharesDecreased(address indexed operator, address staker, address strategy, uint256 shares); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorSharesDecreased { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub staker: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub strategy: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub shares: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorSharesDecreased { - type DataTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = - (alloy_sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Address); - const SIGNATURE: &'static str = - "OperatorSharesDecreased(address,address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 105u8, 9u8, 96u8, 0u8, 55u8, 183u8, 93u8, 123u8, 71u8, 51u8, 174u8, 221u8, - 129u8, 84u8, 66u8, 181u8, 236u8, 1u8, 138u8, 130u8, 119u8, 81u8, 200u8, 50u8, - 170u8, 255u8, 100u8, 235u8, 165u8, 214u8, 210u8, 221u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { operator: topics.1, staker: data.0, strategy: data.1, shares: data.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - ::tokenize( - &self.staker, - ), - ::tokenize( - &self.strategy, - ), - as alloy_sol_types::SolType>::tokenize( - &self.shares, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorSharesDecreased { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorSharesDecreased> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorSharesDecreased) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorSharesIncreased(address,address,address,uint256)` and selector `0x1ec042c965e2edd7107b51188ee0f383e22e76179041ab3a9d18ff151405166c`. - ```solidity - event OperatorSharesIncreased(address indexed operator, address staker, address strategy, uint256 shares); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorSharesIncreased { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub staker: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub strategy: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub shares: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorSharesIncreased { - type DataTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = - (alloy_sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Address); - const SIGNATURE: &'static str = - "OperatorSharesIncreased(address,address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 30u8, 192u8, 66u8, 201u8, 101u8, 226u8, 237u8, 215u8, 16u8, 123u8, 81u8, 24u8, - 142u8, 224u8, 243u8, 131u8, 226u8, 46u8, 118u8, 23u8, 144u8, 65u8, 171u8, 58u8, - 157u8, 24u8, 255u8, 21u8, 20u8, 5u8, 22u8, 108u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { operator: topics.1, staker: data.0, strategy: data.1, shares: data.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - ::tokenize( - &self.staker, - ), - ::tokenize( - &self.strategy, - ), - as alloy_sol_types::SolType>::tokenize( - &self.shares, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorSharesIncreased { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorSharesIncreased> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorSharesIncreased) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `StakerDelegated(address,address)` and selector `0xc3ee9f2e5fda98e8066a1f745b2df9285f416fe98cf2559cd21484b3d8743304`. - ```solidity - event StakerDelegated(address indexed staker, address indexed operator); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct StakerDelegated { - #[allow(missing_docs)] - pub staker: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for StakerDelegated { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "StakerDelegated(address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 195u8, 238u8, 159u8, 46u8, 95u8, 218u8, 152u8, 232u8, 6u8, 106u8, 31u8, 116u8, - 91u8, 45u8, 249u8, 40u8, 95u8, 65u8, 111u8, 233u8, 140u8, 242u8, 85u8, 156u8, - 210u8, 20u8, 132u8, 179u8, 216u8, 116u8, 51u8, 4u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { staker: topics.1, operator: topics.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.staker.clone(), self.operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.staker, - ); - out[2usize] = ::encode_topic( - &self.operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for StakerDelegated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&StakerDelegated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &StakerDelegated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `StakerForceUndelegated(address,address)` and selector `0xf0eddf07e6ea14f388b47e1e94a0f464ecbd9eed4171130e0fc0e99fb4030a8a`. - ```solidity - event StakerForceUndelegated(address indexed staker, address indexed operator); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct StakerForceUndelegated { - #[allow(missing_docs)] - pub staker: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for StakerForceUndelegated { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "StakerForceUndelegated(address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 240u8, 237u8, 223u8, 7u8, 230u8, 234u8, 20u8, 243u8, 136u8, 180u8, 126u8, 30u8, - 148u8, 160u8, 244u8, 100u8, 236u8, 189u8, 158u8, 237u8, 65u8, 113u8, 19u8, - 14u8, 15u8, 192u8, 233u8, 159u8, 180u8, 3u8, 10u8, 138u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { staker: topics.1, operator: topics.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.staker.clone(), self.operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.staker, - ); - out[2usize] = ::encode_topic( - &self.operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for StakerForceUndelegated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&StakerForceUndelegated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &StakerForceUndelegated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `StakerUndelegated(address,address)` and selector `0xfee30966a256b71e14bc0ebfc94315e28ef4a97a7131a9e2b7a310a73af44676`. - ```solidity - event StakerUndelegated(address indexed staker, address indexed operator); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct StakerUndelegated { - #[allow(missing_docs)] - pub staker: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for StakerUndelegated { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "StakerUndelegated(address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 254u8, 227u8, 9u8, 102u8, 162u8, 86u8, 183u8, 30u8, 20u8, 188u8, 14u8, 191u8, - 201u8, 67u8, 21u8, 226u8, 142u8, 244u8, 169u8, 122u8, 113u8, 49u8, 169u8, - 226u8, 183u8, 163u8, 16u8, 167u8, 58u8, 244u8, 70u8, 118u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { staker: topics.1, operator: topics.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.staker.clone(), self.operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.staker, - ); - out[2usize] = ::encode_topic( - &self.operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for StakerUndelegated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&StakerUndelegated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &StakerUndelegated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `StrategyWithdrawalDelayBlocksSet(address,uint256,uint256)` and selector `0x0e7efa738e8b0ce6376a0c1af471655540d2e9a81647d7b09ed823018426576d`. - ```solidity - event StrategyWithdrawalDelayBlocksSet(address strategy, uint256 previousValue, uint256 newValue); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct StrategyWithdrawalDelayBlocksSet { - #[allow(missing_docs)] - pub strategy: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub previousValue: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub newValue: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for StrategyWithdrawalDelayBlocksSet { - type DataTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Uint<256>, - ); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = - "StrategyWithdrawalDelayBlocksSet(address,uint256,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 14u8, 126u8, 250u8, 115u8, 142u8, 139u8, 12u8, 230u8, 55u8, 106u8, 12u8, 26u8, - 244u8, 113u8, 101u8, 85u8, 64u8, 210u8, 233u8, 168u8, 22u8, 71u8, 215u8, 176u8, - 158u8, 216u8, 35u8, 1u8, 132u8, 38u8, 87u8, 109u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { strategy: data.0, previousValue: data.1, newValue: data.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - ::tokenize( - &self.strategy, - ), - as alloy_sol_types::SolType>::tokenize( - &self.previousValue, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newValue, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for StrategyWithdrawalDelayBlocksSet { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&StrategyWithdrawalDelayBlocksSet> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &StrategyWithdrawalDelayBlocksSet) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `WithdrawalCompleted(bytes32)` and selector `0xc97098c2f658800b4df29001527f7324bcdffcf6e8751a699ab920a1eced5b1d`. - ```solidity - event WithdrawalCompleted(bytes32 withdrawalRoot); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct WithdrawalCompleted { - #[allow(missing_docs)] - pub withdrawalRoot: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for WithdrawalCompleted { - type DataTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "WithdrawalCompleted(bytes32)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 201u8, 112u8, 152u8, 194u8, 246u8, 88u8, 128u8, 11u8, 77u8, 242u8, 144u8, 1u8, - 82u8, 127u8, 115u8, 36u8, 188u8, 223u8, 252u8, 246u8, 232u8, 117u8, 26u8, - 105u8, 154u8, 185u8, 32u8, 161u8, 236u8, 237u8, 91u8, 29u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { withdrawalRoot: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.withdrawalRoot), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for WithdrawalCompleted { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&WithdrawalCompleted> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &WithdrawalCompleted) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `WithdrawalQueued(bytes32,(address,address,address,uint256,uint32,address[],uint256[]))` and selector `0x9009ab153e8014fbfb02f2217f5cde7aa7f9ad734ae85ca3ee3f4ca2fdd499f9`. - ```solidity - event WithdrawalQueued(bytes32 withdrawalRoot, Withdrawal withdrawal); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct WithdrawalQueued { - #[allow(missing_docs)] - pub withdrawalRoot: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub withdrawal: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for WithdrawalQueued { - type DataTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>, Withdrawal); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "WithdrawalQueued(bytes32,(address,address,address,uint256,uint32,address[],uint256[]))"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 144u8, 9u8, 171u8, 21u8, 62u8, 128u8, 20u8, 251u8, 251u8, 2u8, 242u8, 33u8, - 127u8, 92u8, 222u8, 122u8, 167u8, 249u8, 173u8, 115u8, 74u8, 232u8, 92u8, - 163u8, 238u8, 63u8, 76u8, 162u8, 253u8, 212u8, 153u8, 249u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { withdrawalRoot: data.0, withdrawal: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.withdrawalRoot), - ::tokenize(&self.withdrawal), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for WithdrawalQueued { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&WithdrawalQueued> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &WithdrawalQueued) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Function with signature `DELEGATION_APPROVAL_TYPEHASH()` and selector `0x04a4f979`. - ```solidity - function DELEGATION_APPROVAL_TYPEHASH() external view returns (bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct DELEGATION_APPROVAL_TYPEHASHCall {} - ///Container type for the return parameters of the [`DELEGATION_APPROVAL_TYPEHASH()`](DELEGATION_APPROVAL_TYPEHASHCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct DELEGATION_APPROVAL_TYPEHASHReturn { - pub _0: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: DELEGATION_APPROVAL_TYPEHASHCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for DELEGATION_APPROVAL_TYPEHASHCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: DELEGATION_APPROVAL_TYPEHASHReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for DELEGATION_APPROVAL_TYPEHASHReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for DELEGATION_APPROVAL_TYPEHASHCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = DELEGATION_APPROVAL_TYPEHASHReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "DELEGATION_APPROVAL_TYPEHASH()"; - const SELECTOR: [u8; 4] = [4u8, 164u8, 249u8, 121u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `DOMAIN_TYPEHASH()` and selector `0x20606b70`. - ```solidity - function DOMAIN_TYPEHASH() external view returns (bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct DOMAIN_TYPEHASHCall {} - ///Container type for the return parameters of the [`DOMAIN_TYPEHASH()`](DOMAIN_TYPEHASHCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct DOMAIN_TYPEHASHReturn { - pub _0: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: DOMAIN_TYPEHASHCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for DOMAIN_TYPEHASHCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: DOMAIN_TYPEHASHReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for DOMAIN_TYPEHASHReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for DOMAIN_TYPEHASHCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = DOMAIN_TYPEHASHReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "DOMAIN_TYPEHASH()"; - const SELECTOR: [u8; 4] = [32u8, 96u8, 107u8, 112u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `STAKER_DELEGATION_TYPEHASH()` and selector `0x43377382`. - ```solidity - function STAKER_DELEGATION_TYPEHASH() external view returns (bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct STAKER_DELEGATION_TYPEHASHCall {} - ///Container type for the return parameters of the [`STAKER_DELEGATION_TYPEHASH()`](STAKER_DELEGATION_TYPEHASHCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct STAKER_DELEGATION_TYPEHASHReturn { - pub _0: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: STAKER_DELEGATION_TYPEHASHCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for STAKER_DELEGATION_TYPEHASHCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: STAKER_DELEGATION_TYPEHASHReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for STAKER_DELEGATION_TYPEHASHReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for STAKER_DELEGATION_TYPEHASHCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = STAKER_DELEGATION_TYPEHASHReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "STAKER_DELEGATION_TYPEHASH()"; - const SELECTOR: [u8; 4] = [67u8, 55u8, 115u8, 130u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `beaconChainETHStrategy()` and selector `0x9104c319`. - ```solidity - function beaconChainETHStrategy() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct beaconChainETHStrategyCall {} - ///Container type for the return parameters of the [`beaconChainETHStrategy()`](beaconChainETHStrategyCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct beaconChainETHStrategyReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: beaconChainETHStrategyCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for beaconChainETHStrategyCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: beaconChainETHStrategyReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for beaconChainETHStrategyReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for beaconChainETHStrategyCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = beaconChainETHStrategyReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "beaconChainETHStrategy()"; - const SELECTOR: [u8; 4] = [145u8, 4u8, 195u8, 25u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `calculateCurrentStakerDelegationDigestHash(address,address,uint256)` and selector `0x1bbce091`. - ```solidity - function calculateCurrentStakerDelegationDigestHash(address staker, address operator, uint256 expiry) external view returns (bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct calculateCurrentStakerDelegationDigestHashCall { - pub staker: alloy::sol_types::private::Address, - pub operator: alloy::sol_types::private::Address, - pub expiry: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`calculateCurrentStakerDelegationDigestHash(address,address,uint256)`](calculateCurrentStakerDelegationDigestHashCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct calculateCurrentStakerDelegationDigestHashReturn { - pub _0: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From - for UnderlyingRustTuple<'_> - { - fn from(value: calculateCurrentStakerDelegationDigestHashCall) -> Self { - (value.staker, value.operator, value.expiry) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for calculateCurrentStakerDelegationDigestHashCall - { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { staker: tuple.0, operator: tuple.1, expiry: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From - for UnderlyingRustTuple<'_> - { - fn from(value: calculateCurrentStakerDelegationDigestHashReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for calculateCurrentStakerDelegationDigestHashReturn - { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for calculateCurrentStakerDelegationDigestHashCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = calculateCurrentStakerDelegationDigestHashReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "calculateCurrentStakerDelegationDigestHash(address,address,uint256)"; - const SELECTOR: [u8; 4] = [27u8, 188u8, 224u8, 145u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.staker, - ), - ::tokenize( - &self.operator, - ), - as alloy_sol_types::SolType>::tokenize( - &self.expiry, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `calculateDelegationApprovalDigestHash(address,address,address,bytes32,uint256)` and selector `0x0b9f487a`. - ```solidity - function calculateDelegationApprovalDigestHash(address staker, address operator, address _delegationApprover, bytes32 approverSalt, uint256 expiry) external view returns (bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct calculateDelegationApprovalDigestHashCall { - pub staker: alloy::sol_types::private::Address, - pub operator: alloy::sol_types::private::Address, - pub _delegationApprover: alloy::sol_types::private::Address, - pub approverSalt: alloy::sol_types::private::FixedBytes<32>, - pub expiry: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`calculateDelegationApprovalDigestHash(address,address,address,bytes32,uint256)`](calculateDelegationApprovalDigestHashCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct calculateDelegationApprovalDigestHashReturn { - pub _0: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::FixedBytes<32>, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: calculateDelegationApprovalDigestHashCall) -> Self { - ( - value.staker, - value.operator, - value._delegationApprover, - value.approverSalt, - value.expiry, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for calculateDelegationApprovalDigestHashCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - staker: tuple.0, - operator: tuple.1, - _delegationApprover: tuple.2, - approverSalt: tuple.3, - expiry: tuple.4, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From - for UnderlyingRustTuple<'_> - { - fn from(value: calculateDelegationApprovalDigestHashReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for calculateDelegationApprovalDigestHashReturn - { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for calculateDelegationApprovalDigestHashCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = calculateDelegationApprovalDigestHashReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "calculateDelegationApprovalDigestHash(address,address,address,bytes32,uint256)"; - const SELECTOR: [u8; 4] = [11u8, 159u8, 72u8, 122u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.staker, - ), - ::tokenize( - &self.operator, - ), - ::tokenize( - &self._delegationApprover, - ), - as alloy_sol_types::SolType>::tokenize(&self.approverSalt), - as alloy_sol_types::SolType>::tokenize(&self.expiry), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `calculateStakerDelegationDigestHash(address,uint256,address,uint256)` and selector `0xc94b5111`. - ```solidity - function calculateStakerDelegationDigestHash(address staker, uint256 _stakerNonce, address operator, uint256 expiry) external view returns (bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct calculateStakerDelegationDigestHashCall { - pub staker: alloy::sol_types::private::Address, - pub _stakerNonce: alloy::sol_types::private::primitives::aliases::U256, - pub operator: alloy::sol_types::private::Address, - pub expiry: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`calculateStakerDelegationDigestHash(address,uint256,address,uint256)`](calculateStakerDelegationDigestHashCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct calculateStakerDelegationDigestHashReturn { - pub _0: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: calculateStakerDelegationDigestHashCall) -> Self { - (value.staker, value._stakerNonce, value.operator, value.expiry) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for calculateStakerDelegationDigestHashCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - staker: tuple.0, - _stakerNonce: tuple.1, - operator: tuple.2, - expiry: tuple.3, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: calculateStakerDelegationDigestHashReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for calculateStakerDelegationDigestHashReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for calculateStakerDelegationDigestHashCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = calculateStakerDelegationDigestHashReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "calculateStakerDelegationDigestHash(address,uint256,address,uint256)"; - const SELECTOR: [u8; 4] = [201u8, 75u8, 81u8, 17u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.staker, - ), - as alloy_sol_types::SolType>::tokenize( - &self._stakerNonce, - ), - ::tokenize( - &self.operator, - ), - as alloy_sol_types::SolType>::tokenize( - &self.expiry, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `calculateWithdrawalRoot((address,address,address,uint256,uint32,address[],uint256[]))` and selector `0x597b36da`. - ```solidity - function calculateWithdrawalRoot(Withdrawal memory withdrawal) external pure returns (bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct calculateWithdrawalRootCall { - pub withdrawal: ::RustType, - } - ///Container type for the return parameters of the [`calculateWithdrawalRoot((address,address,address,uint256,uint32,address[],uint256[]))`](calculateWithdrawalRootCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct calculateWithdrawalRootReturn { - pub _0: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (Withdrawal,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (::RustType,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: calculateWithdrawalRootCall) -> Self { - (value.withdrawal,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for calculateWithdrawalRootCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { withdrawal: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: calculateWithdrawalRootReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for calculateWithdrawalRootReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for calculateWithdrawalRootCall { - type Parameters<'a> = (Withdrawal,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = calculateWithdrawalRootReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "calculateWithdrawalRoot((address,address,address,uint256,uint32,address[],uint256[]))"; - const SELECTOR: [u8; 4] = [89u8, 123u8, 54u8, 218u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize(&self.withdrawal),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `completeQueuedWithdrawal((address,address,address,uint256,uint32,address[],uint256[]),address[],uint256,bool)` and selector `0x60d7faed`. - ```solidity - function completeQueuedWithdrawal(Withdrawal memory withdrawal, address[] memory tokens, uint256 middlewareTimesIndex, bool receiveAsTokens) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct completeQueuedWithdrawalCall { - pub withdrawal: ::RustType, - pub tokens: alloy::sol_types::private::Vec, - pub middlewareTimesIndex: alloy::sol_types::private::primitives::aliases::U256, - pub receiveAsTokens: bool, - } - ///Container type for the return parameters of the [`completeQueuedWithdrawal((address,address,address,uint256,uint32,address[],uint256[]),address[],uint256,bool)`](completeQueuedWithdrawalCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct completeQueuedWithdrawalReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - Withdrawal, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Bool, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - ::RustType, - alloy::sol_types::private::Vec, - alloy::sol_types::private::primitives::aliases::U256, - bool, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: completeQueuedWithdrawalCall) -> Self { - ( - value.withdrawal, - value.tokens, - value.middlewareTimesIndex, - value.receiveAsTokens, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for completeQueuedWithdrawalCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - withdrawal: tuple.0, - tokens: tuple.1, - middlewareTimesIndex: tuple.2, - receiveAsTokens: tuple.3, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: completeQueuedWithdrawalReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for completeQueuedWithdrawalReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for completeQueuedWithdrawalCall { - type Parameters<'a> = ( - Withdrawal, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Bool, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = completeQueuedWithdrawalReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "completeQueuedWithdrawal((address,address,address,uint256,uint32,address[],uint256[]),address[],uint256,bool)"; - const SELECTOR: [u8; 4] = [96u8, 215u8, 250u8, 237u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize(&self.withdrawal), - as alloy_sol_types::SolType>::tokenize(&self.tokens), - as alloy_sol_types::SolType>::tokenize(&self.middlewareTimesIndex), - ::tokenize( - &self.receiveAsTokens, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `completeQueuedWithdrawals((address,address,address,uint256,uint32,address[],uint256[])[],address[][],uint256[],bool[])` and selector `0x33404396`. - ```solidity - function completeQueuedWithdrawals(Withdrawal[] memory withdrawals, address[][] memory tokens, uint256[] memory middlewareTimesIndexes, bool[] memory receiveAsTokens) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct completeQueuedWithdrawalsCall { - pub withdrawals: - alloy::sol_types::private::Vec<::RustType>, - pub tokens: alloy::sol_types::private::Vec< - alloy::sol_types::private::Vec, - >, - pub middlewareTimesIndexes: - alloy::sol_types::private::Vec, - pub receiveAsTokens: alloy::sol_types::private::Vec, - } - ///Container type for the return parameters of the [`completeQueuedWithdrawals((address,address,address,uint256,uint32,address[],uint256[])[],address[][],uint256[],bool[])`](completeQueuedWithdrawalsCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct completeQueuedWithdrawalsReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Array< - alloy::sol_types::sol_data::Array, - >, - alloy::sol_types::sol_data::Array>, - alloy::sol_types::sol_data::Array, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec<::RustType>, - alloy::sol_types::private::Vec< - alloy::sol_types::private::Vec, - >, - alloy::sol_types::private::Vec< - alloy::sol_types::private::primitives::aliases::U256, - >, - alloy::sol_types::private::Vec, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: completeQueuedWithdrawalsCall) -> Self { - ( - value.withdrawals, - value.tokens, - value.middlewareTimesIndexes, - value.receiveAsTokens, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for completeQueuedWithdrawalsCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - withdrawals: tuple.0, - tokens: tuple.1, - middlewareTimesIndexes: tuple.2, - receiveAsTokens: tuple.3, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: completeQueuedWithdrawalsReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for completeQueuedWithdrawalsReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for completeQueuedWithdrawalsCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Array< - alloy::sol_types::sol_data::Array, - >, - alloy::sol_types::sol_data::Array>, - alloy::sol_types::sol_data::Array, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = completeQueuedWithdrawalsReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "completeQueuedWithdrawals((address,address,address,uint256,uint32,address[],uint256[])[],address[][],uint256[],bool[])"; - const SELECTOR: [u8; 4] = [51u8, 64u8, 67u8, 150u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.withdrawals), - , - > as alloy_sol_types::SolType>::tokenize(&self.tokens), - , - > as alloy_sol_types::SolType>::tokenize( - &self.middlewareTimesIndexes, - ), - as alloy_sol_types::SolType>::tokenize(&self.receiveAsTokens), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `cumulativeWithdrawalsQueued(address)` and selector `0xa1788484`. - ```solidity - function cumulativeWithdrawalsQueued(address staker) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct cumulativeWithdrawalsQueuedCall { - pub staker: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`cumulativeWithdrawalsQueued(address)`](cumulativeWithdrawalsQueuedCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct cumulativeWithdrawalsQueuedReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: cumulativeWithdrawalsQueuedCall) -> Self { - (value.staker,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for cumulativeWithdrawalsQueuedCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { staker: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: cumulativeWithdrawalsQueuedReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for cumulativeWithdrawalsQueuedReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for cumulativeWithdrawalsQueuedCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = cumulativeWithdrawalsQueuedReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "cumulativeWithdrawalsQueued(address)"; - const SELECTOR: [u8; 4] = [161u8, 120u8, 132u8, 132u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.staker, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `decreaseDelegatedShares(address,address,uint256)` and selector `0x132d4967`. - ```solidity - function decreaseDelegatedShares(address staker, address strategy, uint256 shares) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct decreaseDelegatedSharesCall { - pub staker: alloy::sol_types::private::Address, - pub strategy: alloy::sol_types::private::Address, - pub shares: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`decreaseDelegatedShares(address,address,uint256)`](decreaseDelegatedSharesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct decreaseDelegatedSharesReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: decreaseDelegatedSharesCall) -> Self { - (value.staker, value.strategy, value.shares) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for decreaseDelegatedSharesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { staker: tuple.0, strategy: tuple.1, shares: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: decreaseDelegatedSharesReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for decreaseDelegatedSharesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for decreaseDelegatedSharesCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = decreaseDelegatedSharesReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "decreaseDelegatedShares(address,address,uint256)"; - const SELECTOR: [u8; 4] = [19u8, 45u8, 73u8, 103u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.staker, - ), - ::tokenize( - &self.strategy, - ), - as alloy_sol_types::SolType>::tokenize( - &self.shares, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `delegateTo(address,(bytes,uint256),bytes32)` and selector `0xeea9064b`. - ```solidity - function delegateTo(address operator, ISignatureUtils.SignatureWithExpiry memory approverSignatureAndExpiry, bytes32 approverSalt) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegateToCall { - pub operator: alloy::sol_types::private::Address, - pub approverSignatureAndExpiry: - ::RustType, - pub approverSalt: alloy::sol_types::private::FixedBytes<32>, - } - ///Container type for the return parameters of the [`delegateTo(address,(bytes,uint256),bytes32)`](delegateToCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegateToReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - ISignatureUtils::SignatureWithExpiry, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - ::RustType, - alloy::sol_types::private::FixedBytes<32>, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: delegateToCall) -> Self { - (value.operator, value.approverSignatureAndExpiry, value.approverSalt) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegateToCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - operator: tuple.0, - approverSignatureAndExpiry: tuple.1, - approverSalt: tuple.2, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: delegateToReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegateToReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for delegateToCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - ISignatureUtils::SignatureWithExpiry, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = delegateToReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "delegateTo(address,(bytes,uint256),bytes32)"; - const SELECTOR: [u8; 4] = [238u8, 169u8, 6u8, 75u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - ::tokenize( - &self.approverSignatureAndExpiry, - ), - as alloy_sol_types::SolType>::tokenize(&self.approverSalt), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `delegateToBySignature(address,address,(bytes,uint256),(bytes,uint256),bytes32)` and selector `0x7f548071`. - ```solidity - function delegateToBySignature(address staker, address operator, ISignatureUtils.SignatureWithExpiry memory stakerSignatureAndExpiry, ISignatureUtils.SignatureWithExpiry memory approverSignatureAndExpiry, bytes32 approverSalt) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegateToBySignatureCall { - pub staker: alloy::sol_types::private::Address, - pub operator: alloy::sol_types::private::Address, - pub stakerSignatureAndExpiry: - ::RustType, - pub approverSignatureAndExpiry: - ::RustType, - pub approverSalt: alloy::sol_types::private::FixedBytes<32>, - } - ///Container type for the return parameters of the [`delegateToBySignature(address,address,(bytes,uint256),(bytes,uint256),bytes32)`](delegateToBySignatureCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegateToBySignatureReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ISignatureUtils::SignatureWithExpiry, - ISignatureUtils::SignatureWithExpiry, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - ::RustType, - ::RustType, - alloy::sol_types::private::FixedBytes<32>, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: delegateToBySignatureCall) -> Self { - ( - value.staker, - value.operator, - value.stakerSignatureAndExpiry, - value.approverSignatureAndExpiry, - value.approverSalt, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegateToBySignatureCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - staker: tuple.0, - operator: tuple.1, - stakerSignatureAndExpiry: tuple.2, - approverSignatureAndExpiry: tuple.3, - approverSalt: tuple.4, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: delegateToBySignatureReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegateToBySignatureReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for delegateToBySignatureCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ISignatureUtils::SignatureWithExpiry, - ISignatureUtils::SignatureWithExpiry, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = delegateToBySignatureReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "delegateToBySignature(address,address,(bytes,uint256),(bytes,uint256),bytes32)"; - const SELECTOR: [u8; 4] = [127u8, 84u8, 128u8, 113u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.staker, - ), - ::tokenize( - &self.operator, - ), - ::tokenize( - &self.stakerSignatureAndExpiry, - ), - ::tokenize( - &self.approverSignatureAndExpiry, - ), - as alloy_sol_types::SolType>::tokenize(&self.approverSalt), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `delegatedTo(address)` and selector `0x65da1264`. - ```solidity - function delegatedTo(address staker) external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegatedToCall { - pub staker: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`delegatedTo(address)`](delegatedToCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegatedToReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: delegatedToCall) -> Self { - (value.staker,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegatedToCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { staker: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: delegatedToReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegatedToReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for delegatedToCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = delegatedToReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "delegatedTo(address)"; - const SELECTOR: [u8; 4] = [101u8, 218u8, 18u8, 100u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.staker, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `delegationApprover(address)` and selector `0x3cdeb5e0`. - ```solidity - function delegationApprover(address operator) external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegationApproverCall { - pub operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`delegationApprover(address)`](delegationApproverCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegationApproverReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: delegationApproverCall) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegationApproverCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: delegationApproverReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegationApproverReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for delegationApproverCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = delegationApproverReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "delegationApprover(address)"; - const SELECTOR: [u8; 4] = [60u8, 222u8, 181u8, 224u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.operator, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `delegationApproverSaltIsSpent(address,bytes32)` and selector `0xbb45fef2`. - ```solidity - function delegationApproverSaltIsSpent(address _delegationApprover, bytes32 salt) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegationApproverSaltIsSpentCall { - pub _delegationApprover: alloy::sol_types::private::Address, - pub salt: alloy::sol_types::private::FixedBytes<32>, - } - ///Container type for the return parameters of the [`delegationApproverSaltIsSpent(address,bytes32)`](delegationApproverSaltIsSpentCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegationApproverSaltIsSpentReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::FixedBytes<32>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Address, alloy::sol_types::private::FixedBytes<32>); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: delegationApproverSaltIsSpentCall) -> Self { - (value._delegationApprover, value.salt) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegationApproverSaltIsSpentCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _delegationApprover: tuple.0, salt: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: delegationApproverSaltIsSpentReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegationApproverSaltIsSpentReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for delegationApproverSaltIsSpentCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::FixedBytes<32>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = delegationApproverSaltIsSpentReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "delegationApproverSaltIsSpent(address,bytes32)"; - const SELECTOR: [u8; 4] = [187u8, 69u8, 254u8, 242u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._delegationApprover, - ), - as alloy_sol_types::SolType>::tokenize(&self.salt), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `domainSeparator()` and selector `0xf698da25`. - ```solidity - function domainSeparator() external view returns (bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct domainSeparatorCall {} - ///Container type for the return parameters of the [`domainSeparator()`](domainSeparatorCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct domainSeparatorReturn { - pub _0: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: domainSeparatorCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for domainSeparatorCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: domainSeparatorReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for domainSeparatorReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for domainSeparatorCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = domainSeparatorReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "domainSeparator()"; - const SELECTOR: [u8; 4] = [246u8, 152u8, 218u8, 37u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getDelegatableShares(address)` and selector `0xcf80873e`. - ```solidity - function getDelegatableShares(address staker) external view returns (address[] memory, uint256[] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getDelegatableSharesCall { - pub staker: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`getDelegatableShares(address)`](getDelegatableSharesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getDelegatableSharesReturn { - pub _0: alloy::sol_types::private::Vec, - pub _1: - alloy::sol_types::private::Vec, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getDelegatableSharesCall) -> Self { - (value.staker,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getDelegatableSharesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { staker: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Array>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec, - alloy::sol_types::private::Vec< - alloy::sol_types::private::primitives::aliases::U256, - >, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getDelegatableSharesReturn) -> Self { - (value._0, value._1) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getDelegatableSharesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0, _1: tuple.1 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getDelegatableSharesCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getDelegatableSharesReturn; - type ReturnTuple<'a> = ( - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Array>, - ); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getDelegatableShares(address)"; - const SELECTOR: [u8; 4] = [207u8, 128u8, 135u8, 62u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.staker, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getOperatorShares(address,address[])` and selector `0x90041347`. - ```solidity - function getOperatorShares(address operator, address[] memory strategies) external view returns (uint256[] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorSharesCall { - pub operator: alloy::sol_types::private::Address, - pub strategies: alloy::sol_types::private::Vec, - } - ///Container type for the return parameters of the [`getOperatorShares(address,address[])`](getOperatorSharesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorSharesReturn { - pub _0: - alloy::sol_types::private::Vec, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Array, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Vec, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorSharesCall) -> Self { - (value.operator, value.strategies) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorSharesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0, strategies: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Array>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - alloy::sol_types::private::primitives::aliases::U256, - >, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorSharesReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorSharesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorSharesCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Array, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorSharesReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getOperatorShares(address,address[])"; - const SELECTOR: [u8; 4] = [144u8, 4u8, 19u8, 71u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - as alloy_sol_types::SolType>::tokenize(&self.strategies), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getWithdrawalDelay(address[])` and selector `0x0449ca39`. - ```solidity - function getWithdrawalDelay(address[] memory strategies) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getWithdrawalDelayCall { - pub strategies: alloy::sol_types::private::Vec, - } - ///Container type for the return parameters of the [`getWithdrawalDelay(address[])`](getWithdrawalDelayCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getWithdrawalDelayReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Vec,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getWithdrawalDelayCall) -> Self { - (value.strategies,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getWithdrawalDelayCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { strategies: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getWithdrawalDelayReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getWithdrawalDelayReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getWithdrawalDelayCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Array,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getWithdrawalDelayReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getWithdrawalDelay(address[])"; - const SELECTOR: [u8; 4] = [4u8, 73u8, 202u8, 57u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.strategies), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `increaseDelegatedShares(address,address,uint256)` and selector `0x28a573ae`. - ```solidity - function increaseDelegatedShares(address staker, address strategy, uint256 shares) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct increaseDelegatedSharesCall { - pub staker: alloy::sol_types::private::Address, - pub strategy: alloy::sol_types::private::Address, - pub shares: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`increaseDelegatedShares(address,address,uint256)`](increaseDelegatedSharesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct increaseDelegatedSharesReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: increaseDelegatedSharesCall) -> Self { - (value.staker, value.strategy, value.shares) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for increaseDelegatedSharesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { staker: tuple.0, strategy: tuple.1, shares: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: increaseDelegatedSharesReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for increaseDelegatedSharesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for increaseDelegatedSharesCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = increaseDelegatedSharesReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "increaseDelegatedShares(address,address,uint256)"; - const SELECTOR: [u8; 4] = [40u8, 165u8, 115u8, 174u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.staker, - ), - ::tokenize( - &self.strategy, - ), - as alloy_sol_types::SolType>::tokenize( - &self.shares, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `isDelegated(address)` and selector `0x3e28391d`. - ```solidity - function isDelegated(address staker) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isDelegatedCall { - pub staker: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`isDelegated(address)`](isDelegatedCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isDelegatedReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isDelegatedCall) -> Self { - (value.staker,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isDelegatedCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { staker: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isDelegatedReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isDelegatedReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for isDelegatedCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = isDelegatedReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "isDelegated(address)"; - const SELECTOR: [u8; 4] = [62u8, 40u8, 57u8, 29u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.staker, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `isOperator(address)` and selector `0x6d70f7ae`. - ```solidity - function isOperator(address operator) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isOperatorCall { - pub operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`isOperator(address)`](isOperatorCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isOperatorReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isOperatorCall) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isOperatorCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isOperatorReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isOperatorReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for isOperatorCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = isOperatorReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "isOperator(address)"; - const SELECTOR: [u8; 4] = [109u8, 112u8, 247u8, 174u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.operator, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `minWithdrawalDelayBlocks()` and selector `0xc448feb8`. - ```solidity - function minWithdrawalDelayBlocks() external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct minWithdrawalDelayBlocksCall {} - ///Container type for the return parameters of the [`minWithdrawalDelayBlocks()`](minWithdrawalDelayBlocksCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct minWithdrawalDelayBlocksReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: minWithdrawalDelayBlocksCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for minWithdrawalDelayBlocksCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: minWithdrawalDelayBlocksReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for minWithdrawalDelayBlocksReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for minWithdrawalDelayBlocksCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = minWithdrawalDelayBlocksReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "minWithdrawalDelayBlocks()"; - const SELECTOR: [u8; 4] = [196u8, 72u8, 254u8, 184u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `modifyOperatorDetails((address,address,uint32))` and selector `0xf16172b0`. - ```solidity - function modifyOperatorDetails(OperatorDetails memory newOperatorDetails) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct modifyOperatorDetailsCall { - pub newOperatorDetails: ::RustType, - } - ///Container type for the return parameters of the [`modifyOperatorDetails((address,address,uint32))`](modifyOperatorDetailsCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct modifyOperatorDetailsReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (OperatorDetails,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (::RustType,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: modifyOperatorDetailsCall) -> Self { - (value.newOperatorDetails,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for modifyOperatorDetailsCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { newOperatorDetails: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: modifyOperatorDetailsReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for modifyOperatorDetailsReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for modifyOperatorDetailsCall { - type Parameters<'a> = (OperatorDetails,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = modifyOperatorDetailsReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "modifyOperatorDetails((address,address,uint32))"; - const SELECTOR: [u8; 4] = [241u8, 97u8, 114u8, 176u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize(&self.newOperatorDetails),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `operatorDetails(address)` and selector `0xc5e480db`. - ```solidity - function operatorDetails(address operator) external view returns (OperatorDetails memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct operatorDetailsCall { - pub operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`operatorDetails(address)`](operatorDetailsCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct operatorDetailsReturn { - pub _0: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: operatorDetailsCall) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for operatorDetailsCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (OperatorDetails,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (::RustType,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: operatorDetailsReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for operatorDetailsReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for operatorDetailsCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = operatorDetailsReturn; - type ReturnTuple<'a> = (OperatorDetails,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "operatorDetails(address)"; - const SELECTOR: [u8; 4] = [197u8, 228u8, 128u8, 219u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.operator, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `operatorShares(address,address)` and selector `0x778e55f3`. - ```solidity - function operatorShares(address operator, address strategy) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct operatorSharesCall { - pub operator: alloy::sol_types::private::Address, - pub strategy: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`operatorShares(address,address)`](operatorSharesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct operatorSharesReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Address, alloy::sol_types::private::Address); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: operatorSharesCall) -> Self { - (value.operator, value.strategy) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for operatorSharesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0, strategy: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: operatorSharesReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for operatorSharesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for operatorSharesCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = operatorSharesReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "operatorShares(address,address)"; - const SELECTOR: [u8; 4] = [119u8, 142u8, 85u8, 243u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - ::tokenize( - &self.strategy, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `queueWithdrawals((address[],uint256[],address)[])` and selector `0x0dd8dd02`. - ```solidity - function queueWithdrawals(QueuedWithdrawalParams[] memory queuedWithdrawalParams) external returns (bytes32[] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct queueWithdrawalsCall { - pub queuedWithdrawalParams: alloy::sol_types::private::Vec< - ::RustType, - >, - } - ///Container type for the return parameters of the [`queueWithdrawals((address[],uint256[],address)[])`](queueWithdrawalsCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct queueWithdrawalsReturn { - pub _0: alloy::sol_types::private::Vec>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - ::RustType, - >, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: queueWithdrawalsCall) -> Self { - (value.queuedWithdrawalParams,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for queueWithdrawalsCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { queuedWithdrawalParams: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Array>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Vec>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: queueWithdrawalsReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for queueWithdrawalsReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for queueWithdrawalsCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Array,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = queueWithdrawalsReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "queueWithdrawals((address[],uint256[],address)[])"; - const SELECTOR: [u8; 4] = [13u8, 216u8, 221u8, 2u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.queuedWithdrawalParams, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `registerAsOperator((address,address,uint32),string)` and selector `0x0f589e59`. - ```solidity - function registerAsOperator(OperatorDetails memory registeringOperatorDetails, string memory metadataURI) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registerAsOperatorCall { - pub registeringOperatorDetails: ::RustType, - pub metadataURI: alloy::sol_types::private::String, - } - ///Container type for the return parameters of the [`registerAsOperator((address,address,uint32),string)`](registerAsOperatorCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registerAsOperatorReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (OperatorDetails, alloy::sol_types::sol_data::String); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - ::RustType, - alloy::sol_types::private::String, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: registerAsOperatorCall) -> Self { - (value.registeringOperatorDetails, value.metadataURI) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registerAsOperatorCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { registeringOperatorDetails: tuple.0, metadataURI: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: registerAsOperatorReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registerAsOperatorReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for registerAsOperatorCall { - type Parameters<'a> = (OperatorDetails, alloy::sol_types::sol_data::String); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = registerAsOperatorReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "registerAsOperator((address,address,uint32),string)"; - const SELECTOR: [u8; 4] = [15u8, 88u8, 158u8, 89u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registeringOperatorDetails, - ), - ::tokenize( - &self.metadataURI, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setMinWithdrawalDelayBlocks(uint256)` and selector `0x635bbd10`. - ```solidity - function setMinWithdrawalDelayBlocks(uint256 newMinWithdrawalDelayBlocks) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setMinWithdrawalDelayBlocksCall { - pub newMinWithdrawalDelayBlocks: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`setMinWithdrawalDelayBlocks(uint256)`](setMinWithdrawalDelayBlocksCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setMinWithdrawalDelayBlocksReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setMinWithdrawalDelayBlocksCall) -> Self { - (value.newMinWithdrawalDelayBlocks,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setMinWithdrawalDelayBlocksCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { newMinWithdrawalDelayBlocks: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setMinWithdrawalDelayBlocksReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setMinWithdrawalDelayBlocksReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setMinWithdrawalDelayBlocksCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setMinWithdrawalDelayBlocksReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setMinWithdrawalDelayBlocks(uint256)"; - const SELECTOR: [u8; 4] = [99u8, 91u8, 189u8, 16u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.newMinWithdrawalDelayBlocks, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setStrategyWithdrawalDelayBlocks(address[],uint256[])` and selector `0x1522bf02`. - ```solidity - function setStrategyWithdrawalDelayBlocks(address[] memory strategies, uint256[] memory withdrawalDelayBlocks) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setStrategyWithdrawalDelayBlocksCall { - pub strategies: alloy::sol_types::private::Vec, - pub withdrawalDelayBlocks: - alloy::sol_types::private::Vec, - } - ///Container type for the return parameters of the [`setStrategyWithdrawalDelayBlocks(address[],uint256[])`](setStrategyWithdrawalDelayBlocksCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setStrategyWithdrawalDelayBlocksReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Array>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec, - alloy::sol_types::private::Vec< - alloy::sol_types::private::primitives::aliases::U256, - >, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setStrategyWithdrawalDelayBlocksCall) -> Self { - (value.strategies, value.withdrawalDelayBlocks) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setStrategyWithdrawalDelayBlocksCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { strategies: tuple.0, withdrawalDelayBlocks: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setStrategyWithdrawalDelayBlocksReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setStrategyWithdrawalDelayBlocksReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setStrategyWithdrawalDelayBlocksCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Array>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setStrategyWithdrawalDelayBlocksReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setStrategyWithdrawalDelayBlocks(address[],uint256[])"; - const SELECTOR: [u8; 4] = [21u8, 34u8, 191u8, 2u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.strategies), - , - > as alloy_sol_types::SolType>::tokenize(&self.withdrawalDelayBlocks), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `stakerNonce(address)` and selector `0x29c77d4f`. - ```solidity - function stakerNonce(address staker) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct stakerNonceCall { - pub staker: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`stakerNonce(address)`](stakerNonceCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct stakerNonceReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: stakerNonceCall) -> Self { - (value.staker,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for stakerNonceCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { staker: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: stakerNonceReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for stakerNonceReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for stakerNonceCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = stakerNonceReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "stakerNonce(address)"; - const SELECTOR: [u8; 4] = [41u8, 199u8, 125u8, 79u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.staker, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `stakerOptOutWindowBlocks(address)` and selector `0x16928365`. - ```solidity - function stakerOptOutWindowBlocks(address operator) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct stakerOptOutWindowBlocksCall { - pub operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`stakerOptOutWindowBlocks(address)`](stakerOptOutWindowBlocksCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct stakerOptOutWindowBlocksReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: stakerOptOutWindowBlocksCall) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for stakerOptOutWindowBlocksCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: stakerOptOutWindowBlocksReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for stakerOptOutWindowBlocksReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for stakerOptOutWindowBlocksCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = stakerOptOutWindowBlocksReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "stakerOptOutWindowBlocks(address)"; - const SELECTOR: [u8; 4] = [22u8, 146u8, 131u8, 101u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.operator, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `strategyWithdrawalDelayBlocks(address)` and selector `0xc488375a`. - ```solidity - function strategyWithdrawalDelayBlocks(address strategy) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct strategyWithdrawalDelayBlocksCall { - pub strategy: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`strategyWithdrawalDelayBlocks(address)`](strategyWithdrawalDelayBlocksCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct strategyWithdrawalDelayBlocksReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: strategyWithdrawalDelayBlocksCall) -> Self { - (value.strategy,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for strategyWithdrawalDelayBlocksCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { strategy: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: strategyWithdrawalDelayBlocksReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for strategyWithdrawalDelayBlocksReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for strategyWithdrawalDelayBlocksCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = strategyWithdrawalDelayBlocksReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "strategyWithdrawalDelayBlocks(address)"; - const SELECTOR: [u8; 4] = [196u8, 136u8, 55u8, 90u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.strategy, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `undelegate(address)` and selector `0xda8be864`. - ```solidity - function undelegate(address staker) external returns (bytes32[] memory withdrawalRoot); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct undelegateCall { - pub staker: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`undelegate(address)`](undelegateCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct undelegateReturn { - pub withdrawalRoot: - alloy::sol_types::private::Vec>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: undelegateCall) -> Self { - (value.staker,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for undelegateCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { staker: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Array>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Vec>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: undelegateReturn) -> Self { - (value.withdrawalRoot,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for undelegateReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { withdrawalRoot: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for undelegateCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = undelegateReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "undelegate(address)"; - const SELECTOR: [u8; 4] = [218u8, 139u8, 232u8, 100u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.staker, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `updateOperatorMetadataURI(string)` and selector `0x99be81c8`. - ```solidity - function updateOperatorMetadataURI(string memory metadataURI) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateOperatorMetadataURICall { - pub metadataURI: alloy::sol_types::private::String, - } - ///Container type for the return parameters of the [`updateOperatorMetadataURI(string)`](updateOperatorMetadataURICall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateOperatorMetadataURIReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateOperatorMetadataURICall) -> Self { - (value.metadataURI,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateOperatorMetadataURICall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { metadataURI: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateOperatorMetadataURIReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateOperatorMetadataURIReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for updateOperatorMetadataURICall { - type Parameters<'a> = (alloy::sol_types::sol_data::String,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = updateOperatorMetadataURIReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "updateOperatorMetadataURI(string)"; - const SELECTOR: [u8; 4] = [153u8, 190u8, 129u8, 200u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.metadataURI, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`IDelegationManager`](self) function calls. - pub enum IDelegationManagerCalls { - DELEGATION_APPROVAL_TYPEHASH(DELEGATION_APPROVAL_TYPEHASHCall), - DOMAIN_TYPEHASH(DOMAIN_TYPEHASHCall), - STAKER_DELEGATION_TYPEHASH(STAKER_DELEGATION_TYPEHASHCall), - beaconChainETHStrategy(beaconChainETHStrategyCall), - calculateCurrentStakerDelegationDigestHash(calculateCurrentStakerDelegationDigestHashCall), - calculateDelegationApprovalDigestHash(calculateDelegationApprovalDigestHashCall), - calculateStakerDelegationDigestHash(calculateStakerDelegationDigestHashCall), - calculateWithdrawalRoot(calculateWithdrawalRootCall), - completeQueuedWithdrawal(completeQueuedWithdrawalCall), - completeQueuedWithdrawals(completeQueuedWithdrawalsCall), - cumulativeWithdrawalsQueued(cumulativeWithdrawalsQueuedCall), - decreaseDelegatedShares(decreaseDelegatedSharesCall), - delegateTo(delegateToCall), - delegateToBySignature(delegateToBySignatureCall), - delegatedTo(delegatedToCall), - delegationApprover(delegationApproverCall), - delegationApproverSaltIsSpent(delegationApproverSaltIsSpentCall), - domainSeparator(domainSeparatorCall), - getDelegatableShares(getDelegatableSharesCall), - getOperatorShares(getOperatorSharesCall), - getWithdrawalDelay(getWithdrawalDelayCall), - increaseDelegatedShares(increaseDelegatedSharesCall), - isDelegated(isDelegatedCall), - isOperator(isOperatorCall), - minWithdrawalDelayBlocks(minWithdrawalDelayBlocksCall), - modifyOperatorDetails(modifyOperatorDetailsCall), - operatorDetails(operatorDetailsCall), - operatorShares(operatorSharesCall), - queueWithdrawals(queueWithdrawalsCall), - registerAsOperator(registerAsOperatorCall), - setMinWithdrawalDelayBlocks(setMinWithdrawalDelayBlocksCall), - setStrategyWithdrawalDelayBlocks(setStrategyWithdrawalDelayBlocksCall), - stakerNonce(stakerNonceCall), - stakerOptOutWindowBlocks(stakerOptOutWindowBlocksCall), - strategyWithdrawalDelayBlocks(strategyWithdrawalDelayBlocksCall), - undelegate(undelegateCall), - updateOperatorMetadataURI(updateOperatorMetadataURICall), - } - #[automatically_derived] - impl IDelegationManagerCalls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [4u8, 73u8, 202u8, 57u8], - [4u8, 164u8, 249u8, 121u8], - [11u8, 159u8, 72u8, 122u8], - [13u8, 216u8, 221u8, 2u8], - [15u8, 88u8, 158u8, 89u8], - [19u8, 45u8, 73u8, 103u8], - [21u8, 34u8, 191u8, 2u8], - [22u8, 146u8, 131u8, 101u8], - [27u8, 188u8, 224u8, 145u8], - [32u8, 96u8, 107u8, 112u8], - [40u8, 165u8, 115u8, 174u8], - [41u8, 199u8, 125u8, 79u8], - [51u8, 64u8, 67u8, 150u8], - [60u8, 222u8, 181u8, 224u8], - [62u8, 40u8, 57u8, 29u8], - [67u8, 55u8, 115u8, 130u8], - [89u8, 123u8, 54u8, 218u8], - [96u8, 215u8, 250u8, 237u8], - [99u8, 91u8, 189u8, 16u8], - [101u8, 218u8, 18u8, 100u8], - [109u8, 112u8, 247u8, 174u8], - [119u8, 142u8, 85u8, 243u8], - [127u8, 84u8, 128u8, 113u8], - [144u8, 4u8, 19u8, 71u8], - [145u8, 4u8, 195u8, 25u8], - [153u8, 190u8, 129u8, 200u8], - [161u8, 120u8, 132u8, 132u8], - [187u8, 69u8, 254u8, 242u8], - [196u8, 72u8, 254u8, 184u8], - [196u8, 136u8, 55u8, 90u8], - [197u8, 228u8, 128u8, 219u8], - [201u8, 75u8, 81u8, 17u8], - [207u8, 128u8, 135u8, 62u8], - [218u8, 139u8, 232u8, 100u8], - [238u8, 169u8, 6u8, 75u8], - [241u8, 97u8, 114u8, 176u8], - [246u8, 152u8, 218u8, 37u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for IDelegationManagerCalls { - const NAME: &'static str = "IDelegationManagerCalls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 37usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::DELEGATION_APPROVAL_TYPEHASH(_) => { - ::SELECTOR - } - Self::DOMAIN_TYPEHASH(_) => { - ::SELECTOR - } - Self::STAKER_DELEGATION_TYPEHASH(_) => { - ::SELECTOR - } - Self::beaconChainETHStrategy(_) => { - ::SELECTOR - } - Self::calculateCurrentStakerDelegationDigestHash(_) => { - ::SELECTOR - } - Self::calculateDelegationApprovalDigestHash(_) => { - ::SELECTOR - } - Self::calculateStakerDelegationDigestHash(_) => { - ::SELECTOR - } - Self::calculateWithdrawalRoot(_) => { - ::SELECTOR - } - Self::completeQueuedWithdrawal(_) => { - ::SELECTOR - } - Self::completeQueuedWithdrawals(_) => { - ::SELECTOR - } - Self::cumulativeWithdrawalsQueued(_) => { - ::SELECTOR - } - Self::decreaseDelegatedShares(_) => { - ::SELECTOR - } - Self::delegateTo(_) => { - ::SELECTOR - } - Self::delegateToBySignature(_) => { - ::SELECTOR - } - Self::delegatedTo(_) => { - ::SELECTOR - } - Self::delegationApprover(_) => { - ::SELECTOR - } - Self::delegationApproverSaltIsSpent(_) => { - ::SELECTOR - } - Self::domainSeparator(_) => { - ::SELECTOR - } - Self::getDelegatableShares(_) => { - ::SELECTOR - } - Self::getOperatorShares(_) => { - ::SELECTOR - } - Self::getWithdrawalDelay(_) => { - ::SELECTOR - } - Self::increaseDelegatedShares(_) => { - ::SELECTOR - } - Self::isDelegated(_) => { - ::SELECTOR - } - Self::isOperator(_) => { - ::SELECTOR - } - Self::minWithdrawalDelayBlocks(_) => { - ::SELECTOR - } - Self::modifyOperatorDetails(_) => { - ::SELECTOR - } - Self::operatorDetails(_) => { - ::SELECTOR - } - Self::operatorShares(_) => { - ::SELECTOR - } - Self::queueWithdrawals(_) => { - ::SELECTOR - } - Self::registerAsOperator(_) => { - ::SELECTOR - } - Self::setMinWithdrawalDelayBlocks(_) => { - ::SELECTOR - } - Self::setStrategyWithdrawalDelayBlocks(_) => { - ::SELECTOR - } - Self::stakerNonce(_) => { - ::SELECTOR - } - Self::stakerOptOutWindowBlocks(_) => { - ::SELECTOR - } - Self::strategyWithdrawalDelayBlocks(_) => { - ::SELECTOR - } - Self::undelegate(_) => { - ::SELECTOR - } - Self::updateOperatorMetadataURI(_) => { - ::SELECTOR - } - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn( - &[u8], - bool, - ) - -> alloy_sol_types::Result] = &[ - { - fn getWithdrawalDelay( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::getWithdrawalDelay) - } - getWithdrawalDelay - }, - { - fn DELEGATION_APPROVAL_TYPEHASH( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IDelegationManagerCalls::DELEGATION_APPROVAL_TYPEHASH) - } - DELEGATION_APPROVAL_TYPEHASH - }, - { - fn calculateDelegationApprovalDigestHash( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - IDelegationManagerCalls::calculateDelegationApprovalDigestHash, - ) - } - calculateDelegationApprovalDigestHash - }, - { - fn queueWithdrawals( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::queueWithdrawals) - } - queueWithdrawals - }, - { - fn registerAsOperator( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::registerAsOperator) - } - registerAsOperator - }, - { - fn decreaseDelegatedShares( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::decreaseDelegatedShares) - } - decreaseDelegatedShares - }, - { - fn setStrategyWithdrawalDelayBlocks( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - IDelegationManagerCalls::setStrategyWithdrawalDelayBlocks, - ) - } - setStrategyWithdrawalDelayBlocks - }, - { - fn stakerOptOutWindowBlocks( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::stakerOptOutWindowBlocks) - } - stakerOptOutWindowBlocks - }, - { - fn calculateCurrentStakerDelegationDigestHash( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - IDelegationManagerCalls::calculateCurrentStakerDelegationDigestHash, - ) - } - calculateCurrentStakerDelegationDigestHash - }, - { - fn DOMAIN_TYPEHASH( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::DOMAIN_TYPEHASH) - } - DOMAIN_TYPEHASH - }, - { - fn increaseDelegatedShares( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::increaseDelegatedShares) - } - increaseDelegatedShares - }, - { - fn stakerNonce( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::stakerNonce) - } - stakerNonce - }, - { - fn completeQueuedWithdrawals( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::completeQueuedWithdrawals) - } - completeQueuedWithdrawals - }, - { - fn delegationApprover( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::delegationApprover) - } - delegationApprover - }, - { - fn isDelegated( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::isDelegated) - } - isDelegated - }, - { - fn STAKER_DELEGATION_TYPEHASH( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IDelegationManagerCalls::STAKER_DELEGATION_TYPEHASH) - } - STAKER_DELEGATION_TYPEHASH - }, - { - fn calculateWithdrawalRoot( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::calculateWithdrawalRoot) - } - calculateWithdrawalRoot - }, - { - fn completeQueuedWithdrawal( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::completeQueuedWithdrawal) - } - completeQueuedWithdrawal - }, - { - fn setMinWithdrawalDelayBlocks( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IDelegationManagerCalls::setMinWithdrawalDelayBlocks) - } - setMinWithdrawalDelayBlocks - }, - { - fn delegatedTo( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::delegatedTo) - } - delegatedTo - }, - { - fn isOperator( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IDelegationManagerCalls::isOperator) - } - isOperator - }, - { - fn operatorShares( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::operatorShares) - } - operatorShares - }, - { - fn delegateToBySignature( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::delegateToBySignature) - } - delegateToBySignature - }, - { - fn getOperatorShares( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::getOperatorShares) - } - getOperatorShares - }, - { - fn beaconChainETHStrategy( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::beaconChainETHStrategy) - } - beaconChainETHStrategy - }, - { - fn updateOperatorMetadataURI( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::updateOperatorMetadataURI) - } - updateOperatorMetadataURI - }, - { - fn cumulativeWithdrawalsQueued( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IDelegationManagerCalls::cumulativeWithdrawalsQueued) - } - cumulativeWithdrawalsQueued - }, - { - fn delegationApproverSaltIsSpent( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IDelegationManagerCalls::delegationApproverSaltIsSpent) - } - delegationApproverSaltIsSpent - }, - { - fn minWithdrawalDelayBlocks( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::minWithdrawalDelayBlocks) - } - minWithdrawalDelayBlocks - }, - { - fn strategyWithdrawalDelayBlocks( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IDelegationManagerCalls::strategyWithdrawalDelayBlocks) - } - strategyWithdrawalDelayBlocks - }, - { - fn operatorDetails( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::operatorDetails) - } - operatorDetails - }, - { - fn calculateStakerDelegationDigestHash( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - IDelegationManagerCalls::calculateStakerDelegationDigestHash, - ) - } - calculateStakerDelegationDigestHash - }, - { - fn getDelegatableShares( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::getDelegatableShares) - } - getDelegatableShares - }, - { - fn undelegate( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IDelegationManagerCalls::undelegate) - } - undelegate - }, - { - fn delegateTo( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IDelegationManagerCalls::delegateTo) - } - delegateTo - }, - { - fn modifyOperatorDetails( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::modifyOperatorDetails) - } - modifyOperatorDetails - }, - { - fn domainSeparator( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IDelegationManagerCalls::domainSeparator) - } - domainSeparator - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::DELEGATION_APPROVAL_TYPEHASH(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::DOMAIN_TYPEHASH(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::STAKER_DELEGATION_TYPEHASH(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::beaconChainETHStrategy(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::calculateCurrentStakerDelegationDigestHash(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::calculateDelegationApprovalDigestHash(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::calculateStakerDelegationDigestHash(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::calculateWithdrawalRoot(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::completeQueuedWithdrawal(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::completeQueuedWithdrawals(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::cumulativeWithdrawalsQueued(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::decreaseDelegatedShares(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::delegateTo(inner) => { - ::abi_encoded_size(inner) - } - Self::delegateToBySignature(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::delegatedTo(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::delegationApprover(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::delegationApproverSaltIsSpent(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::domainSeparator(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getDelegatableShares(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorShares(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getWithdrawalDelay(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::increaseDelegatedShares(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::isDelegated(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::isOperator(inner) => { - ::abi_encoded_size(inner) - } - Self::minWithdrawalDelayBlocks(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::modifyOperatorDetails(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::operatorDetails(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::operatorShares(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::queueWithdrawals(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::registerAsOperator(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::setMinWithdrawalDelayBlocks(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::setStrategyWithdrawalDelayBlocks(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::stakerNonce(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::stakerOptOutWindowBlocks(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::strategyWithdrawalDelayBlocks(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::undelegate(inner) => { - ::abi_encoded_size(inner) - } - Self::updateOperatorMetadataURI(inner) => { - ::abi_encoded_size( - inner, - ) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::DELEGATION_APPROVAL_TYPEHASH(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::DOMAIN_TYPEHASH(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::STAKER_DELEGATION_TYPEHASH(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::beaconChainETHStrategy(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::calculateCurrentStakerDelegationDigestHash(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::calculateDelegationApprovalDigestHash(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::calculateStakerDelegationDigestHash(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::calculateWithdrawalRoot(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::completeQueuedWithdrawal(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::completeQueuedWithdrawals(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::cumulativeWithdrawalsQueued(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::decreaseDelegatedShares(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::delegateTo(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::delegateToBySignature(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::delegatedTo(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::delegationApprover(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::delegationApproverSaltIsSpent(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::domainSeparator(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getDelegatableShares(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getOperatorShares(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getWithdrawalDelay(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::increaseDelegatedShares(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::isDelegated(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::isOperator(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::minWithdrawalDelayBlocks(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::modifyOperatorDetails(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::operatorDetails(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::operatorShares(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::queueWithdrawals(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::registerAsOperator(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::setMinWithdrawalDelayBlocks(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::setStrategyWithdrawalDelayBlocks(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::stakerNonce(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::stakerOptOutWindowBlocks(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::strategyWithdrawalDelayBlocks(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::undelegate(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::updateOperatorMetadataURI(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - } - } - } - ///Container for all the [`IDelegationManager`](self) events. - pub enum IDelegationManagerEvents { - MinWithdrawalDelayBlocksSet(MinWithdrawalDelayBlocksSet), - OperatorDetailsModified(OperatorDetailsModified), - OperatorMetadataURIUpdated(OperatorMetadataURIUpdated), - OperatorRegistered(OperatorRegistered), - OperatorSharesDecreased(OperatorSharesDecreased), - OperatorSharesIncreased(OperatorSharesIncreased), - StakerDelegated(StakerDelegated), - StakerForceUndelegated(StakerForceUndelegated), - StakerUndelegated(StakerUndelegated), - StrategyWithdrawalDelayBlocksSet(StrategyWithdrawalDelayBlocksSet), - WithdrawalCompleted(WithdrawalCompleted), - WithdrawalQueued(WithdrawalQueued), - } - #[automatically_derived] - impl IDelegationManagerEvents { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[ - [ - 2u8, 169u8, 25u8, 237u8, 14u8, 42u8, 202u8, 209u8, 221u8, 144u8, 241u8, 126u8, - 242u8, 250u8, 74u8, 229u8, 70u8, 46u8, 225u8, 51u8, 145u8, 112u8, 3u8, 74u8, 133u8, - 49u8, 204u8, 164u8, 182u8, 112u8, 128u8, 144u8, - ], - [ - 14u8, 126u8, 250u8, 115u8, 142u8, 139u8, 12u8, 230u8, 55u8, 106u8, 12u8, 26u8, - 244u8, 113u8, 101u8, 85u8, 64u8, 210u8, 233u8, 168u8, 22u8, 71u8, 215u8, 176u8, - 158u8, 216u8, 35u8, 1u8, 132u8, 38u8, 87u8, 109u8, - ], - [ - 30u8, 192u8, 66u8, 201u8, 101u8, 226u8, 237u8, 215u8, 16u8, 123u8, 81u8, 24u8, - 142u8, 224u8, 243u8, 131u8, 226u8, 46u8, 118u8, 23u8, 144u8, 65u8, 171u8, 58u8, - 157u8, 24u8, 255u8, 21u8, 20u8, 5u8, 22u8, 108u8, - ], - [ - 105u8, 9u8, 96u8, 0u8, 55u8, 183u8, 93u8, 123u8, 71u8, 51u8, 174u8, 221u8, 129u8, - 84u8, 66u8, 181u8, 236u8, 1u8, 138u8, 130u8, 119u8, 81u8, 200u8, 50u8, 170u8, - 255u8, 100u8, 235u8, 165u8, 214u8, 210u8, 221u8, - ], - [ - 142u8, 132u8, 133u8, 88u8, 58u8, 35u8, 16u8, 212u8, 31u8, 124u8, 130u8, 185u8, - 66u8, 125u8, 11u8, 212u8, 155u8, 173u8, 116u8, 187u8, 156u8, 255u8, 157u8, 52u8, - 2u8, 162u8, 157u8, 143u8, 155u8, 40u8, 160u8, 226u8, - ], - [ - 144u8, 9u8, 171u8, 21u8, 62u8, 128u8, 20u8, 251u8, 251u8, 2u8, 242u8, 33u8, 127u8, - 92u8, 222u8, 122u8, 167u8, 249u8, 173u8, 115u8, 74u8, 232u8, 92u8, 163u8, 238u8, - 63u8, 76u8, 162u8, 253u8, 212u8, 153u8, 249u8, - ], - [ - 175u8, 160u8, 3u8, 205u8, 118u8, 248u8, 127u8, 249u8, 214u8, 43u8, 53u8, 190u8, - 234u8, 136u8, 153u8, 32u8, 243u8, 60u8, 12u8, 66u8, 184u8, 212u8, 91u8, 116u8, - 149u8, 77u8, 97u8, 213u8, 15u8, 75u8, 107u8, 105u8, - ], - [ - 195u8, 238u8, 159u8, 46u8, 95u8, 218u8, 152u8, 232u8, 6u8, 106u8, 31u8, 116u8, - 91u8, 45u8, 249u8, 40u8, 95u8, 65u8, 111u8, 233u8, 140u8, 242u8, 85u8, 156u8, - 210u8, 20u8, 132u8, 179u8, 216u8, 116u8, 51u8, 4u8, - ], - [ - 201u8, 112u8, 152u8, 194u8, 246u8, 88u8, 128u8, 11u8, 77u8, 242u8, 144u8, 1u8, - 82u8, 127u8, 115u8, 36u8, 188u8, 223u8, 252u8, 246u8, 232u8, 117u8, 26u8, 105u8, - 154u8, 185u8, 32u8, 161u8, 236u8, 237u8, 91u8, 29u8, - ], - [ - 240u8, 237u8, 223u8, 7u8, 230u8, 234u8, 20u8, 243u8, 136u8, 180u8, 126u8, 30u8, - 148u8, 160u8, 244u8, 100u8, 236u8, 189u8, 158u8, 237u8, 65u8, 113u8, 19u8, 14u8, - 15u8, 192u8, 233u8, 159u8, 180u8, 3u8, 10u8, 138u8, - ], - [ - 254u8, 190u8, 92u8, 210u8, 75u8, 44u8, 188u8, 123u8, 6u8, 91u8, 157u8, 15u8, 222u8, - 185u8, 4u8, 70u8, 30u8, 74u8, 252u8, 255u8, 87u8, 221u8, 87u8, 172u8, 218u8, 30u8, - 120u8, 50u8, 3u8, 27u8, 167u8, 172u8, - ], - [ - 254u8, 227u8, 9u8, 102u8, 162u8, 86u8, 183u8, 30u8, 20u8, 188u8, 14u8, 191u8, - 201u8, 67u8, 21u8, 226u8, 142u8, 244u8, 169u8, 122u8, 113u8, 49u8, 169u8, 226u8, - 183u8, 163u8, 16u8, 167u8, 58u8, 244u8, 70u8, 118u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for IDelegationManagerEvents { - const NAME: &'static str = "IDelegationManagerEvents"; - const COUNT: usize = 12usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some( - ::SIGNATURE_HASH, - ) => ::decode_raw_log( - topics, data, validate, - ) - .map(Self::MinWithdrawalDelayBlocksSet), - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorDetailsModified) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorMetadataURIUpdated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorRegistered) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorSharesDecreased) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorSharesIncreased) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::StakerDelegated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::StakerForceUndelegated) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::StakerUndelegated) - } - Some( - ::SIGNATURE_HASH, - ) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::StrategyWithdrawalDelayBlocksSet) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::WithdrawalCompleted) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::WithdrawalQueued) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for IDelegationManagerEvents { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::MinWithdrawalDelayBlocksSet(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorDetailsModified(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorMetadataURIUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorRegistered(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorSharesDecreased(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorSharesIncreased(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::StakerDelegated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::StakerForceUndelegated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::StakerUndelegated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::StrategyWithdrawalDelayBlocksSet(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::WithdrawalCompleted(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::WithdrawalQueued(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::MinWithdrawalDelayBlocksSet(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorDetailsModified(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorMetadataURIUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorRegistered(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorSharesDecreased(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorSharesIncreased(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::StakerDelegated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::StakerForceUndelegated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::StakerUndelegated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::StrategyWithdrawalDelayBlocksSet(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::WithdrawalCompleted(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::WithdrawalQueued(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IDelegationManager`](self) contract instance. - - See the [wrapper's documentation](`IDelegationManagerInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> IDelegationManagerInstance { - IDelegationManagerInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - IDelegationManagerInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - IDelegationManagerInstance::::deploy_builder(provider) - } - /**A [`IDelegationManager`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IDelegationManager`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct IDelegationManagerInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IDelegationManagerInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IDelegationManagerInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IDelegationManagerInstance - { - /**Creates a new wrapper around an on-chain [`IDelegationManager`](self) contract instance. - - See the [wrapper's documentation](`IDelegationManagerInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl IDelegationManagerInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IDelegationManagerInstance { - IDelegationManagerInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IDelegationManagerInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`DELEGATION_APPROVAL_TYPEHASH`] function. - pub fn DELEGATION_APPROVAL_TYPEHASH( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&DELEGATION_APPROVAL_TYPEHASHCall {}) - } - ///Creates a new call builder for the [`DOMAIN_TYPEHASH`] function. - pub fn DOMAIN_TYPEHASH( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&DOMAIN_TYPEHASHCall {}) - } - ///Creates a new call builder for the [`STAKER_DELEGATION_TYPEHASH`] function. - pub fn STAKER_DELEGATION_TYPEHASH( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&STAKER_DELEGATION_TYPEHASHCall {}) - } - ///Creates a new call builder for the [`beaconChainETHStrategy`] function. - pub fn beaconChainETHStrategy( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&beaconChainETHStrategyCall {}) - } - ///Creates a new call builder for the [`calculateCurrentStakerDelegationDigestHash`] function. - pub fn calculateCurrentStakerDelegationDigestHash( - &self, - staker: alloy::sol_types::private::Address, - operator: alloy::sol_types::private::Address, - expiry: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder - { - self.call_builder(&calculateCurrentStakerDelegationDigestHashCall { - staker, - operator, - expiry, - }) - } - ///Creates a new call builder for the [`calculateDelegationApprovalDigestHash`] function. - pub fn calculateDelegationApprovalDigestHash( - &self, - staker: alloy::sol_types::private::Address, - operator: alloy::sol_types::private::Address, - _delegationApprover: alloy::sol_types::private::Address, - approverSalt: alloy::sol_types::private::FixedBytes<32>, - expiry: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder - { - self.call_builder(&calculateDelegationApprovalDigestHashCall { - staker, - operator, - _delegationApprover, - approverSalt, - expiry, - }) - } - ///Creates a new call builder for the [`calculateStakerDelegationDigestHash`] function. - pub fn calculateStakerDelegationDigestHash( - &self, - staker: alloy::sol_types::private::Address, - _stakerNonce: alloy::sol_types::private::primitives::aliases::U256, - operator: alloy::sol_types::private::Address, - expiry: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder - { - self.call_builder(&calculateStakerDelegationDigestHashCall { - staker, - _stakerNonce, - operator, - expiry, - }) - } - ///Creates a new call builder for the [`calculateWithdrawalRoot`] function. - pub fn calculateWithdrawalRoot( - &self, - withdrawal: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&calculateWithdrawalRootCall { withdrawal }) - } - ///Creates a new call builder for the [`completeQueuedWithdrawal`] function. - pub fn completeQueuedWithdrawal( - &self, - withdrawal: ::RustType, - tokens: alloy::sol_types::private::Vec, - middlewareTimesIndex: alloy::sol_types::private::primitives::aliases::U256, - receiveAsTokens: bool, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&completeQueuedWithdrawalCall { - withdrawal, - tokens, - middlewareTimesIndex, - receiveAsTokens, - }) - } - ///Creates a new call builder for the [`completeQueuedWithdrawals`] function. - pub fn completeQueuedWithdrawals( - &self, - withdrawals: alloy::sol_types::private::Vec< - ::RustType, - >, - tokens: alloy::sol_types::private::Vec< - alloy::sol_types::private::Vec, - >, - middlewareTimesIndexes: alloy::sol_types::private::Vec< - alloy::sol_types::private::primitives::aliases::U256, - >, - receiveAsTokens: alloy::sol_types::private::Vec, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&completeQueuedWithdrawalsCall { - withdrawals, - tokens, - middlewareTimesIndexes, - receiveAsTokens, - }) - } - ///Creates a new call builder for the [`cumulativeWithdrawalsQueued`] function. - pub fn cumulativeWithdrawalsQueued( - &self, - staker: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&cumulativeWithdrawalsQueuedCall { staker }) - } - ///Creates a new call builder for the [`decreaseDelegatedShares`] function. - pub fn decreaseDelegatedShares( - &self, - staker: alloy::sol_types::private::Address, - strategy: alloy::sol_types::private::Address, - shares: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&decreaseDelegatedSharesCall { staker, strategy, shares }) - } - ///Creates a new call builder for the [`delegateTo`] function. - pub fn delegateTo( - &self, - operator: alloy::sol_types::private::Address, - approverSignatureAndExpiry: ::RustType, - approverSalt: alloy::sol_types::private::FixedBytes<32>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&delegateToCall { - operator, - approverSignatureAndExpiry, - approverSalt, - }) - } - ///Creates a new call builder for the [`delegateToBySignature`] function. - pub fn delegateToBySignature( - &self, - staker: alloy::sol_types::private::Address, - operator: alloy::sol_types::private::Address, - stakerSignatureAndExpiry: ::RustType, - approverSignatureAndExpiry: ::RustType, - approverSalt: alloy::sol_types::private::FixedBytes<32>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&delegateToBySignatureCall { - staker, - operator, - stakerSignatureAndExpiry, - approverSignatureAndExpiry, - approverSalt, - }) - } - ///Creates a new call builder for the [`delegatedTo`] function. - pub fn delegatedTo( - &self, - staker: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&delegatedToCall { staker }) - } - ///Creates a new call builder for the [`delegationApprover`] function. - pub fn delegationApprover( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&delegationApproverCall { operator }) - } - ///Creates a new call builder for the [`delegationApproverSaltIsSpent`] function. - pub fn delegationApproverSaltIsSpent( - &self, - _delegationApprover: alloy::sol_types::private::Address, - salt: alloy::sol_types::private::FixedBytes<32>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&delegationApproverSaltIsSpentCall { _delegationApprover, salt }) - } - ///Creates a new call builder for the [`domainSeparator`] function. - pub fn domainSeparator( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&domainSeparatorCall {}) - } - ///Creates a new call builder for the [`getDelegatableShares`] function. - pub fn getDelegatableShares( - &self, - staker: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getDelegatableSharesCall { staker }) - } - ///Creates a new call builder for the [`getOperatorShares`] function. - pub fn getOperatorShares( - &self, - operator: alloy::sol_types::private::Address, - strategies: alloy::sol_types::private::Vec, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorSharesCall { operator, strategies }) - } - ///Creates a new call builder for the [`getWithdrawalDelay`] function. - pub fn getWithdrawalDelay( - &self, - strategies: alloy::sol_types::private::Vec, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getWithdrawalDelayCall { strategies }) - } - ///Creates a new call builder for the [`increaseDelegatedShares`] function. - pub fn increaseDelegatedShares( - &self, - staker: alloy::sol_types::private::Address, - strategy: alloy::sol_types::private::Address, - shares: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&increaseDelegatedSharesCall { staker, strategy, shares }) - } - ///Creates a new call builder for the [`isDelegated`] function. - pub fn isDelegated( - &self, - staker: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&isDelegatedCall { staker }) - } - ///Creates a new call builder for the [`isOperator`] function. - pub fn isOperator( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&isOperatorCall { operator }) - } - ///Creates a new call builder for the [`minWithdrawalDelayBlocks`] function. - pub fn minWithdrawalDelayBlocks( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&minWithdrawalDelayBlocksCall {}) - } - ///Creates a new call builder for the [`modifyOperatorDetails`] function. - pub fn modifyOperatorDetails( - &self, - newOperatorDetails: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&modifyOperatorDetailsCall { newOperatorDetails }) - } - ///Creates a new call builder for the [`operatorDetails`] function. - pub fn operatorDetails( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&operatorDetailsCall { operator }) - } - ///Creates a new call builder for the [`operatorShares`] function. - pub fn operatorShares( - &self, - operator: alloy::sol_types::private::Address, - strategy: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&operatorSharesCall { operator, strategy }) - } - ///Creates a new call builder for the [`queueWithdrawals`] function. - pub fn queueWithdrawals( - &self, - queuedWithdrawalParams: alloy::sol_types::private::Vec< - ::RustType, - >, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&queueWithdrawalsCall { queuedWithdrawalParams }) - } - ///Creates a new call builder for the [`registerAsOperator`] function. - pub fn registerAsOperator( - &self, - registeringOperatorDetails: ::RustType, - metadataURI: alloy::sol_types::private::String, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(®isterAsOperatorCall { registeringOperatorDetails, metadataURI }) - } - ///Creates a new call builder for the [`setMinWithdrawalDelayBlocks`] function. - pub fn setMinWithdrawalDelayBlocks( - &self, - newMinWithdrawalDelayBlocks: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setMinWithdrawalDelayBlocksCall { newMinWithdrawalDelayBlocks }) - } - ///Creates a new call builder for the [`setStrategyWithdrawalDelayBlocks`] function. - pub fn setStrategyWithdrawalDelayBlocks( - &self, - strategies: alloy::sol_types::private::Vec, - withdrawalDelayBlocks: alloy::sol_types::private::Vec< - alloy::sol_types::private::primitives::aliases::U256, - >, - ) -> alloy_contract::SolCallBuilder - { - self.call_builder(&setStrategyWithdrawalDelayBlocksCall { - strategies, - withdrawalDelayBlocks, - }) - } - ///Creates a new call builder for the [`stakerNonce`] function. - pub fn stakerNonce( - &self, - staker: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&stakerNonceCall { staker }) - } - ///Creates a new call builder for the [`stakerOptOutWindowBlocks`] function. - pub fn stakerOptOutWindowBlocks( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&stakerOptOutWindowBlocksCall { operator }) - } - ///Creates a new call builder for the [`strategyWithdrawalDelayBlocks`] function. - pub fn strategyWithdrawalDelayBlocks( - &self, - strategy: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&strategyWithdrawalDelayBlocksCall { strategy }) - } - ///Creates a new call builder for the [`undelegate`] function. - pub fn undelegate( - &self, - staker: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&undelegateCall { staker }) - } - ///Creates a new call builder for the [`updateOperatorMetadataURI`] function. - pub fn updateOperatorMetadataURI( - &self, - metadataURI: alloy::sol_types::private::String, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&updateOperatorMetadataURICall { metadataURI }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IDelegationManagerInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`MinWithdrawalDelayBlocksSet`] event. - pub fn MinWithdrawalDelayBlocksSet_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorDetailsModified`] event. - pub fn OperatorDetailsModified_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorMetadataURIUpdated`] event. - pub fn OperatorMetadataURIUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorRegistered`] event. - pub fn OperatorRegistered_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorSharesDecreased`] event. - pub fn OperatorSharesDecreased_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorSharesIncreased`] event. - pub fn OperatorSharesIncreased_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`StakerDelegated`] event. - pub fn StakerDelegated_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`StakerForceUndelegated`] event. - pub fn StakerForceUndelegated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`StakerUndelegated`] event. - pub fn StakerUndelegated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`StrategyWithdrawalDelayBlocksSet`] event. - pub fn StrategyWithdrawalDelayBlocksSet_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`WithdrawalCompleted`] event. - pub fn WithdrawalCompleted_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`WithdrawalQueued`] event. - pub fn WithdrawalQueued_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/ierc1271upgradeable.rs b/crates/bindings/src/ierc1271upgradeable.rs deleted file mode 100644 index 25a4f491..00000000 --- a/crates/bindings/src/ierc1271upgradeable.rs +++ /dev/null @@ -1,457 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface IERC1271Upgradeable { - function isValidSignature(bytes32 hash, bytes memory signature) external view returns (bytes4 magicValue); -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "isValidSignature", - "inputs": [ - { - "name": "hash", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "signature", - "type": "bytes", - "internalType": "bytes" - } - ], - "outputs": [ - { - "name": "magicValue", - "type": "bytes4", - "internalType": "bytes4" - } - ], - "stateMutability": "view" - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IERC1271Upgradeable { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**Function with signature `isValidSignature(bytes32,bytes)` and selector `0x1626ba7e`. - ```solidity - function isValidSignature(bytes32 hash, bytes memory signature) external view returns (bytes4 magicValue); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isValidSignatureCall { - pub hash: alloy::sol_types::private::FixedBytes<32>, - pub signature: alloy::sol_types::private::Bytes, - } - ///Container type for the return parameters of the [`isValidSignature(bytes32,bytes)`](isValidSignatureCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isValidSignatureReturn { - pub magicValue: alloy::sol_types::private::FixedBytes<4>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Bytes); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::FixedBytes<32>, alloy::sol_types::private::Bytes); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isValidSignatureCall) -> Self { - (value.hash, value.signature) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isValidSignatureCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { hash: tuple.0, signature: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<4>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isValidSignatureReturn) -> Self { - (value.magicValue,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isValidSignatureReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { magicValue: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for isValidSignatureCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Bytes); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = isValidSignatureReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "isValidSignature(bytes32,bytes)"; - const SELECTOR: [u8; 4] = [22u8, 38u8, 186u8, 126u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.hash), - ::tokenize( - &self.signature, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`IERC1271Upgradeable`](self) function calls. - pub enum IERC1271UpgradeableCalls { - isValidSignature(isValidSignatureCall), - } - #[automatically_derived] - impl IERC1271UpgradeableCalls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[[22u8, 38u8, 186u8, 126u8]]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for IERC1271UpgradeableCalls { - const NAME: &'static str = "IERC1271UpgradeableCalls"; - const MIN_DATA_LENGTH: usize = 96usize; - const COUNT: usize = 1usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::isValidSignature(_) => { - ::SELECTOR - } - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn( - &[u8], - bool, - ) - -> alloy_sol_types::Result] = &[{ - fn isValidSignature( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC1271UpgradeableCalls::isValidSignature) - } - isValidSignature - }]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::isValidSignature(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::isValidSignature(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IERC1271Upgradeable`](self) contract instance. - - See the [wrapper's documentation](`IERC1271UpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> IERC1271UpgradeableInstance { - IERC1271UpgradeableInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - IERC1271UpgradeableInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - IERC1271UpgradeableInstance::::deploy_builder(provider) - } - /**A [`IERC1271Upgradeable`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IERC1271Upgradeable`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct IERC1271UpgradeableInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IERC1271UpgradeableInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IERC1271UpgradeableInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC1271UpgradeableInstance - { - /**Creates a new wrapper around an on-chain [`IERC1271Upgradeable`](self) contract instance. - - See the [wrapper's documentation](`IERC1271UpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl IERC1271UpgradeableInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IERC1271UpgradeableInstance { - IERC1271UpgradeableInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC1271UpgradeableInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`isValidSignature`] function. - pub fn isValidSignature( - &self, - hash: alloy::sol_types::private::FixedBytes<32>, - signature: alloy::sol_types::private::Bytes, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&isValidSignatureCall { hash, signature }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC1271UpgradeableInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - } -} diff --git a/crates/bindings/src/ierc165.rs b/crates/bindings/src/ierc165.rs deleted file mode 100644 index c1a74703..00000000 --- a/crates/bindings/src/ierc165.rs +++ /dev/null @@ -1,436 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface IERC165 { - function supportsInterface(bytes4 interfaceID) external view returns (bool); -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "supportsInterface", - "inputs": [ - { - "name": "interfaceID", - "type": "bytes4", - "internalType": "bytes4" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IERC165 { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**Function with signature `supportsInterface(bytes4)` and selector `0x01ffc9a7`. - ```solidity - function supportsInterface(bytes4 interfaceID) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct supportsInterfaceCall { - pub interfaceID: alloy::sol_types::private::FixedBytes<4>, - } - ///Container type for the return parameters of the [`supportsInterface(bytes4)`](supportsInterfaceCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct supportsInterfaceReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<4>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: supportsInterfaceCall) -> Self { - (value.interfaceID,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for supportsInterfaceCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { interfaceID: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: supportsInterfaceReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for supportsInterfaceReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for supportsInterfaceCall { - type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = supportsInterfaceReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "supportsInterface(bytes4)"; - const SELECTOR: [u8; 4] = [1u8, 255u8, 201u8, 167u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.interfaceID, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`IERC165`](self) function calls. - pub enum IERC165Calls { - supportsInterface(supportsInterfaceCall), - } - #[automatically_derived] - impl IERC165Calls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[[1u8, 255u8, 201u8, 167u8]]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for IERC165Calls { - const NAME: &'static str = "IERC165Calls"; - const MIN_DATA_LENGTH: usize = 32usize; - const COUNT: usize = 1usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::supportsInterface(_) => { - ::SELECTOR - } - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn(&[u8], bool) -> alloy_sol_types::Result] = &[{ - fn supportsInterface( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC165Calls::supportsInterface) - } - supportsInterface - }]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::supportsInterface(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::supportsInterface(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IERC165`](self) contract instance. - - See the [wrapper's documentation](`IERC165Instance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> IERC165Instance { - IERC165Instance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - IERC165Instance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - IERC165Instance::::deploy_builder(provider) - } - /**A [`IERC165`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IERC165`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct IERC165Instance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IERC165Instance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IERC165Instance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC165Instance - { - /**Creates a new wrapper around an on-chain [`IERC165`](self) contract instance. - - See the [wrapper's documentation](`IERC165Instance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy(provider: P) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl IERC165Instance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IERC165Instance { - IERC165Instance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC165Instance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`supportsInterface`] function. - pub fn supportsInterface( - &self, - interfaceID: alloy::sol_types::private::FixedBytes<4>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&supportsInterfaceCall { interfaceID }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC165Instance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - } -} diff --git a/crates/bindings/src/ierc20.rs b/crates/bindings/src/ierc20.rs deleted file mode 100644 index 52e48394..00000000 --- a/crates/bindings/src/ierc20.rs +++ /dev/null @@ -1,1620 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface IERC20 { - event Approval(address indexed owner, address indexed spender, uint256 value); - event Transfer(address indexed from, address indexed to, uint256 value); - - function allowance(address owner, address spender) external view returns (uint256); - function approve(address spender, uint256 amount) external returns (bool); - function balanceOf(address account) external view returns (uint256); - function totalSupply() external view returns (uint256); - function transfer(address to, uint256 amount) external returns (bool); - function transferFrom(address from, address to, uint256 amount) external returns (bool); -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "allowance", - "inputs": [ - { - "name": "owner", - "type": "address", - "internalType": "address" - }, - { - "name": "spender", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "approve", - "inputs": [ - { - "name": "spender", - "type": "address", - "internalType": "address" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "balanceOf", - "inputs": [ - { - "name": "account", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "totalSupply", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "transfer", - "inputs": [ - { - "name": "to", - "type": "address", - "internalType": "address" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "transferFrom", - "inputs": [ - { - "name": "from", - "type": "address", - "internalType": "address" - }, - { - "name": "to", - "type": "address", - "internalType": "address" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "event", - "name": "Approval", - "inputs": [ - { - "name": "owner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "spender", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "value", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "Transfer", - "inputs": [ - { - "name": "from", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "to", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "value", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IERC20 { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**Event with signature `Approval(address,address,uint256)` and selector `0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925`. - ```solidity - event Approval(address indexed owner, address indexed spender, uint256 value); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Approval { - #[allow(missing_docs)] - pub owner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub spender: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub value: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Approval { - type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "Approval(address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 140u8, 91u8, 225u8, 229u8, 235u8, 236u8, 125u8, 91u8, 209u8, 79u8, 113u8, 66u8, - 125u8, 30u8, 132u8, 243u8, 221u8, 3u8, 20u8, 192u8, 247u8, 178u8, 41u8, 30u8, - 91u8, 32u8, 10u8, 200u8, 199u8, 195u8, 185u8, 37u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { owner: topics.1, spender: topics.2, value: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.value, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.owner.clone(), self.spender.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.owner, - ); - out[2usize] = ::encode_topic( - &self.spender, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Approval { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Approval> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Approval) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `Transfer(address,address,uint256)` and selector `0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef`. - ```solidity - event Transfer(address indexed from, address indexed to, uint256 value); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Transfer { - #[allow(missing_docs)] - pub from: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub to: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub value: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Transfer { - type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "Transfer(address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 221u8, 242u8, 82u8, 173u8, 27u8, 226u8, 200u8, 155u8, 105u8, 194u8, 176u8, - 104u8, 252u8, 55u8, 141u8, 170u8, 149u8, 43u8, 167u8, 241u8, 99u8, 196u8, - 161u8, 22u8, 40u8, 245u8, 90u8, 77u8, 245u8, 35u8, 179u8, 239u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { from: topics.1, to: topics.2, value: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.value, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.from.clone(), self.to.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.from, - ); - out[2usize] = ::encode_topic( - &self.to, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Transfer { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Transfer> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Transfer) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Function with signature `allowance(address,address)` and selector `0xdd62ed3e`. - ```solidity - function allowance(address owner, address spender) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct allowanceCall { - pub owner: alloy::sol_types::private::Address, - pub spender: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`allowance(address,address)`](allowanceCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct allowanceReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Address, alloy::sol_types::private::Address); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: allowanceCall) -> Self { - (value.owner, value.spender) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for allowanceCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { owner: tuple.0, spender: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: allowanceReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for allowanceReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for allowanceCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = allowanceReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "allowance(address,address)"; - const SELECTOR: [u8; 4] = [221u8, 98u8, 237u8, 62u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.owner, - ), - ::tokenize( - &self.spender, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `approve(address,uint256)` and selector `0x095ea7b3`. - ```solidity - function approve(address spender, uint256 amount) external returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct approveCall { - pub spender: alloy::sol_types::private::Address, - pub amount: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`approve(address,uint256)`](approveCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct approveReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: approveCall) -> Self { - (value.spender, value.amount) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for approveCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { spender: tuple.0, amount: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: approveReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for approveReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for approveCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = approveReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "approve(address,uint256)"; - const SELECTOR: [u8; 4] = [9u8, 94u8, 167u8, 179u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.spender, - ), - as alloy_sol_types::SolType>::tokenize( - &self.amount, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `balanceOf(address)` and selector `0x70a08231`. - ```solidity - function balanceOf(address account) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct balanceOfCall { - pub account: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`balanceOf(address)`](balanceOfCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct balanceOfReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: balanceOfCall) -> Self { - (value.account,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for balanceOfCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { account: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: balanceOfReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for balanceOfReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for balanceOfCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = balanceOfReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "balanceOf(address)"; - const SELECTOR: [u8; 4] = [112u8, 160u8, 130u8, 49u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.account, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `totalSupply()` and selector `0x18160ddd`. - ```solidity - function totalSupply() external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct totalSupplyCall {} - ///Container type for the return parameters of the [`totalSupply()`](totalSupplyCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct totalSupplyReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: totalSupplyCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for totalSupplyCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: totalSupplyReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for totalSupplyReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for totalSupplyCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = totalSupplyReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "totalSupply()"; - const SELECTOR: [u8; 4] = [24u8, 22u8, 13u8, 221u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `transfer(address,uint256)` and selector `0xa9059cbb`. - ```solidity - function transfer(address to, uint256 amount) external returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferCall { - pub to: alloy::sol_types::private::Address, - pub amount: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`transfer(address,uint256)`](transferCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferCall) -> Self { - (value.to, value.amount) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { to: tuple.0, amount: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for transferCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = transferReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "transfer(address,uint256)"; - const SELECTOR: [u8; 4] = [169u8, 5u8, 156u8, 187u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.to, - ), - as alloy_sol_types::SolType>::tokenize( - &self.amount, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `transferFrom(address,address,uint256)` and selector `0x23b872dd`. - ```solidity - function transferFrom(address from, address to, uint256 amount) external returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferFromCall { - pub from: alloy::sol_types::private::Address, - pub to: alloy::sol_types::private::Address, - pub amount: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`transferFrom(address,address,uint256)`](transferFromCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferFromReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferFromCall) -> Self { - (value.from, value.to, value.amount) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferFromCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { from: tuple.0, to: tuple.1, amount: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferFromReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferFromReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for transferFromCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = transferFromReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "transferFrom(address,address,uint256)"; - const SELECTOR: [u8; 4] = [35u8, 184u8, 114u8, 221u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.from, - ), - ::tokenize( - &self.to, - ), - as alloy_sol_types::SolType>::tokenize( - &self.amount, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`IERC20`](self) function calls. - pub enum IERC20Calls { - allowance(allowanceCall), - approve(approveCall), - balanceOf(balanceOfCall), - totalSupply(totalSupplyCall), - transfer(transferCall), - transferFrom(transferFromCall), - } - #[automatically_derived] - impl IERC20Calls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [9u8, 94u8, 167u8, 179u8], - [24u8, 22u8, 13u8, 221u8], - [35u8, 184u8, 114u8, 221u8], - [112u8, 160u8, 130u8, 49u8], - [169u8, 5u8, 156u8, 187u8], - [221u8, 98u8, 237u8, 62u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for IERC20Calls { - const NAME: &'static str = "IERC20Calls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 6usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::allowance(_) => ::SELECTOR, - Self::approve(_) => ::SELECTOR, - Self::balanceOf(_) => ::SELECTOR, - Self::totalSupply(_) => ::SELECTOR, - Self::transfer(_) => ::SELECTOR, - Self::transferFrom(_) => ::SELECTOR, - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn(&[u8], bool) -> alloy_sol_types::Result] = &[ - { - fn approve( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC20Calls::approve) - } - approve - }, - { - fn totalSupply( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC20Calls::totalSupply) - } - totalSupply - }, - { - fn transferFrom( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC20Calls::transferFrom) - } - transferFrom - }, - { - fn balanceOf( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC20Calls::balanceOf) - } - balanceOf - }, - { - fn transfer( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC20Calls::transfer) - } - transfer - }, - { - fn allowance( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC20Calls::allowance) - } - allowance - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::allowance(inner) => { - ::abi_encoded_size(inner) - } - Self::approve(inner) => { - ::abi_encoded_size(inner) - } - Self::balanceOf(inner) => { - ::abi_encoded_size(inner) - } - Self::totalSupply(inner) => { - ::abi_encoded_size(inner) - } - Self::transfer(inner) => { - ::abi_encoded_size(inner) - } - Self::transferFrom(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::allowance(inner) => { - ::abi_encode_raw(inner, out) - } - Self::approve(inner) => { - ::abi_encode_raw(inner, out) - } - Self::balanceOf(inner) => { - ::abi_encode_raw(inner, out) - } - Self::totalSupply(inner) => { - ::abi_encode_raw(inner, out) - } - Self::transfer(inner) => { - ::abi_encode_raw(inner, out) - } - Self::transferFrom(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - ///Container for all the [`IERC20`](self) events. - pub enum IERC20Events { - Approval(Approval), - Transfer(Transfer), - } - #[automatically_derived] - impl IERC20Events { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[ - [ - 140u8, 91u8, 225u8, 229u8, 235u8, 236u8, 125u8, 91u8, 209u8, 79u8, 113u8, 66u8, - 125u8, 30u8, 132u8, 243u8, 221u8, 3u8, 20u8, 192u8, 247u8, 178u8, 41u8, 30u8, 91u8, - 32u8, 10u8, 200u8, 199u8, 195u8, 185u8, 37u8, - ], - [ - 221u8, 242u8, 82u8, 173u8, 27u8, 226u8, 200u8, 155u8, 105u8, 194u8, 176u8, 104u8, - 252u8, 55u8, 141u8, 170u8, 149u8, 43u8, 167u8, 241u8, 99u8, 196u8, 161u8, 22u8, - 40u8, 245u8, 90u8, 77u8, 245u8, 35u8, 179u8, 239u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for IERC20Events { - const NAME: &'static str = "IERC20Events"; - const COUNT: usize = 2usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log(topics, data, validate) - .map(Self::Approval) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log(topics, data, validate) - .map(Self::Transfer) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for IERC20Events { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::Approval(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner), - Self::Transfer(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner), - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::Approval(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::Transfer(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IERC20`](self) contract instance. - - See the [wrapper's documentation](`IERC20Instance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> IERC20Instance { - IERC20Instance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> { - IERC20Instance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - IERC20Instance::::deploy_builder(provider) - } - /**A [`IERC20`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IERC20`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct IERC20Instance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IERC20Instance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IERC20Instance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC20Instance - { - /**Creates a new wrapper around an on-chain [`IERC20`](self) contract instance. - - See the [wrapper's documentation](`IERC20Instance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy(provider: P) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl IERC20Instance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IERC20Instance { - IERC20Instance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC20Instance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`allowance`] function. - pub fn allowance( - &self, - owner: alloy::sol_types::private::Address, - spender: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&allowanceCall { owner, spender }) - } - ///Creates a new call builder for the [`approve`] function. - pub fn approve( - &self, - spender: alloy::sol_types::private::Address, - amount: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&approveCall { spender, amount }) - } - ///Creates a new call builder for the [`balanceOf`] function. - pub fn balanceOf( - &self, - account: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&balanceOfCall { account }) - } - ///Creates a new call builder for the [`totalSupply`] function. - pub fn totalSupply(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&totalSupplyCall {}) - } - ///Creates a new call builder for the [`transfer`] function. - pub fn transfer( - &self, - to: alloy::sol_types::private::Address, - amount: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&transferCall { to, amount }) - } - ///Creates a new call builder for the [`transferFrom`] function. - pub fn transferFrom( - &self, - from: alloy::sol_types::private::Address, - to: alloy::sol_types::private::Address, - amount: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&transferFromCall { from, to, amount }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC20Instance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`Approval`] event. - pub fn Approval_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`Transfer`] event. - pub fn Transfer_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/ierc721.rs b/crates/bindings/src/ierc721.rs deleted file mode 100644 index 2fe3192c..00000000 --- a/crates/bindings/src/ierc721.rs +++ /dev/null @@ -1,2474 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface IERC721 { - event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId); - event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved); - event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId); - - function approve(address _approved, uint256 _tokenId) external payable; - function balanceOf(address _owner) external view returns (uint256); - function getApproved(uint256 _tokenId) external view returns (address); - function isApprovedForAll(address _owner, address _operator) external view returns (bool); - function ownerOf(uint256 _tokenId) external view returns (address); - function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable; - function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes memory data) external payable; - function setApprovalForAll(address _operator, bool _approved) external; - function supportsInterface(bytes4 interfaceID) external view returns (bool); - function transferFrom(address _from, address _to, uint256 _tokenId) external payable; -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "approve", - "inputs": [ - { - "name": "_approved", - "type": "address", - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "function", - "name": "balanceOf", - "inputs": [ - { - "name": "_owner", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getApproved", - "inputs": [ - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "isApprovedForAll", - "inputs": [ - { - "name": "_owner", - "type": "address", - "internalType": "address" - }, - { - "name": "_operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "ownerOf", - "inputs": [ - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "safeTransferFrom", - "inputs": [ - { - "name": "_from", - "type": "address", - "internalType": "address" - }, - { - "name": "_to", - "type": "address", - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "function", - "name": "safeTransferFrom", - "inputs": [ - { - "name": "_from", - "type": "address", - "internalType": "address" - }, - { - "name": "_to", - "type": "address", - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "data", - "type": "bytes", - "internalType": "bytes" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "function", - "name": "setApprovalForAll", - "inputs": [ - { - "name": "_operator", - "type": "address", - "internalType": "address" - }, - { - "name": "_approved", - "type": "bool", - "internalType": "bool" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "supportsInterface", - "inputs": [ - { - "name": "interfaceID", - "type": "bytes4", - "internalType": "bytes4" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "transferFrom", - "inputs": [ - { - "name": "_from", - "type": "address", - "internalType": "address" - }, - { - "name": "_to", - "type": "address", - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "event", - "name": "Approval", - "inputs": [ - { - "name": "_owner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_approved", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "ApprovalForAll", - "inputs": [ - { - "name": "_owner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_approved", - "type": "bool", - "indexed": false, - "internalType": "bool" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "Transfer", - "inputs": [ - { - "name": "_from", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_to", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - } - ], - "anonymous": false - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IERC721 { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**Event with signature `Approval(address,address,uint256)` and selector `0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925`. - ```solidity - event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Approval { - #[allow(missing_docs)] - pub _owner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _approved: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Approval { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - const SIGNATURE: &'static str = "Approval(address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 140u8, 91u8, 225u8, 229u8, 235u8, 236u8, 125u8, 91u8, 209u8, 79u8, 113u8, 66u8, - 125u8, 30u8, 132u8, 243u8, 221u8, 3u8, 20u8, 192u8, 247u8, 178u8, 41u8, 30u8, - 91u8, 32u8, 10u8, 200u8, 199u8, 195u8, 185u8, 37u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _owner: topics.1, _approved: topics.2, _tokenId: topics.3 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self._owner.clone(), - self._approved.clone(), - self._tokenId.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._owner, - ); - out[2usize] = ::encode_topic( - &self._approved, - ); - out[3usize] = as alloy_sol_types::EventTopic>::encode_topic(&self._tokenId); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Approval { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Approval> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Approval) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `ApprovalForAll(address,address,bool)` and selector `0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31`. - ```solidity - event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct ApprovalForAll { - #[allow(missing_docs)] - pub _owner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _approved: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for ApprovalForAll { - type DataTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "ApprovalForAll(address,address,bool)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 23u8, 48u8, 126u8, 171u8, 57u8, 171u8, 97u8, 7u8, 232u8, 137u8, 152u8, 69u8, - 173u8, 61u8, 89u8, 189u8, 150u8, 83u8, 242u8, 0u8, 242u8, 32u8, 146u8, 4u8, - 137u8, 202u8, 43u8, 89u8, 55u8, 105u8, 108u8, 49u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _owner: topics.1, _operator: topics.2, _approved: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - (::tokenize( - &self._approved, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self._owner.clone(), self._operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._owner, - ); - out[2usize] = ::encode_topic( - &self._operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ApprovalForAll { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&ApprovalForAll> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &ApprovalForAll) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `Transfer(address,address,uint256)` and selector `0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef`. - ```solidity - event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Transfer { - #[allow(missing_docs)] - pub _from: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _to: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Transfer { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - const SIGNATURE: &'static str = "Transfer(address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 221u8, 242u8, 82u8, 173u8, 27u8, 226u8, 200u8, 155u8, 105u8, 194u8, 176u8, - 104u8, 252u8, 55u8, 141u8, 170u8, 149u8, 43u8, 167u8, 241u8, 99u8, 196u8, - 161u8, 22u8, 40u8, 245u8, 90u8, 77u8, 245u8, 35u8, 179u8, 239u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _from: topics.1, _to: topics.2, _tokenId: topics.3 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self._from.clone(), - self._to.clone(), - self._tokenId.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._from, - ); - out[2usize] = ::encode_topic( - &self._to, - ); - out[3usize] = as alloy_sol_types::EventTopic>::encode_topic(&self._tokenId); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Transfer { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Transfer> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Transfer) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Function with signature `approve(address,uint256)` and selector `0x095ea7b3`. - ```solidity - function approve(address _approved, uint256 _tokenId) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct approveCall { - pub _approved: alloy::sol_types::private::Address, - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`approve(address,uint256)`](approveCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct approveReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: approveCall) -> Self { - (value._approved, value._tokenId) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for approveCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _approved: tuple.0, _tokenId: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: approveReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for approveReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for approveCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = approveReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "approve(address,uint256)"; - const SELECTOR: [u8; 4] = [9u8, 94u8, 167u8, 179u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._approved, - ), - as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `balanceOf(address)` and selector `0x70a08231`. - ```solidity - function balanceOf(address _owner) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct balanceOfCall { - pub _owner: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`balanceOf(address)`](balanceOfCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct balanceOfReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: balanceOfCall) -> Self { - (value._owner,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for balanceOfCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _owner: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: balanceOfReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for balanceOfReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for balanceOfCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = balanceOfReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "balanceOf(address)"; - const SELECTOR: [u8; 4] = [112u8, 160u8, 130u8, 49u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self._owner, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getApproved(uint256)` and selector `0x081812fc`. - ```solidity - function getApproved(uint256 _tokenId) external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApprovedCall { - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`getApproved(uint256)`](getApprovedCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApprovedReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getApprovedCall) -> Self { - (value._tokenId,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApprovedCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _tokenId: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getApprovedReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApprovedReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getApprovedCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getApprovedReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getApproved(uint256)"; - const SELECTOR: [u8; 4] = [8u8, 24u8, 18u8, 252u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `isApprovedForAll(address,address)` and selector `0xe985e9c5`. - ```solidity - function isApprovedForAll(address _owner, address _operator) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isApprovedForAllCall { - pub _owner: alloy::sol_types::private::Address, - pub _operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`isApprovedForAll(address,address)`](isApprovedForAllCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isApprovedForAllReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Address, alloy::sol_types::private::Address); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isApprovedForAllCall) -> Self { - (value._owner, value._operator) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isApprovedForAllCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _owner: tuple.0, _operator: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isApprovedForAllReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isApprovedForAllReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for isApprovedForAllCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = isApprovedForAllReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "isApprovedForAll(address,address)"; - const SELECTOR: [u8; 4] = [233u8, 133u8, 233u8, 197u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._owner, - ), - ::tokenize( - &self._operator, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `ownerOf(uint256)` and selector `0x6352211e`. - ```solidity - function ownerOf(uint256 _tokenId) external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ownerOfCall { - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`ownerOf(uint256)`](ownerOfCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ownerOfReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: ownerOfCall) -> Self { - (value._tokenId,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ownerOfCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _tokenId: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: ownerOfReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ownerOfReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for ownerOfCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = ownerOfReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ownerOf(uint256)"; - const SELECTOR: [u8; 4] = [99u8, 82u8, 33u8, 30u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `safeTransferFrom(address,address,uint256)` and selector `0x42842e0e`. - ```solidity - function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_0Call { - pub _from: alloy::sol_types::private::Address, - pub _to: alloy::sol_types::private::Address, - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`safeTransferFrom(address,address,uint256)`](safeTransferFrom_0Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_0Return {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_0Call) -> Self { - (value._from, value._to, value._tokenId) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_0Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _from: tuple.0, _to: tuple.1, _tokenId: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_0Return) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_0Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for safeTransferFrom_0Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = safeTransferFrom_0Return; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "safeTransferFrom(address,address,uint256)"; - const SELECTOR: [u8; 4] = [66u8, 132u8, 46u8, 14u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._from, - ), - ::tokenize( - &self._to, - ), - as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `safeTransferFrom(address,address,uint256,bytes)` and selector `0xb88d4fde`. - ```solidity - function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes memory data) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_1Call { - pub _from: alloy::sol_types::private::Address, - pub _to: alloy::sol_types::private::Address, - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - pub data: alloy::sol_types::private::Bytes, - } - ///Container type for the return parameters of the [`safeTransferFrom(address,address,uint256,bytes)`](safeTransferFrom_1Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_1Return {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Bytes, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - alloy::sol_types::private::Bytes, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_1Call) -> Self { - (value._from, value._to, value._tokenId, value.data) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_1Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _from: tuple.0, _to: tuple.1, _tokenId: tuple.2, data: tuple.3 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_1Return) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_1Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for safeTransferFrom_1Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Bytes, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = safeTransferFrom_1Return; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "safeTransferFrom(address,address,uint256,bytes)"; - const SELECTOR: [u8; 4] = [184u8, 141u8, 79u8, 222u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._from, - ), - ::tokenize( - &self._to, - ), - as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ), - ::tokenize( - &self.data, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setApprovalForAll(address,bool)` and selector `0xa22cb465`. - ```solidity - function setApprovalForAll(address _operator, bool _approved) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setApprovalForAllCall { - pub _operator: alloy::sol_types::private::Address, - pub _approved: bool, - } - ///Container type for the return parameters of the [`setApprovalForAll(address,bool)`](setApprovalForAllCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setApprovalForAllReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Bool); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address, bool); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setApprovalForAllCall) -> Self { - (value._operator, value._approved) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setApprovalForAllCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _operator: tuple.0, _approved: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setApprovalForAllReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setApprovalForAllReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setApprovalForAllCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Bool); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setApprovalForAllReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setApprovalForAll(address,bool)"; - const SELECTOR: [u8; 4] = [162u8, 44u8, 180u8, 101u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._operator, - ), - ::tokenize( - &self._approved, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `supportsInterface(bytes4)` and selector `0x01ffc9a7`. - ```solidity - function supportsInterface(bytes4 interfaceID) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct supportsInterfaceCall { - pub interfaceID: alloy::sol_types::private::FixedBytes<4>, - } - ///Container type for the return parameters of the [`supportsInterface(bytes4)`](supportsInterfaceCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct supportsInterfaceReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<4>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: supportsInterfaceCall) -> Self { - (value.interfaceID,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for supportsInterfaceCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { interfaceID: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: supportsInterfaceReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for supportsInterfaceReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for supportsInterfaceCall { - type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = supportsInterfaceReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "supportsInterface(bytes4)"; - const SELECTOR: [u8; 4] = [1u8, 255u8, 201u8, 167u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.interfaceID, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `transferFrom(address,address,uint256)` and selector `0x23b872dd`. - ```solidity - function transferFrom(address _from, address _to, uint256 _tokenId) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferFromCall { - pub _from: alloy::sol_types::private::Address, - pub _to: alloy::sol_types::private::Address, - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`transferFrom(address,address,uint256)`](transferFromCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferFromReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferFromCall) -> Self { - (value._from, value._to, value._tokenId) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferFromCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _from: tuple.0, _to: tuple.1, _tokenId: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferFromReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferFromReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for transferFromCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = transferFromReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "transferFrom(address,address,uint256)"; - const SELECTOR: [u8; 4] = [35u8, 184u8, 114u8, 221u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._from, - ), - ::tokenize( - &self._to, - ), - as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`IERC721`](self) function calls. - pub enum IERC721Calls { - approve(approveCall), - balanceOf(balanceOfCall), - getApproved(getApprovedCall), - isApprovedForAll(isApprovedForAllCall), - ownerOf(ownerOfCall), - safeTransferFrom_0(safeTransferFrom_0Call), - safeTransferFrom_1(safeTransferFrom_1Call), - setApprovalForAll(setApprovalForAllCall), - supportsInterface(supportsInterfaceCall), - transferFrom(transferFromCall), - } - #[automatically_derived] - impl IERC721Calls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [1u8, 255u8, 201u8, 167u8], - [8u8, 24u8, 18u8, 252u8], - [9u8, 94u8, 167u8, 179u8], - [35u8, 184u8, 114u8, 221u8], - [66u8, 132u8, 46u8, 14u8], - [99u8, 82u8, 33u8, 30u8], - [112u8, 160u8, 130u8, 49u8], - [162u8, 44u8, 180u8, 101u8], - [184u8, 141u8, 79u8, 222u8], - [233u8, 133u8, 233u8, 197u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for IERC721Calls { - const NAME: &'static str = "IERC721Calls"; - const MIN_DATA_LENGTH: usize = 32usize; - const COUNT: usize = 10usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::approve(_) => ::SELECTOR, - Self::balanceOf(_) => ::SELECTOR, - Self::getApproved(_) => ::SELECTOR, - Self::isApprovedForAll(_) => { - ::SELECTOR - } - Self::ownerOf(_) => ::SELECTOR, - Self::safeTransferFrom_0(_) => { - ::SELECTOR - } - Self::safeTransferFrom_1(_) => { - ::SELECTOR - } - Self::setApprovalForAll(_) => { - ::SELECTOR - } - Self::supportsInterface(_) => { - ::SELECTOR - } - Self::transferFrom(_) => ::SELECTOR, - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn(&[u8], bool) -> alloy_sol_types::Result] = &[ - { - fn supportsInterface( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721Calls::supportsInterface) - } - supportsInterface - }, - { - fn getApproved( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721Calls::getApproved) - } - getApproved - }, - { - fn approve( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC721Calls::approve) - } - approve - }, - { - fn transferFrom( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721Calls::transferFrom) - } - transferFrom - }, - { - fn safeTransferFrom_0( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721Calls::safeTransferFrom_0) - } - safeTransferFrom_0 - }, - { - fn ownerOf( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC721Calls::ownerOf) - } - ownerOf - }, - { - fn balanceOf( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC721Calls::balanceOf) - } - balanceOf - }, - { - fn setApprovalForAll( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721Calls::setApprovalForAll) - } - setApprovalForAll - }, - { - fn safeTransferFrom_1( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721Calls::safeTransferFrom_1) - } - safeTransferFrom_1 - }, - { - fn isApprovedForAll( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721Calls::isApprovedForAll) - } - isApprovedForAll - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::approve(inner) => { - ::abi_encoded_size(inner) - } - Self::balanceOf(inner) => { - ::abi_encoded_size(inner) - } - Self::getApproved(inner) => { - ::abi_encoded_size(inner) - } - Self::isApprovedForAll(inner) => { - ::abi_encoded_size(inner) - } - Self::ownerOf(inner) => { - ::abi_encoded_size(inner) - } - Self::safeTransferFrom_0(inner) => { - ::abi_encoded_size(inner) - } - Self::safeTransferFrom_1(inner) => { - ::abi_encoded_size(inner) - } - Self::setApprovalForAll(inner) => { - ::abi_encoded_size(inner) - } - Self::supportsInterface(inner) => { - ::abi_encoded_size(inner) - } - Self::transferFrom(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::approve(inner) => { - ::abi_encode_raw(inner, out) - } - Self::balanceOf(inner) => { - ::abi_encode_raw(inner, out) - } - Self::getApproved(inner) => { - ::abi_encode_raw(inner, out) - } - Self::isApprovedForAll(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ownerOf(inner) => { - ::abi_encode_raw(inner, out) - } - Self::safeTransferFrom_0(inner) => { - ::abi_encode_raw(inner, out) - } - Self::safeTransferFrom_1(inner) => { - ::abi_encode_raw(inner, out) - } - Self::setApprovalForAll(inner) => { - ::abi_encode_raw(inner, out) - } - Self::supportsInterface(inner) => { - ::abi_encode_raw(inner, out) - } - Self::transferFrom(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - ///Container for all the [`IERC721`](self) events. - pub enum IERC721Events { - Approval(Approval), - ApprovalForAll(ApprovalForAll), - Transfer(Transfer), - } - #[automatically_derived] - impl IERC721Events { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[ - [ - 23u8, 48u8, 126u8, 171u8, 57u8, 171u8, 97u8, 7u8, 232u8, 137u8, 152u8, 69u8, 173u8, - 61u8, 89u8, 189u8, 150u8, 83u8, 242u8, 0u8, 242u8, 32u8, 146u8, 4u8, 137u8, 202u8, - 43u8, 89u8, 55u8, 105u8, 108u8, 49u8, - ], - [ - 140u8, 91u8, 225u8, 229u8, 235u8, 236u8, 125u8, 91u8, 209u8, 79u8, 113u8, 66u8, - 125u8, 30u8, 132u8, 243u8, 221u8, 3u8, 20u8, 192u8, 247u8, 178u8, 41u8, 30u8, 91u8, - 32u8, 10u8, 200u8, 199u8, 195u8, 185u8, 37u8, - ], - [ - 221u8, 242u8, 82u8, 173u8, 27u8, 226u8, 200u8, 155u8, 105u8, 194u8, 176u8, 104u8, - 252u8, 55u8, 141u8, 170u8, 149u8, 43u8, 167u8, 241u8, 99u8, 196u8, 161u8, 22u8, - 40u8, 245u8, 90u8, 77u8, 245u8, 35u8, 179u8, 239u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for IERC721Events { - const NAME: &'static str = "IERC721Events"; - const COUNT: usize = 3usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log(topics, data, validate) - .map(Self::Approval) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::ApprovalForAll) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log(topics, data, validate) - .map(Self::Transfer) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for IERC721Events { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::Approval(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner), - Self::ApprovalForAll(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::Transfer(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner), - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::Approval(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::ApprovalForAll(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::Transfer(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IERC721`](self) contract instance. - - See the [wrapper's documentation](`IERC721Instance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> IERC721Instance { - IERC721Instance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - IERC721Instance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - IERC721Instance::::deploy_builder(provider) - } - /**A [`IERC721`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IERC721`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct IERC721Instance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IERC721Instance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IERC721Instance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC721Instance - { - /**Creates a new wrapper around an on-chain [`IERC721`](self) contract instance. - - See the [wrapper's documentation](`IERC721Instance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy(provider: P) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl IERC721Instance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IERC721Instance { - IERC721Instance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC721Instance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`approve`] function. - pub fn approve( - &self, - _approved: alloy::sol_types::private::Address, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&approveCall { _approved, _tokenId }) - } - ///Creates a new call builder for the [`balanceOf`] function. - pub fn balanceOf( - &self, - _owner: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&balanceOfCall { _owner }) - } - ///Creates a new call builder for the [`getApproved`] function. - pub fn getApproved( - &self, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getApprovedCall { _tokenId }) - } - ///Creates a new call builder for the [`isApprovedForAll`] function. - pub fn isApprovedForAll( - &self, - _owner: alloy::sol_types::private::Address, - _operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&isApprovedForAllCall { _owner, _operator }) - } - ///Creates a new call builder for the [`ownerOf`] function. - pub fn ownerOf( - &self, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&ownerOfCall { _tokenId }) - } - ///Creates a new call builder for the [`safeTransferFrom_0`] function. - pub fn safeTransferFrom_0( - &self, - _from: alloy::sol_types::private::Address, - _to: alloy::sol_types::private::Address, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&safeTransferFrom_0Call { _from, _to, _tokenId }) - } - ///Creates a new call builder for the [`safeTransferFrom_1`] function. - pub fn safeTransferFrom_1( - &self, - _from: alloy::sol_types::private::Address, - _to: alloy::sol_types::private::Address, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - data: alloy::sol_types::private::Bytes, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&safeTransferFrom_1Call { _from, _to, _tokenId, data }) - } - ///Creates a new call builder for the [`setApprovalForAll`] function. - pub fn setApprovalForAll( - &self, - _operator: alloy::sol_types::private::Address, - _approved: bool, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setApprovalForAllCall { _operator, _approved }) - } - ///Creates a new call builder for the [`supportsInterface`] function. - pub fn supportsInterface( - &self, - interfaceID: alloy::sol_types::private::FixedBytes<4>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&supportsInterfaceCall { interfaceID }) - } - ///Creates a new call builder for the [`transferFrom`] function. - pub fn transferFrom( - &self, - _from: alloy::sol_types::private::Address, - _to: alloy::sol_types::private::Address, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&transferFromCall { _from, _to, _tokenId }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC721Instance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`Approval`] event. - pub fn Approval_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`ApprovalForAll`] event. - pub fn ApprovalForAll_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`Transfer`] event. - pub fn Transfer_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/ierc721enumerable.rs b/crates/bindings/src/ierc721enumerable.rs deleted file mode 100644 index 6ec9d95f..00000000 --- a/crates/bindings/src/ierc721enumerable.rs +++ /dev/null @@ -1,2959 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface IERC721Enumerable { - event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId); - event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved); - event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId); - - function approve(address _approved, uint256 _tokenId) external payable; - function balanceOf(address _owner) external view returns (uint256); - function getApproved(uint256 _tokenId) external view returns (address); - function isApprovedForAll(address _owner, address _operator) external view returns (bool); - function ownerOf(uint256 _tokenId) external view returns (address); - function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable; - function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes memory data) external payable; - function setApprovalForAll(address _operator, bool _approved) external; - function supportsInterface(bytes4 interfaceID) external view returns (bool); - function tokenByIndex(uint256 _index) external view returns (uint256); - function tokenOfOwnerByIndex(address _owner, uint256 _index) external view returns (uint256); - function totalSupply() external view returns (uint256); - function transferFrom(address _from, address _to, uint256 _tokenId) external payable; -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "approve", - "inputs": [ - { - "name": "_approved", - "type": "address", - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "function", - "name": "balanceOf", - "inputs": [ - { - "name": "_owner", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getApproved", - "inputs": [ - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "isApprovedForAll", - "inputs": [ - { - "name": "_owner", - "type": "address", - "internalType": "address" - }, - { - "name": "_operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "ownerOf", - "inputs": [ - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "safeTransferFrom", - "inputs": [ - { - "name": "_from", - "type": "address", - "internalType": "address" - }, - { - "name": "_to", - "type": "address", - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "function", - "name": "safeTransferFrom", - "inputs": [ - { - "name": "_from", - "type": "address", - "internalType": "address" - }, - { - "name": "_to", - "type": "address", - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "data", - "type": "bytes", - "internalType": "bytes" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "function", - "name": "setApprovalForAll", - "inputs": [ - { - "name": "_operator", - "type": "address", - "internalType": "address" - }, - { - "name": "_approved", - "type": "bool", - "internalType": "bool" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "supportsInterface", - "inputs": [ - { - "name": "interfaceID", - "type": "bytes4", - "internalType": "bytes4" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "tokenByIndex", - "inputs": [ - { - "name": "_index", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "tokenOfOwnerByIndex", - "inputs": [ - { - "name": "_owner", - "type": "address", - "internalType": "address" - }, - { - "name": "_index", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "totalSupply", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "transferFrom", - "inputs": [ - { - "name": "_from", - "type": "address", - "internalType": "address" - }, - { - "name": "_to", - "type": "address", - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "event", - "name": "Approval", - "inputs": [ - { - "name": "_owner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_approved", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "ApprovalForAll", - "inputs": [ - { - "name": "_owner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_approved", - "type": "bool", - "indexed": false, - "internalType": "bool" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "Transfer", - "inputs": [ - { - "name": "_from", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_to", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - } - ], - "anonymous": false - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IERC721Enumerable { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**Event with signature `Approval(address,address,uint256)` and selector `0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925`. - ```solidity - event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Approval { - #[allow(missing_docs)] - pub _owner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _approved: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Approval { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - const SIGNATURE: &'static str = "Approval(address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 140u8, 91u8, 225u8, 229u8, 235u8, 236u8, 125u8, 91u8, 209u8, 79u8, 113u8, 66u8, - 125u8, 30u8, 132u8, 243u8, 221u8, 3u8, 20u8, 192u8, 247u8, 178u8, 41u8, 30u8, - 91u8, 32u8, 10u8, 200u8, 199u8, 195u8, 185u8, 37u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _owner: topics.1, _approved: topics.2, _tokenId: topics.3 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self._owner.clone(), - self._approved.clone(), - self._tokenId.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._owner, - ); - out[2usize] = ::encode_topic( - &self._approved, - ); - out[3usize] = as alloy_sol_types::EventTopic>::encode_topic(&self._tokenId); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Approval { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Approval> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Approval) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `ApprovalForAll(address,address,bool)` and selector `0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31`. - ```solidity - event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct ApprovalForAll { - #[allow(missing_docs)] - pub _owner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _approved: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for ApprovalForAll { - type DataTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "ApprovalForAll(address,address,bool)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 23u8, 48u8, 126u8, 171u8, 57u8, 171u8, 97u8, 7u8, 232u8, 137u8, 152u8, 69u8, - 173u8, 61u8, 89u8, 189u8, 150u8, 83u8, 242u8, 0u8, 242u8, 32u8, 146u8, 4u8, - 137u8, 202u8, 43u8, 89u8, 55u8, 105u8, 108u8, 49u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _owner: topics.1, _operator: topics.2, _approved: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - (::tokenize( - &self._approved, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self._owner.clone(), self._operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._owner, - ); - out[2usize] = ::encode_topic( - &self._operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ApprovalForAll { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&ApprovalForAll> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &ApprovalForAll) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `Transfer(address,address,uint256)` and selector `0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef`. - ```solidity - event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Transfer { - #[allow(missing_docs)] - pub _from: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _to: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Transfer { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - const SIGNATURE: &'static str = "Transfer(address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 221u8, 242u8, 82u8, 173u8, 27u8, 226u8, 200u8, 155u8, 105u8, 194u8, 176u8, - 104u8, 252u8, 55u8, 141u8, 170u8, 149u8, 43u8, 167u8, 241u8, 99u8, 196u8, - 161u8, 22u8, 40u8, 245u8, 90u8, 77u8, 245u8, 35u8, 179u8, 239u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _from: topics.1, _to: topics.2, _tokenId: topics.3 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self._from.clone(), - self._to.clone(), - self._tokenId.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._from, - ); - out[2usize] = ::encode_topic( - &self._to, - ); - out[3usize] = as alloy_sol_types::EventTopic>::encode_topic(&self._tokenId); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Transfer { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Transfer> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Transfer) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Function with signature `approve(address,uint256)` and selector `0x095ea7b3`. - ```solidity - function approve(address _approved, uint256 _tokenId) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct approveCall { - pub _approved: alloy::sol_types::private::Address, - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`approve(address,uint256)`](approveCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct approveReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: approveCall) -> Self { - (value._approved, value._tokenId) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for approveCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _approved: tuple.0, _tokenId: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: approveReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for approveReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for approveCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = approveReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "approve(address,uint256)"; - const SELECTOR: [u8; 4] = [9u8, 94u8, 167u8, 179u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._approved, - ), - as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `balanceOf(address)` and selector `0x70a08231`. - ```solidity - function balanceOf(address _owner) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct balanceOfCall { - pub _owner: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`balanceOf(address)`](balanceOfCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct balanceOfReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: balanceOfCall) -> Self { - (value._owner,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for balanceOfCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _owner: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: balanceOfReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for balanceOfReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for balanceOfCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = balanceOfReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "balanceOf(address)"; - const SELECTOR: [u8; 4] = [112u8, 160u8, 130u8, 49u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self._owner, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getApproved(uint256)` and selector `0x081812fc`. - ```solidity - function getApproved(uint256 _tokenId) external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApprovedCall { - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`getApproved(uint256)`](getApprovedCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApprovedReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getApprovedCall) -> Self { - (value._tokenId,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApprovedCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _tokenId: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getApprovedReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApprovedReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getApprovedCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getApprovedReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getApproved(uint256)"; - const SELECTOR: [u8; 4] = [8u8, 24u8, 18u8, 252u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `isApprovedForAll(address,address)` and selector `0xe985e9c5`. - ```solidity - function isApprovedForAll(address _owner, address _operator) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isApprovedForAllCall { - pub _owner: alloy::sol_types::private::Address, - pub _operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`isApprovedForAll(address,address)`](isApprovedForAllCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isApprovedForAllReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Address, alloy::sol_types::private::Address); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isApprovedForAllCall) -> Self { - (value._owner, value._operator) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isApprovedForAllCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _owner: tuple.0, _operator: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isApprovedForAllReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isApprovedForAllReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for isApprovedForAllCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = isApprovedForAllReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "isApprovedForAll(address,address)"; - const SELECTOR: [u8; 4] = [233u8, 133u8, 233u8, 197u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._owner, - ), - ::tokenize( - &self._operator, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `ownerOf(uint256)` and selector `0x6352211e`. - ```solidity - function ownerOf(uint256 _tokenId) external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ownerOfCall { - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`ownerOf(uint256)`](ownerOfCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ownerOfReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: ownerOfCall) -> Self { - (value._tokenId,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ownerOfCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _tokenId: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: ownerOfReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ownerOfReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for ownerOfCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = ownerOfReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ownerOf(uint256)"; - const SELECTOR: [u8; 4] = [99u8, 82u8, 33u8, 30u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `safeTransferFrom(address,address,uint256)` and selector `0x42842e0e`. - ```solidity - function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_0Call { - pub _from: alloy::sol_types::private::Address, - pub _to: alloy::sol_types::private::Address, - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`safeTransferFrom(address,address,uint256)`](safeTransferFrom_0Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_0Return {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_0Call) -> Self { - (value._from, value._to, value._tokenId) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_0Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _from: tuple.0, _to: tuple.1, _tokenId: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_0Return) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_0Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for safeTransferFrom_0Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = safeTransferFrom_0Return; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "safeTransferFrom(address,address,uint256)"; - const SELECTOR: [u8; 4] = [66u8, 132u8, 46u8, 14u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._from, - ), - ::tokenize( - &self._to, - ), - as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `safeTransferFrom(address,address,uint256,bytes)` and selector `0xb88d4fde`. - ```solidity - function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes memory data) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_1Call { - pub _from: alloy::sol_types::private::Address, - pub _to: alloy::sol_types::private::Address, - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - pub data: alloy::sol_types::private::Bytes, - } - ///Container type for the return parameters of the [`safeTransferFrom(address,address,uint256,bytes)`](safeTransferFrom_1Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_1Return {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Bytes, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - alloy::sol_types::private::Bytes, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_1Call) -> Self { - (value._from, value._to, value._tokenId, value.data) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_1Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _from: tuple.0, _to: tuple.1, _tokenId: tuple.2, data: tuple.3 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_1Return) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_1Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for safeTransferFrom_1Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Bytes, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = safeTransferFrom_1Return; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "safeTransferFrom(address,address,uint256,bytes)"; - const SELECTOR: [u8; 4] = [184u8, 141u8, 79u8, 222u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._from, - ), - ::tokenize( - &self._to, - ), - as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ), - ::tokenize( - &self.data, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setApprovalForAll(address,bool)` and selector `0xa22cb465`. - ```solidity - function setApprovalForAll(address _operator, bool _approved) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setApprovalForAllCall { - pub _operator: alloy::sol_types::private::Address, - pub _approved: bool, - } - ///Container type for the return parameters of the [`setApprovalForAll(address,bool)`](setApprovalForAllCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setApprovalForAllReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Bool); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address, bool); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setApprovalForAllCall) -> Self { - (value._operator, value._approved) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setApprovalForAllCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _operator: tuple.0, _approved: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setApprovalForAllReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setApprovalForAllReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setApprovalForAllCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Bool); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setApprovalForAllReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setApprovalForAll(address,bool)"; - const SELECTOR: [u8; 4] = [162u8, 44u8, 180u8, 101u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._operator, - ), - ::tokenize( - &self._approved, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `supportsInterface(bytes4)` and selector `0x01ffc9a7`. - ```solidity - function supportsInterface(bytes4 interfaceID) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct supportsInterfaceCall { - pub interfaceID: alloy::sol_types::private::FixedBytes<4>, - } - ///Container type for the return parameters of the [`supportsInterface(bytes4)`](supportsInterfaceCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct supportsInterfaceReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<4>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: supportsInterfaceCall) -> Self { - (value.interfaceID,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for supportsInterfaceCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { interfaceID: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: supportsInterfaceReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for supportsInterfaceReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for supportsInterfaceCall { - type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = supportsInterfaceReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "supportsInterface(bytes4)"; - const SELECTOR: [u8; 4] = [1u8, 255u8, 201u8, 167u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.interfaceID, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `tokenByIndex(uint256)` and selector `0x4f6ccce7`. - ```solidity - function tokenByIndex(uint256 _index) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct tokenByIndexCall { - pub _index: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`tokenByIndex(uint256)`](tokenByIndexCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct tokenByIndexReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: tokenByIndexCall) -> Self { - (value._index,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for tokenByIndexCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _index: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: tokenByIndexReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for tokenByIndexReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for tokenByIndexCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = tokenByIndexReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "tokenByIndex(uint256)"; - const SELECTOR: [u8; 4] = [79u8, 108u8, 204u8, 231u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._index, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `tokenOfOwnerByIndex(address,uint256)` and selector `0x2f745c59`. - ```solidity - function tokenOfOwnerByIndex(address _owner, uint256 _index) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct tokenOfOwnerByIndexCall { - pub _owner: alloy::sol_types::private::Address, - pub _index: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`tokenOfOwnerByIndex(address,uint256)`](tokenOfOwnerByIndexCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct tokenOfOwnerByIndexReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: tokenOfOwnerByIndexCall) -> Self { - (value._owner, value._index) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for tokenOfOwnerByIndexCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _owner: tuple.0, _index: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: tokenOfOwnerByIndexReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for tokenOfOwnerByIndexReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for tokenOfOwnerByIndexCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = tokenOfOwnerByIndexReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "tokenOfOwnerByIndex(address,uint256)"; - const SELECTOR: [u8; 4] = [47u8, 116u8, 92u8, 89u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._owner, - ), - as alloy_sol_types::SolType>::tokenize( - &self._index, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `totalSupply()` and selector `0x18160ddd`. - ```solidity - function totalSupply() external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct totalSupplyCall {} - ///Container type for the return parameters of the [`totalSupply()`](totalSupplyCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct totalSupplyReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: totalSupplyCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for totalSupplyCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: totalSupplyReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for totalSupplyReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for totalSupplyCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = totalSupplyReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "totalSupply()"; - const SELECTOR: [u8; 4] = [24u8, 22u8, 13u8, 221u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `transferFrom(address,address,uint256)` and selector `0x23b872dd`. - ```solidity - function transferFrom(address _from, address _to, uint256 _tokenId) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferFromCall { - pub _from: alloy::sol_types::private::Address, - pub _to: alloy::sol_types::private::Address, - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`transferFrom(address,address,uint256)`](transferFromCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferFromReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferFromCall) -> Self { - (value._from, value._to, value._tokenId) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferFromCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _from: tuple.0, _to: tuple.1, _tokenId: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferFromReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferFromReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for transferFromCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = transferFromReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "transferFrom(address,address,uint256)"; - const SELECTOR: [u8; 4] = [35u8, 184u8, 114u8, 221u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._from, - ), - ::tokenize( - &self._to, - ), - as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`IERC721Enumerable`](self) function calls. - pub enum IERC721EnumerableCalls { - approve(approveCall), - balanceOf(balanceOfCall), - getApproved(getApprovedCall), - isApprovedForAll(isApprovedForAllCall), - ownerOf(ownerOfCall), - safeTransferFrom_0(safeTransferFrom_0Call), - safeTransferFrom_1(safeTransferFrom_1Call), - setApprovalForAll(setApprovalForAllCall), - supportsInterface(supportsInterfaceCall), - tokenByIndex(tokenByIndexCall), - tokenOfOwnerByIndex(tokenOfOwnerByIndexCall), - totalSupply(totalSupplyCall), - transferFrom(transferFromCall), - } - #[automatically_derived] - impl IERC721EnumerableCalls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [1u8, 255u8, 201u8, 167u8], - [8u8, 24u8, 18u8, 252u8], - [9u8, 94u8, 167u8, 179u8], - [24u8, 22u8, 13u8, 221u8], - [35u8, 184u8, 114u8, 221u8], - [47u8, 116u8, 92u8, 89u8], - [66u8, 132u8, 46u8, 14u8], - [79u8, 108u8, 204u8, 231u8], - [99u8, 82u8, 33u8, 30u8], - [112u8, 160u8, 130u8, 49u8], - [162u8, 44u8, 180u8, 101u8], - [184u8, 141u8, 79u8, 222u8], - [233u8, 133u8, 233u8, 197u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for IERC721EnumerableCalls { - const NAME: &'static str = "IERC721EnumerableCalls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 13usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::approve(_) => ::SELECTOR, - Self::balanceOf(_) => ::SELECTOR, - Self::getApproved(_) => ::SELECTOR, - Self::isApprovedForAll(_) => { - ::SELECTOR - } - Self::ownerOf(_) => ::SELECTOR, - Self::safeTransferFrom_0(_) => { - ::SELECTOR - } - Self::safeTransferFrom_1(_) => { - ::SELECTOR - } - Self::setApprovalForAll(_) => { - ::SELECTOR - } - Self::supportsInterface(_) => { - ::SELECTOR - } - Self::tokenByIndex(_) => ::SELECTOR, - Self::tokenOfOwnerByIndex(_) => { - ::SELECTOR - } - Self::totalSupply(_) => ::SELECTOR, - Self::transferFrom(_) => ::SELECTOR, - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn( - &[u8], - bool, - ) - -> alloy_sol_types::Result] = &[ - { - fn supportsInterface( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721EnumerableCalls::supportsInterface) - } - supportsInterface - }, - { - fn getApproved( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721EnumerableCalls::getApproved) - } - getApproved - }, - { - fn approve( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC721EnumerableCalls::approve) - } - approve - }, - { - fn totalSupply( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721EnumerableCalls::totalSupply) - } - totalSupply - }, - { - fn transferFrom( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721EnumerableCalls::transferFrom) - } - transferFrom - }, - { - fn tokenOfOwnerByIndex( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721EnumerableCalls::tokenOfOwnerByIndex) - } - tokenOfOwnerByIndex - }, - { - fn safeTransferFrom_0( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721EnumerableCalls::safeTransferFrom_0) - } - safeTransferFrom_0 - }, - { - fn tokenByIndex( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721EnumerableCalls::tokenByIndex) - } - tokenByIndex - }, - { - fn ownerOf( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC721EnumerableCalls::ownerOf) - } - ownerOf - }, - { - fn balanceOf( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC721EnumerableCalls::balanceOf) - } - balanceOf - }, - { - fn setApprovalForAll( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721EnumerableCalls::setApprovalForAll) - } - setApprovalForAll - }, - { - fn safeTransferFrom_1( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721EnumerableCalls::safeTransferFrom_1) - } - safeTransferFrom_1 - }, - { - fn isApprovedForAll( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721EnumerableCalls::isApprovedForAll) - } - isApprovedForAll - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::approve(inner) => { - ::abi_encoded_size(inner) - } - Self::balanceOf(inner) => { - ::abi_encoded_size(inner) - } - Self::getApproved(inner) => { - ::abi_encoded_size(inner) - } - Self::isApprovedForAll(inner) => { - ::abi_encoded_size(inner) - } - Self::ownerOf(inner) => { - ::abi_encoded_size(inner) - } - Self::safeTransferFrom_0(inner) => { - ::abi_encoded_size(inner) - } - Self::safeTransferFrom_1(inner) => { - ::abi_encoded_size(inner) - } - Self::setApprovalForAll(inner) => { - ::abi_encoded_size(inner) - } - Self::supportsInterface(inner) => { - ::abi_encoded_size(inner) - } - Self::tokenByIndex(inner) => { - ::abi_encoded_size(inner) - } - Self::tokenOfOwnerByIndex(inner) => { - ::abi_encoded_size(inner) - } - Self::totalSupply(inner) => { - ::abi_encoded_size(inner) - } - Self::transferFrom(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::approve(inner) => { - ::abi_encode_raw(inner, out) - } - Self::balanceOf(inner) => { - ::abi_encode_raw(inner, out) - } - Self::getApproved(inner) => { - ::abi_encode_raw(inner, out) - } - Self::isApprovedForAll(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ownerOf(inner) => { - ::abi_encode_raw(inner, out) - } - Self::safeTransferFrom_0(inner) => { - ::abi_encode_raw(inner, out) - } - Self::safeTransferFrom_1(inner) => { - ::abi_encode_raw(inner, out) - } - Self::setApprovalForAll(inner) => { - ::abi_encode_raw(inner, out) - } - Self::supportsInterface(inner) => { - ::abi_encode_raw(inner, out) - } - Self::tokenByIndex(inner) => { - ::abi_encode_raw(inner, out) - } - Self::tokenOfOwnerByIndex(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::totalSupply(inner) => { - ::abi_encode_raw(inner, out) - } - Self::transferFrom(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - ///Container for all the [`IERC721Enumerable`](self) events. - pub enum IERC721EnumerableEvents { - Approval(Approval), - ApprovalForAll(ApprovalForAll), - Transfer(Transfer), - } - #[automatically_derived] - impl IERC721EnumerableEvents { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[ - [ - 23u8, 48u8, 126u8, 171u8, 57u8, 171u8, 97u8, 7u8, 232u8, 137u8, 152u8, 69u8, 173u8, - 61u8, 89u8, 189u8, 150u8, 83u8, 242u8, 0u8, 242u8, 32u8, 146u8, 4u8, 137u8, 202u8, - 43u8, 89u8, 55u8, 105u8, 108u8, 49u8, - ], - [ - 140u8, 91u8, 225u8, 229u8, 235u8, 236u8, 125u8, 91u8, 209u8, 79u8, 113u8, 66u8, - 125u8, 30u8, 132u8, 243u8, 221u8, 3u8, 20u8, 192u8, 247u8, 178u8, 41u8, 30u8, 91u8, - 32u8, 10u8, 200u8, 199u8, 195u8, 185u8, 37u8, - ], - [ - 221u8, 242u8, 82u8, 173u8, 27u8, 226u8, 200u8, 155u8, 105u8, 194u8, 176u8, 104u8, - 252u8, 55u8, 141u8, 170u8, 149u8, 43u8, 167u8, 241u8, 99u8, 196u8, 161u8, 22u8, - 40u8, 245u8, 90u8, 77u8, 245u8, 35u8, 179u8, 239u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for IERC721EnumerableEvents { - const NAME: &'static str = "IERC721EnumerableEvents"; - const COUNT: usize = 3usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log(topics, data, validate) - .map(Self::Approval) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::ApprovalForAll) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log(topics, data, validate) - .map(Self::Transfer) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for IERC721EnumerableEvents { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::Approval(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner), - Self::ApprovalForAll(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::Transfer(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner), - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::Approval(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::ApprovalForAll(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::Transfer(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IERC721Enumerable`](self) contract instance. - - See the [wrapper's documentation](`IERC721EnumerableInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> IERC721EnumerableInstance { - IERC721EnumerableInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - IERC721EnumerableInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - IERC721EnumerableInstance::::deploy_builder(provider) - } - /**A [`IERC721Enumerable`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IERC721Enumerable`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct IERC721EnumerableInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IERC721EnumerableInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IERC721EnumerableInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC721EnumerableInstance - { - /**Creates a new wrapper around an on-chain [`IERC721Enumerable`](self) contract instance. - - See the [wrapper's documentation](`IERC721EnumerableInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl IERC721EnumerableInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IERC721EnumerableInstance { - IERC721EnumerableInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC721EnumerableInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`approve`] function. - pub fn approve( - &self, - _approved: alloy::sol_types::private::Address, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&approveCall { _approved, _tokenId }) - } - ///Creates a new call builder for the [`balanceOf`] function. - pub fn balanceOf( - &self, - _owner: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&balanceOfCall { _owner }) - } - ///Creates a new call builder for the [`getApproved`] function. - pub fn getApproved( - &self, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getApprovedCall { _tokenId }) - } - ///Creates a new call builder for the [`isApprovedForAll`] function. - pub fn isApprovedForAll( - &self, - _owner: alloy::sol_types::private::Address, - _operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&isApprovedForAllCall { _owner, _operator }) - } - ///Creates a new call builder for the [`ownerOf`] function. - pub fn ownerOf( - &self, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&ownerOfCall { _tokenId }) - } - ///Creates a new call builder for the [`safeTransferFrom_0`] function. - pub fn safeTransferFrom_0( - &self, - _from: alloy::sol_types::private::Address, - _to: alloy::sol_types::private::Address, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&safeTransferFrom_0Call { _from, _to, _tokenId }) - } - ///Creates a new call builder for the [`safeTransferFrom_1`] function. - pub fn safeTransferFrom_1( - &self, - _from: alloy::sol_types::private::Address, - _to: alloy::sol_types::private::Address, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - data: alloy::sol_types::private::Bytes, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&safeTransferFrom_1Call { _from, _to, _tokenId, data }) - } - ///Creates a new call builder for the [`setApprovalForAll`] function. - pub fn setApprovalForAll( - &self, - _operator: alloy::sol_types::private::Address, - _approved: bool, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setApprovalForAllCall { _operator, _approved }) - } - ///Creates a new call builder for the [`supportsInterface`] function. - pub fn supportsInterface( - &self, - interfaceID: alloy::sol_types::private::FixedBytes<4>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&supportsInterfaceCall { interfaceID }) - } - ///Creates a new call builder for the [`tokenByIndex`] function. - pub fn tokenByIndex( - &self, - _index: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&tokenByIndexCall { _index }) - } - ///Creates a new call builder for the [`tokenOfOwnerByIndex`] function. - pub fn tokenOfOwnerByIndex( - &self, - _owner: alloy::sol_types::private::Address, - _index: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&tokenOfOwnerByIndexCall { _owner, _index }) - } - ///Creates a new call builder for the [`totalSupply`] function. - pub fn totalSupply(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&totalSupplyCall {}) - } - ///Creates a new call builder for the [`transferFrom`] function. - pub fn transferFrom( - &self, - _from: alloy::sol_types::private::Address, - _to: alloy::sol_types::private::Address, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&transferFromCall { _from, _to, _tokenId }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC721EnumerableInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`Approval`] event. - pub fn Approval_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`ApprovalForAll`] event. - pub fn ApprovalForAll_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`Transfer`] event. - pub fn Transfer_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/ierc721metadata.rs b/crates/bindings/src/ierc721metadata.rs deleted file mode 100644 index ad738ed0..00000000 --- a/crates/bindings/src/ierc721metadata.rs +++ /dev/null @@ -1,2919 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface IERC721Metadata { - event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId); - event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved); - event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId); - - function approve(address _approved, uint256 _tokenId) external payable; - function balanceOf(address _owner) external view returns (uint256); - function getApproved(uint256 _tokenId) external view returns (address); - function isApprovedForAll(address _owner, address _operator) external view returns (bool); - function name() external view returns (string memory _name); - function ownerOf(uint256 _tokenId) external view returns (address); - function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable; - function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes memory data) external payable; - function setApprovalForAll(address _operator, bool _approved) external; - function supportsInterface(bytes4 interfaceID) external view returns (bool); - function symbol() external view returns (string memory _symbol); - function tokenURI(uint256 _tokenId) external view returns (string memory); - function transferFrom(address _from, address _to, uint256 _tokenId) external payable; -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "approve", - "inputs": [ - { - "name": "_approved", - "type": "address", - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "function", - "name": "balanceOf", - "inputs": [ - { - "name": "_owner", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getApproved", - "inputs": [ - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "isApprovedForAll", - "inputs": [ - { - "name": "_owner", - "type": "address", - "internalType": "address" - }, - { - "name": "_operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "name", - "inputs": [], - "outputs": [ - { - "name": "_name", - "type": "string", - "internalType": "string" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "ownerOf", - "inputs": [ - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "safeTransferFrom", - "inputs": [ - { - "name": "_from", - "type": "address", - "internalType": "address" - }, - { - "name": "_to", - "type": "address", - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "function", - "name": "safeTransferFrom", - "inputs": [ - { - "name": "_from", - "type": "address", - "internalType": "address" - }, - { - "name": "_to", - "type": "address", - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "data", - "type": "bytes", - "internalType": "bytes" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "function", - "name": "setApprovalForAll", - "inputs": [ - { - "name": "_operator", - "type": "address", - "internalType": "address" - }, - { - "name": "_approved", - "type": "bool", - "internalType": "bool" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "supportsInterface", - "inputs": [ - { - "name": "interfaceID", - "type": "bytes4", - "internalType": "bytes4" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "symbol", - "inputs": [], - "outputs": [ - { - "name": "_symbol", - "type": "string", - "internalType": "string" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "tokenURI", - "inputs": [ - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "string", - "internalType": "string" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "transferFrom", - "inputs": [ - { - "name": "_from", - "type": "address", - "internalType": "address" - }, - { - "name": "_to", - "type": "address", - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "event", - "name": "Approval", - "inputs": [ - { - "name": "_owner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_approved", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "ApprovalForAll", - "inputs": [ - { - "name": "_owner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_approved", - "type": "bool", - "indexed": false, - "internalType": "bool" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "Transfer", - "inputs": [ - { - "name": "_from", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_to", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - } - ], - "anonymous": false - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IERC721Metadata { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**Event with signature `Approval(address,address,uint256)` and selector `0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925`. - ```solidity - event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Approval { - #[allow(missing_docs)] - pub _owner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _approved: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Approval { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - const SIGNATURE: &'static str = "Approval(address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 140u8, 91u8, 225u8, 229u8, 235u8, 236u8, 125u8, 91u8, 209u8, 79u8, 113u8, 66u8, - 125u8, 30u8, 132u8, 243u8, 221u8, 3u8, 20u8, 192u8, 247u8, 178u8, 41u8, 30u8, - 91u8, 32u8, 10u8, 200u8, 199u8, 195u8, 185u8, 37u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _owner: topics.1, _approved: topics.2, _tokenId: topics.3 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self._owner.clone(), - self._approved.clone(), - self._tokenId.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._owner, - ); - out[2usize] = ::encode_topic( - &self._approved, - ); - out[3usize] = as alloy_sol_types::EventTopic>::encode_topic(&self._tokenId); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Approval { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Approval> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Approval) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `ApprovalForAll(address,address,bool)` and selector `0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31`. - ```solidity - event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct ApprovalForAll { - #[allow(missing_docs)] - pub _owner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _approved: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for ApprovalForAll { - type DataTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "ApprovalForAll(address,address,bool)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 23u8, 48u8, 126u8, 171u8, 57u8, 171u8, 97u8, 7u8, 232u8, 137u8, 152u8, 69u8, - 173u8, 61u8, 89u8, 189u8, 150u8, 83u8, 242u8, 0u8, 242u8, 32u8, 146u8, 4u8, - 137u8, 202u8, 43u8, 89u8, 55u8, 105u8, 108u8, 49u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _owner: topics.1, _operator: topics.2, _approved: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - (::tokenize( - &self._approved, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self._owner.clone(), self._operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._owner, - ); - out[2usize] = ::encode_topic( - &self._operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ApprovalForAll { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&ApprovalForAll> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &ApprovalForAll) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `Transfer(address,address,uint256)` and selector `0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef`. - ```solidity - event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Transfer { - #[allow(missing_docs)] - pub _from: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _to: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Transfer { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - const SIGNATURE: &'static str = "Transfer(address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 221u8, 242u8, 82u8, 173u8, 27u8, 226u8, 200u8, 155u8, 105u8, 194u8, 176u8, - 104u8, 252u8, 55u8, 141u8, 170u8, 149u8, 43u8, 167u8, 241u8, 99u8, 196u8, - 161u8, 22u8, 40u8, 245u8, 90u8, 77u8, 245u8, 35u8, 179u8, 239u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _from: topics.1, _to: topics.2, _tokenId: topics.3 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self._from.clone(), - self._to.clone(), - self._tokenId.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._from, - ); - out[2usize] = ::encode_topic( - &self._to, - ); - out[3usize] = as alloy_sol_types::EventTopic>::encode_topic(&self._tokenId); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Transfer { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Transfer> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Transfer) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Function with signature `approve(address,uint256)` and selector `0x095ea7b3`. - ```solidity - function approve(address _approved, uint256 _tokenId) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct approveCall { - pub _approved: alloy::sol_types::private::Address, - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`approve(address,uint256)`](approveCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct approveReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: approveCall) -> Self { - (value._approved, value._tokenId) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for approveCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _approved: tuple.0, _tokenId: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: approveReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for approveReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for approveCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = approveReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "approve(address,uint256)"; - const SELECTOR: [u8; 4] = [9u8, 94u8, 167u8, 179u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._approved, - ), - as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `balanceOf(address)` and selector `0x70a08231`. - ```solidity - function balanceOf(address _owner) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct balanceOfCall { - pub _owner: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`balanceOf(address)`](balanceOfCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct balanceOfReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: balanceOfCall) -> Self { - (value._owner,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for balanceOfCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _owner: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: balanceOfReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for balanceOfReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for balanceOfCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = balanceOfReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "balanceOf(address)"; - const SELECTOR: [u8; 4] = [112u8, 160u8, 130u8, 49u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self._owner, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getApproved(uint256)` and selector `0x081812fc`. - ```solidity - function getApproved(uint256 _tokenId) external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApprovedCall { - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`getApproved(uint256)`](getApprovedCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApprovedReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getApprovedCall) -> Self { - (value._tokenId,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApprovedCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _tokenId: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getApprovedReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApprovedReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getApprovedCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getApprovedReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getApproved(uint256)"; - const SELECTOR: [u8; 4] = [8u8, 24u8, 18u8, 252u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `isApprovedForAll(address,address)` and selector `0xe985e9c5`. - ```solidity - function isApprovedForAll(address _owner, address _operator) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isApprovedForAllCall { - pub _owner: alloy::sol_types::private::Address, - pub _operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`isApprovedForAll(address,address)`](isApprovedForAllCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isApprovedForAllReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Address, alloy::sol_types::private::Address); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isApprovedForAllCall) -> Self { - (value._owner, value._operator) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isApprovedForAllCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _owner: tuple.0, _operator: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isApprovedForAllReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isApprovedForAllReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for isApprovedForAllCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = isApprovedForAllReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "isApprovedForAll(address,address)"; - const SELECTOR: [u8; 4] = [233u8, 133u8, 233u8, 197u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._owner, - ), - ::tokenize( - &self._operator, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `name()` and selector `0x06fdde03`. - ```solidity - function name() external view returns (string memory _name); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct nameCall {} - ///Container type for the return parameters of the [`name()`](nameCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct nameReturn { - pub _name: alloy::sol_types::private::String, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: nameCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for nameCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: nameReturn) -> Self { - (value._name,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for nameReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _name: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for nameCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = nameReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "name()"; - const SELECTOR: [u8; 4] = [6u8, 253u8, 222u8, 3u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `ownerOf(uint256)` and selector `0x6352211e`. - ```solidity - function ownerOf(uint256 _tokenId) external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ownerOfCall { - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`ownerOf(uint256)`](ownerOfCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ownerOfReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: ownerOfCall) -> Self { - (value._tokenId,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ownerOfCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _tokenId: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: ownerOfReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ownerOfReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for ownerOfCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = ownerOfReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ownerOf(uint256)"; - const SELECTOR: [u8; 4] = [99u8, 82u8, 33u8, 30u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `safeTransferFrom(address,address,uint256)` and selector `0x42842e0e`. - ```solidity - function safeTransferFrom(address _from, address _to, uint256 _tokenId) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_0Call { - pub _from: alloy::sol_types::private::Address, - pub _to: alloy::sol_types::private::Address, - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`safeTransferFrom(address,address,uint256)`](safeTransferFrom_0Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_0Return {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_0Call) -> Self { - (value._from, value._to, value._tokenId) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_0Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _from: tuple.0, _to: tuple.1, _tokenId: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_0Return) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_0Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for safeTransferFrom_0Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = safeTransferFrom_0Return; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "safeTransferFrom(address,address,uint256)"; - const SELECTOR: [u8; 4] = [66u8, 132u8, 46u8, 14u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._from, - ), - ::tokenize( - &self._to, - ), - as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `safeTransferFrom(address,address,uint256,bytes)` and selector `0xb88d4fde`. - ```solidity - function safeTransferFrom(address _from, address _to, uint256 _tokenId, bytes memory data) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_1Call { - pub _from: alloy::sol_types::private::Address, - pub _to: alloy::sol_types::private::Address, - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - pub data: alloy::sol_types::private::Bytes, - } - ///Container type for the return parameters of the [`safeTransferFrom(address,address,uint256,bytes)`](safeTransferFrom_1Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_1Return {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Bytes, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - alloy::sol_types::private::Bytes, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_1Call) -> Self { - (value._from, value._to, value._tokenId, value.data) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_1Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _from: tuple.0, _to: tuple.1, _tokenId: tuple.2, data: tuple.3 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_1Return) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_1Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for safeTransferFrom_1Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Bytes, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = safeTransferFrom_1Return; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "safeTransferFrom(address,address,uint256,bytes)"; - const SELECTOR: [u8; 4] = [184u8, 141u8, 79u8, 222u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._from, - ), - ::tokenize( - &self._to, - ), - as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ), - ::tokenize( - &self.data, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setApprovalForAll(address,bool)` and selector `0xa22cb465`. - ```solidity - function setApprovalForAll(address _operator, bool _approved) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setApprovalForAllCall { - pub _operator: alloy::sol_types::private::Address, - pub _approved: bool, - } - ///Container type for the return parameters of the [`setApprovalForAll(address,bool)`](setApprovalForAllCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setApprovalForAllReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Bool); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address, bool); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setApprovalForAllCall) -> Self { - (value._operator, value._approved) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setApprovalForAllCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _operator: tuple.0, _approved: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setApprovalForAllReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setApprovalForAllReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setApprovalForAllCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Bool); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setApprovalForAllReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setApprovalForAll(address,bool)"; - const SELECTOR: [u8; 4] = [162u8, 44u8, 180u8, 101u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._operator, - ), - ::tokenize( - &self._approved, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `supportsInterface(bytes4)` and selector `0x01ffc9a7`. - ```solidity - function supportsInterface(bytes4 interfaceID) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct supportsInterfaceCall { - pub interfaceID: alloy::sol_types::private::FixedBytes<4>, - } - ///Container type for the return parameters of the [`supportsInterface(bytes4)`](supportsInterfaceCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct supportsInterfaceReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<4>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: supportsInterfaceCall) -> Self { - (value.interfaceID,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for supportsInterfaceCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { interfaceID: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: supportsInterfaceReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for supportsInterfaceReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for supportsInterfaceCall { - type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = supportsInterfaceReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "supportsInterface(bytes4)"; - const SELECTOR: [u8; 4] = [1u8, 255u8, 201u8, 167u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.interfaceID, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `symbol()` and selector `0x95d89b41`. - ```solidity - function symbol() external view returns (string memory _symbol); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct symbolCall {} - ///Container type for the return parameters of the [`symbol()`](symbolCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct symbolReturn { - pub _symbol: alloy::sol_types::private::String, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: symbolCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for symbolCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: symbolReturn) -> Self { - (value._symbol,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for symbolReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _symbol: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for symbolCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = symbolReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "symbol()"; - const SELECTOR: [u8; 4] = [149u8, 216u8, 155u8, 65u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `tokenURI(uint256)` and selector `0xc87b56dd`. - ```solidity - function tokenURI(uint256 _tokenId) external view returns (string memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct tokenURICall { - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`tokenURI(uint256)`](tokenURICall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct tokenURIReturn { - pub _0: alloy::sol_types::private::String, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: tokenURICall) -> Self { - (value._tokenId,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for tokenURICall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _tokenId: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: tokenURIReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for tokenURIReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for tokenURICall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = tokenURIReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "tokenURI(uint256)"; - const SELECTOR: [u8; 4] = [200u8, 123u8, 86u8, 221u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `transferFrom(address,address,uint256)` and selector `0x23b872dd`. - ```solidity - function transferFrom(address _from, address _to, uint256 _tokenId) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferFromCall { - pub _from: alloy::sol_types::private::Address, - pub _to: alloy::sol_types::private::Address, - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`transferFrom(address,address,uint256)`](transferFromCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferFromReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferFromCall) -> Self { - (value._from, value._to, value._tokenId) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferFromCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _from: tuple.0, _to: tuple.1, _tokenId: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferFromReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferFromReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for transferFromCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = transferFromReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "transferFrom(address,address,uint256)"; - const SELECTOR: [u8; 4] = [35u8, 184u8, 114u8, 221u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._from, - ), - ::tokenize( - &self._to, - ), - as alloy_sol_types::SolType>::tokenize( - &self._tokenId, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`IERC721Metadata`](self) function calls. - pub enum IERC721MetadataCalls { - approve(approveCall), - balanceOf(balanceOfCall), - getApproved(getApprovedCall), - isApprovedForAll(isApprovedForAllCall), - name(nameCall), - ownerOf(ownerOfCall), - safeTransferFrom_0(safeTransferFrom_0Call), - safeTransferFrom_1(safeTransferFrom_1Call), - setApprovalForAll(setApprovalForAllCall), - supportsInterface(supportsInterfaceCall), - symbol(symbolCall), - tokenURI(tokenURICall), - transferFrom(transferFromCall), - } - #[automatically_derived] - impl IERC721MetadataCalls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [1u8, 255u8, 201u8, 167u8], - [6u8, 253u8, 222u8, 3u8], - [8u8, 24u8, 18u8, 252u8], - [9u8, 94u8, 167u8, 179u8], - [35u8, 184u8, 114u8, 221u8], - [66u8, 132u8, 46u8, 14u8], - [99u8, 82u8, 33u8, 30u8], - [112u8, 160u8, 130u8, 49u8], - [149u8, 216u8, 155u8, 65u8], - [162u8, 44u8, 180u8, 101u8], - [184u8, 141u8, 79u8, 222u8], - [200u8, 123u8, 86u8, 221u8], - [233u8, 133u8, 233u8, 197u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for IERC721MetadataCalls { - const NAME: &'static str = "IERC721MetadataCalls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 13usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::approve(_) => ::SELECTOR, - Self::balanceOf(_) => ::SELECTOR, - Self::getApproved(_) => ::SELECTOR, - Self::isApprovedForAll(_) => { - ::SELECTOR - } - Self::name(_) => ::SELECTOR, - Self::ownerOf(_) => ::SELECTOR, - Self::safeTransferFrom_0(_) => { - ::SELECTOR - } - Self::safeTransferFrom_1(_) => { - ::SELECTOR - } - Self::setApprovalForAll(_) => { - ::SELECTOR - } - Self::supportsInterface(_) => { - ::SELECTOR - } - Self::symbol(_) => ::SELECTOR, - Self::tokenURI(_) => ::SELECTOR, - Self::transferFrom(_) => ::SELECTOR, - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn( - &[u8], - bool, - ) - -> alloy_sol_types::Result] = &[ - { - fn supportsInterface( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721MetadataCalls::supportsInterface) - } - supportsInterface - }, - { - fn name( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC721MetadataCalls::name) - } - name - }, - { - fn getApproved( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721MetadataCalls::getApproved) - } - getApproved - }, - { - fn approve( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC721MetadataCalls::approve) - } - approve - }, - { - fn transferFrom( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721MetadataCalls::transferFrom) - } - transferFrom - }, - { - fn safeTransferFrom_0( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721MetadataCalls::safeTransferFrom_0) - } - safeTransferFrom_0 - }, - { - fn ownerOf( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC721MetadataCalls::ownerOf) - } - ownerOf - }, - { - fn balanceOf( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC721MetadataCalls::balanceOf) - } - balanceOf - }, - { - fn symbol( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC721MetadataCalls::symbol) - } - symbol - }, - { - fn setApprovalForAll( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721MetadataCalls::setApprovalForAll) - } - setApprovalForAll - }, - { - fn safeTransferFrom_1( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721MetadataCalls::safeTransferFrom_1) - } - safeTransferFrom_1 - }, - { - fn tokenURI( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IERC721MetadataCalls::tokenURI) - } - tokenURI - }, - { - fn isApprovedForAll( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721MetadataCalls::isApprovedForAll) - } - isApprovedForAll - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::approve(inner) => { - ::abi_encoded_size(inner) - } - Self::balanceOf(inner) => { - ::abi_encoded_size(inner) - } - Self::getApproved(inner) => { - ::abi_encoded_size(inner) - } - Self::isApprovedForAll(inner) => { - ::abi_encoded_size(inner) - } - Self::name(inner) => { - ::abi_encoded_size(inner) - } - Self::ownerOf(inner) => { - ::abi_encoded_size(inner) - } - Self::safeTransferFrom_0(inner) => { - ::abi_encoded_size(inner) - } - Self::safeTransferFrom_1(inner) => { - ::abi_encoded_size(inner) - } - Self::setApprovalForAll(inner) => { - ::abi_encoded_size(inner) - } - Self::supportsInterface(inner) => { - ::abi_encoded_size(inner) - } - Self::symbol(inner) => { - ::abi_encoded_size(inner) - } - Self::tokenURI(inner) => { - ::abi_encoded_size(inner) - } - Self::transferFrom(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::approve(inner) => { - ::abi_encode_raw(inner, out) - } - Self::balanceOf(inner) => { - ::abi_encode_raw(inner, out) - } - Self::getApproved(inner) => { - ::abi_encode_raw(inner, out) - } - Self::isApprovedForAll(inner) => { - ::abi_encode_raw(inner, out) - } - Self::name(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ownerOf(inner) => { - ::abi_encode_raw(inner, out) - } - Self::safeTransferFrom_0(inner) => { - ::abi_encode_raw(inner, out) - } - Self::safeTransferFrom_1(inner) => { - ::abi_encode_raw(inner, out) - } - Self::setApprovalForAll(inner) => { - ::abi_encode_raw(inner, out) - } - Self::supportsInterface(inner) => { - ::abi_encode_raw(inner, out) - } - Self::symbol(inner) => { - ::abi_encode_raw(inner, out) - } - Self::tokenURI(inner) => { - ::abi_encode_raw(inner, out) - } - Self::transferFrom(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - ///Container for all the [`IERC721Metadata`](self) events. - pub enum IERC721MetadataEvents { - Approval(Approval), - ApprovalForAll(ApprovalForAll), - Transfer(Transfer), - } - #[automatically_derived] - impl IERC721MetadataEvents { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[ - [ - 23u8, 48u8, 126u8, 171u8, 57u8, 171u8, 97u8, 7u8, 232u8, 137u8, 152u8, 69u8, 173u8, - 61u8, 89u8, 189u8, 150u8, 83u8, 242u8, 0u8, 242u8, 32u8, 146u8, 4u8, 137u8, 202u8, - 43u8, 89u8, 55u8, 105u8, 108u8, 49u8, - ], - [ - 140u8, 91u8, 225u8, 229u8, 235u8, 236u8, 125u8, 91u8, 209u8, 79u8, 113u8, 66u8, - 125u8, 30u8, 132u8, 243u8, 221u8, 3u8, 20u8, 192u8, 247u8, 178u8, 41u8, 30u8, 91u8, - 32u8, 10u8, 200u8, 199u8, 195u8, 185u8, 37u8, - ], - [ - 221u8, 242u8, 82u8, 173u8, 27u8, 226u8, 200u8, 155u8, 105u8, 194u8, 176u8, 104u8, - 252u8, 55u8, 141u8, 170u8, 149u8, 43u8, 167u8, 241u8, 99u8, 196u8, 161u8, 22u8, - 40u8, 245u8, 90u8, 77u8, 245u8, 35u8, 179u8, 239u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for IERC721MetadataEvents { - const NAME: &'static str = "IERC721MetadataEvents"; - const COUNT: usize = 3usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log(topics, data, validate) - .map(Self::Approval) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::ApprovalForAll) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log(topics, data, validate) - .map(Self::Transfer) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for IERC721MetadataEvents { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::Approval(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner), - Self::ApprovalForAll(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::Transfer(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner), - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::Approval(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::ApprovalForAll(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::Transfer(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IERC721Metadata`](self) contract instance. - - See the [wrapper's documentation](`IERC721MetadataInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> IERC721MetadataInstance { - IERC721MetadataInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - IERC721MetadataInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - IERC721MetadataInstance::::deploy_builder(provider) - } - /**A [`IERC721Metadata`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IERC721Metadata`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct IERC721MetadataInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IERC721MetadataInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IERC721MetadataInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC721MetadataInstance - { - /**Creates a new wrapper around an on-chain [`IERC721Metadata`](self) contract instance. - - See the [wrapper's documentation](`IERC721MetadataInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl IERC721MetadataInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IERC721MetadataInstance { - IERC721MetadataInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC721MetadataInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`approve`] function. - pub fn approve( - &self, - _approved: alloy::sol_types::private::Address, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&approveCall { _approved, _tokenId }) - } - ///Creates a new call builder for the [`balanceOf`] function. - pub fn balanceOf( - &self, - _owner: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&balanceOfCall { _owner }) - } - ///Creates a new call builder for the [`getApproved`] function. - pub fn getApproved( - &self, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getApprovedCall { _tokenId }) - } - ///Creates a new call builder for the [`isApprovedForAll`] function. - pub fn isApprovedForAll( - &self, - _owner: alloy::sol_types::private::Address, - _operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&isApprovedForAllCall { _owner, _operator }) - } - ///Creates a new call builder for the [`name`] function. - pub fn name(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&nameCall {}) - } - ///Creates a new call builder for the [`ownerOf`] function. - pub fn ownerOf( - &self, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&ownerOfCall { _tokenId }) - } - ///Creates a new call builder for the [`safeTransferFrom_0`] function. - pub fn safeTransferFrom_0( - &self, - _from: alloy::sol_types::private::Address, - _to: alloy::sol_types::private::Address, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&safeTransferFrom_0Call { _from, _to, _tokenId }) - } - ///Creates a new call builder for the [`safeTransferFrom_1`] function. - pub fn safeTransferFrom_1( - &self, - _from: alloy::sol_types::private::Address, - _to: alloy::sol_types::private::Address, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - data: alloy::sol_types::private::Bytes, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&safeTransferFrom_1Call { _from, _to, _tokenId, data }) - } - ///Creates a new call builder for the [`setApprovalForAll`] function. - pub fn setApprovalForAll( - &self, - _operator: alloy::sol_types::private::Address, - _approved: bool, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setApprovalForAllCall { _operator, _approved }) - } - ///Creates a new call builder for the [`supportsInterface`] function. - pub fn supportsInterface( - &self, - interfaceID: alloy::sol_types::private::FixedBytes<4>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&supportsInterfaceCall { interfaceID }) - } - ///Creates a new call builder for the [`symbol`] function. - pub fn symbol(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&symbolCall {}) - } - ///Creates a new call builder for the [`tokenURI`] function. - pub fn tokenURI( - &self, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&tokenURICall { _tokenId }) - } - ///Creates a new call builder for the [`transferFrom`] function. - pub fn transferFrom( - &self, - _from: alloy::sol_types::private::Address, - _to: alloy::sol_types::private::Address, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&transferFromCall { _from, _to, _tokenId }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IERC721MetadataInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`Approval`] event. - pub fn Approval_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`ApprovalForAll`] event. - pub fn ApprovalForAll_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`Transfer`] event. - pub fn Transfer_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/iservicehandler.rs b/crates/bindings/src/ilayerservicehandler.rs similarity index 77% rename from crates/bindings/src/iservicehandler.rs rename to crates/bindings/src/ilayerservicehandler.rs index 7179967d..0f916343 100644 --- a/crates/bindings/src/iservicehandler.rs +++ b/crates/bindings/src/ilayerservicehandler.rs @@ -2,8 +2,8 @@ Generated by the following Solidity interface... ```solidity -interface IServiceHandler { - function handleAddPayload(bytes memory data, bytes memory signature) external; +interface ILayerServiceHandler { + function handleSignedData(bytes memory data, bytes memory signature) external; } ``` @@ -12,7 +12,7 @@ interface IServiceHandler { [ { "type": "function", - "name": "handleAddPayload", + "name": "handleSignedData", "inputs": [ { "name": "data", @@ -37,7 +37,7 @@ interface IServiceHandler { clippy::style, clippy::empty_structs_with_brackets )] -pub mod IServiceHandler { +pub mod ILayerServiceHandler { use super::*; use alloy::sol_types as alloy_sol_types; /// The creation / init bytecode of the contract. @@ -60,20 +60,20 @@ pub mod IServiceHandler { pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( b"", ); - /**Function with signature `handleAddPayload(bytes,bytes)` and selector `0x0073e1d7`. + /**Function with signature `handleSignedData(bytes,bytes)` and selector `0xed022648`. ```solidity - function handleAddPayload(bytes memory data, bytes memory signature) external; + function handleSignedData(bytes memory data, bytes memory signature) external; ```*/ #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] #[derive(Clone)] - pub struct handleAddPayloadCall { + pub struct handleSignedDataCall { pub data: alloy::sol_types::private::Bytes, pub signature: alloy::sol_types::private::Bytes, } - ///Container type for the return parameters of the [`handleAddPayload(bytes,bytes)`](handleAddPayloadCall) function. + ///Container type for the return parameters of the [`handleSignedData(bytes,bytes)`](handleSignedDataCall) function. #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] #[derive(Clone)] - pub struct handleAddPayloadReturn {} + pub struct handleSignedDataReturn {} #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] const _: () = { use alloy::sol_types as alloy_sol_types; @@ -95,14 +95,14 @@ pub mod IServiceHandler { } #[automatically_derived] #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: handleAddPayloadCall) -> Self { + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: handleSignedDataCall) -> Self { (value.data, value.signature) } } #[automatically_derived] #[doc(hidden)] - impl ::core::convert::From> for handleAddPayloadCall { + impl ::core::convert::From> for handleSignedDataCall { fn from(tuple: UnderlyingRustTuple<'_>) -> Self { Self { data: tuple.0, signature: tuple.1 } } @@ -124,29 +124,29 @@ pub mod IServiceHandler { } #[automatically_derived] #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: handleAddPayloadReturn) -> Self { + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: handleSignedDataReturn) -> Self { () } } #[automatically_derived] #[doc(hidden)] - impl ::core::convert::From> for handleAddPayloadReturn { + impl ::core::convert::From> for handleSignedDataReturn { fn from(tuple: UnderlyingRustTuple<'_>) -> Self { Self {} } } } #[automatically_derived] - impl alloy_sol_types::SolCall for handleAddPayloadCall { + impl alloy_sol_types::SolCall for handleSignedDataCall { type Parameters<'a> = (alloy::sol_types::sol_data::Bytes, alloy::sol_types::sol_data::Bytes); type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = handleAddPayloadReturn; + type Return = handleSignedDataReturn; type ReturnTuple<'a> = (); type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "handleAddPayload(bytes,bytes)"; - const SELECTOR: [u8; 4] = [0u8, 115u8, 225u8, 215u8]; + const SIGNATURE: &'static str = "handleSignedData(bytes,bytes)"; + const SELECTOR: [u8; 4] = [237u8, 2u8, 38u8, 72u8]; #[inline] fn new<'a>( tuple: as alloy_sol_types::SolType>::RustType, @@ -176,30 +176,30 @@ pub mod IServiceHandler { } } }; - ///Container for all the [`IServiceHandler`](self) function calls. - pub enum IServiceHandlerCalls { - handleAddPayload(handleAddPayloadCall), + ///Container for all the [`ILayerServiceHandler`](self) function calls. + pub enum ILayerServiceHandlerCalls { + handleSignedData(handleSignedDataCall), } #[automatically_derived] - impl IServiceHandlerCalls { + impl ILayerServiceHandlerCalls { /// All the selectors of this enum. /// /// Note that the selectors might not be in the same order as the variants. /// No guarantees are made about the order of the selectors. /// /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[[0u8, 115u8, 225u8, 215u8]]; + pub const SELECTORS: &'static [[u8; 4usize]] = &[[237u8, 2u8, 38u8, 72u8]]; } #[automatically_derived] - impl alloy_sol_types::SolInterface for IServiceHandlerCalls { - const NAME: &'static str = "IServiceHandlerCalls"; + impl alloy_sol_types::SolInterface for ILayerServiceHandlerCalls { + const NAME: &'static str = "ILayerServiceHandlerCalls"; const MIN_DATA_LENGTH: usize = 128usize; const COUNT: usize = 1usize; #[inline] fn selector(&self) -> [u8; 4] { match self { - Self::handleAddPayload(_) => { - ::SELECTOR + Self::handleSignedData(_) => { + ::SELECTOR } } } @@ -222,17 +222,17 @@ pub mod IServiceHandler { &[u8], bool, ) - -> alloy_sol_types::Result] = &[{ - fn handleAddPayload( + -> alloy_sol_types::Result] = &[{ + fn handleSignedData( data: &[u8], validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( + ) -> alloy_sol_types::Result { + ::abi_decode_raw( data, validate, ) - .map(IServiceHandlerCalls::handleAddPayload) + .map(ILayerServiceHandlerCalls::handleSignedData) } - handleAddPayload + handleSignedData }]; let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { return Err(alloy_sol_types::Error::unknown_selector( @@ -245,24 +245,24 @@ pub mod IServiceHandler { #[inline] fn abi_encoded_size(&self) -> usize { match self { - Self::handleAddPayload(inner) => { - ::abi_encoded_size(inner) + Self::handleSignedData(inner) => { + ::abi_encoded_size(inner) } } } #[inline] fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { match self { - Self::handleAddPayload(inner) => { - ::abi_encode_raw(inner, out) + Self::handleSignedData(inner) => { + ::abi_encode_raw(inner, out) } } } } use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IServiceHandler`](self) contract instance. + /**Creates a new wrapper around an on-chain [`ILayerServiceHandler`](self) contract instance. - See the [wrapper's documentation](`IServiceHandlerInstance`) for more details.*/ + See the [wrapper's documentation](`ILayerServiceHandlerInstance`) for more details.*/ #[inline] pub const fn new< T: alloy_contract::private::Transport + ::core::clone::Clone, @@ -271,8 +271,8 @@ pub mod IServiceHandler { >( address: alloy_sol_types::private::Address, provider: P, - ) -> IServiceHandlerInstance { - IServiceHandlerInstance::::new(address, provider) + ) -> ILayerServiceHandlerInstance { + ILayerServiceHandlerInstance::::new(address, provider) } /**Deploys this contract using the given `provider` and constructor arguments, if any. @@ -286,9 +286,10 @@ pub mod IServiceHandler { N: alloy_contract::private::Network, >( provider: P, - ) -> impl ::core::future::Future>> - { - IServiceHandlerInstance::::deploy(provider) + ) -> impl ::core::future::Future< + Output = alloy_contract::Result>, + > { + ILayerServiceHandlerInstance::::deploy(provider) } /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` and constructor arguments, if any. @@ -303,12 +304,12 @@ pub mod IServiceHandler { >( provider: P, ) -> alloy_contract::RawCallBuilder { - IServiceHandlerInstance::::deploy_builder(provider) + ILayerServiceHandlerInstance::::deploy_builder(provider) } - /**A [`IServiceHandler`](self) instance. + /**A [`ILayerServiceHandler`](self) instance. Contains type-safe methods for interacting with an on-chain instance of the - [`IServiceHandler`](self) contract located at a given `address`, using a given + [`ILayerServiceHandler`](self) contract located at a given `address`, using a given provider `P`. If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) @@ -317,16 +318,16 @@ pub mod IServiceHandler { See the [module-level documentation](self) for all the available methods.*/ #[derive(Clone)] - pub struct IServiceHandlerInstance { + pub struct ILayerServiceHandlerInstance { address: alloy_sol_types::private::Address, provider: P, _network_transport: ::core::marker::PhantomData<(N, T)>, } #[automatically_derived] - impl ::core::fmt::Debug for IServiceHandlerInstance { + impl ::core::fmt::Debug for ILayerServiceHandlerInstance { #[inline] fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IServiceHandlerInstance").field(&self.address).finish() + f.debug_tuple("ILayerServiceHandlerInstance").field(&self.address).finish() } } /// Instantiation and getters/setters. @@ -335,11 +336,11 @@ pub mod IServiceHandler { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > IServiceHandlerInstance + > ILayerServiceHandlerInstance { - /**Creates a new wrapper around an on-chain [`IServiceHandler`](self) contract instance. + /**Creates a new wrapper around an on-chain [`ILayerServiceHandler`](self) contract instance. - See the [wrapper's documentation](`IServiceHandlerInstance`) for more details.*/ + See the [wrapper's documentation](`ILayerServiceHandlerInstance`) for more details.*/ #[inline] pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { Self { address, provider, _network_transport: ::core::marker::PhantomData } @@ -352,7 +353,7 @@ pub mod IServiceHandler { #[inline] pub async fn deploy( provider: P, - ) -> alloy_contract::Result> { + ) -> alloy_contract::Result> { let call_builder = Self::deploy_builder(provider); let contract_address = call_builder.deploy().await?; Ok(Self::new(contract_address, call_builder.provider)) @@ -390,11 +391,11 @@ pub mod IServiceHandler { &self.provider } } - impl IServiceHandlerInstance { + impl ILayerServiceHandlerInstance { /// Clones the provider and returns a new instance with the cloned provider. #[inline] - pub fn with_cloned_provider(self) -> IServiceHandlerInstance { - IServiceHandlerInstance { + pub fn with_cloned_provider(self) -> ILayerServiceHandlerInstance { + ILayerServiceHandlerInstance { address: self.address, provider: ::core::clone::Clone::clone(&self.provider), _network_transport: ::core::marker::PhantomData, @@ -407,7 +408,7 @@ pub mod IServiceHandler { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > IServiceHandlerInstance + > ILayerServiceHandlerInstance { /// Creates a new call builder using this contract instance's provider and address. /// @@ -419,13 +420,13 @@ pub mod IServiceHandler { ) -> alloy_contract::SolCallBuilder { alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) } - ///Creates a new call builder for the [`handleAddPayload`] function. - pub fn handleAddPayload( + ///Creates a new call builder for the [`handleSignedData`] function. + pub fn handleSignedData( &self, data: alloy::sol_types::private::Bytes, signature: alloy::sol_types::private::Bytes, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&handleAddPayloadCall { data, signature }) + ) -> alloy_contract::SolCallBuilder { + self.call_builder(&handleSignedDataCall { data, signature }) } } /// Event filters. @@ -434,7 +435,7 @@ pub mod IServiceHandler { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > IServiceHandlerInstance + > ILayerServiceHandlerInstance { /// Creates a new event filter using this contract instance's provider and address. /// diff --git a/crates/bindings/src/ierc721tokenreceiver.rs b/crates/bindings/src/ilayerservicemanager.rs similarity index 55% rename from crates/bindings/src/ierc721tokenreceiver.rs rename to crates/bindings/src/ilayerservicemanager.rs index ef079871..b937e274 100644 --- a/crates/bindings/src/ierc721tokenreceiver.rs +++ b/crates/bindings/src/ilayerservicemanager.rs @@ -2,8 +2,10 @@ Generated by the following Solidity interface... ```solidity -interface IERC721TokenReceiver { - function onERC721Received(address _operator, address _from, uint256 _tokenId, bytes memory _data) external returns (bytes4); +interface ILayerServiceManager { + error InvalidSignature(); + + function validate(bytes memory data, bytes memory signature) external view; } ``` @@ -12,37 +14,26 @@ interface IERC721TokenReceiver { [ { "type": "function", - "name": "onERC721Received", + "name": "validate", "inputs": [ { - "name": "_operator", - "type": "address", - "internalType": "address" - }, - { - "name": "_from", - "type": "address", - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "internalType": "uint256" + "name": "data", + "type": "bytes", + "internalType": "bytes" }, { - "name": "_data", + "name": "signature", "type": "bytes", "internalType": "bytes" } ], - "outputs": [ - { - "name": "", - "type": "bytes4", - "internalType": "bytes4" - } - ], - "stateMutability": "nonpayable" + "outputs": [], + "stateMutability": "view" + }, + { + "type": "error", + "name": "InvalidSignature", + "inputs": [] } ] ```*/ @@ -53,7 +44,7 @@ interface IERC721TokenReceiver { clippy::style, clippy::empty_structs_with_brackets )] -pub mod IERC721TokenReceiver { +pub mod ILayerServiceManager { use super::*; use alloy::sol_types as alloy_sol_types; /// The creation / init bytecode of the contract. @@ -76,42 +67,85 @@ pub mod IERC721TokenReceiver { pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( b"", ); - /**Function with signature `onERC721Received(address,address,uint256,bytes)` and selector `0x150b7a02`. + /**Custom error with signature `InvalidSignature()` and selector `0x8baa579f`. ```solidity - function onERC721Received(address _operator, address _from, uint256 _tokenId, bytes memory _data) external returns (bytes4); + error InvalidSignature(); ```*/ #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] #[derive(Clone)] - pub struct onERC721ReceivedCall { - pub _operator: alloy::sol_types::private::Address, - pub _from: alloy::sol_types::private::Address, - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - pub _data: alloy::sol_types::private::Bytes, - } - ///Container type for the return parameters of the [`onERC721Received(address,address,uint256,bytes)`](onERC721ReceivedCall) function. + pub struct InvalidSignature {} + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] + const _: () = { + use alloy::sol_types as alloy_sol_types; + #[doc(hidden)] + type UnderlyingSolTuple<'a> = (); + #[doc(hidden)] + type UnderlyingRustTuple<'a> = (); + #[cfg(test)] + #[allow(dead_code, unreachable_patterns)] + fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { + match _t { + alloy_sol_types::private::AssertTypeEq::< + ::RustType, + >(_) => {} + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: InvalidSignature) -> Self { + () + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From> for InvalidSignature { + fn from(tuple: UnderlyingRustTuple<'_>) -> Self { + Self {} + } + } + #[automatically_derived] + impl alloy_sol_types::SolError for InvalidSignature { + type Parameters<'a> = UnderlyingSolTuple<'a>; + type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; + const SIGNATURE: &'static str = "InvalidSignature()"; + const SELECTOR: [u8; 4] = [139u8, 170u8, 87u8, 159u8]; + #[inline] + fn new<'a>( + tuple: as alloy_sol_types::SolType>::RustType, + ) -> Self { + tuple.into() + } + #[inline] + fn tokenize(&self) -> Self::Token<'_> { + () + } + } + }; + /**Function with signature `validate(bytes,bytes)` and selector `0x2a3e7f3b`. + ```solidity + function validate(bytes memory data, bytes memory signature) external view; + ```*/ #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] #[derive(Clone)] - pub struct onERC721ReceivedReturn { - pub _0: alloy::sol_types::private::FixedBytes<4>, + pub struct validateCall { + pub data: alloy::sol_types::private::Bytes, + pub signature: alloy::sol_types::private::Bytes, } + ///Container type for the return parameters of the [`validate(bytes,bytes)`](validateCall) function. + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] + #[derive(Clone)] + pub struct validateReturn {} #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] const _: () = { use alloy::sol_types as alloy_sol_types; { #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Bytes, - ); + type UnderlyingSolTuple<'a> = + (alloy::sol_types::sol_data::Bytes, alloy::sol_types::sol_data::Bytes); #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - alloy::sol_types::private::Bytes, - ); + type UnderlyingRustTuple<'a> = + (alloy::sol_types::private::Bytes, alloy::sol_types::private::Bytes); #[cfg(test)] #[allow(dead_code, unreachable_patterns)] fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { @@ -123,24 +157,24 @@ pub mod IERC721TokenReceiver { } #[automatically_derived] #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: onERC721ReceivedCall) -> Self { - (value._operator, value._from, value._tokenId, value._data) + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: validateCall) -> Self { + (value.data, value.signature) } } #[automatically_derived] #[doc(hidden)] - impl ::core::convert::From> for onERC721ReceivedCall { + impl ::core::convert::From> for validateCall { fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _operator: tuple.0, _from: tuple.1, _tokenId: tuple.2, _data: tuple.3 } + Self { data: tuple.0, signature: tuple.1 } } } } { #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); + type UnderlyingSolTuple<'a> = (); #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<4>,); + type UnderlyingRustTuple<'a> = (); #[cfg(test)] #[allow(dead_code, unreachable_patterns)] fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { @@ -152,33 +186,29 @@ pub mod IERC721TokenReceiver { } #[automatically_derived] #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: onERC721ReceivedReturn) -> Self { - (value._0,) + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: validateReturn) -> Self { + () } } #[automatically_derived] #[doc(hidden)] - impl ::core::convert::From> for onERC721ReceivedReturn { + impl ::core::convert::From> for validateReturn { fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } + Self {} } } } #[automatically_derived] - impl alloy_sol_types::SolCall for onERC721ReceivedCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Bytes, - ); + impl alloy_sol_types::SolCall for validateCall { + type Parameters<'a> = + (alloy::sol_types::sol_data::Bytes, alloy::sol_types::sol_data::Bytes); type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = onERC721ReceivedReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); + type Return = validateReturn; + type ReturnTuple<'a> = (); type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "onERC721Received(address,address,uint256,bytes)"; - const SELECTOR: [u8; 4] = [21u8, 11u8, 122u8, 2u8]; + const SIGNATURE: &'static str = "validate(bytes,bytes)"; + const SELECTOR: [u8; 4] = [42u8, 62u8, 127u8, 59u8]; #[inline] fn new<'a>( tuple: as alloy_sol_types::SolType>::RustType, @@ -188,17 +218,11 @@ pub mod IERC721TokenReceiver { #[inline] fn tokenize(&self) -> Self::Token<'_> { ( - ::tokenize( - &self._operator, - ), - ::tokenize( - &self._from, - ), - as alloy_sol_types::SolType>::tokenize( - &self._tokenId, + ::tokenize( + &self.data, ), ::tokenize( - &self._data, + &self.signature, ), ) } @@ -214,30 +238,109 @@ pub mod IERC721TokenReceiver { } } }; - ///Container for all the [`IERC721TokenReceiver`](self) function calls. - pub enum IERC721TokenReceiverCalls { - onERC721Received(onERC721ReceivedCall), + ///Container for all the [`ILayerServiceManager`](self) function calls. + pub enum ILayerServiceManagerCalls { + validate(validateCall), + } + #[automatically_derived] + impl ILayerServiceManagerCalls { + /// All the selectors of this enum. + /// + /// Note that the selectors might not be in the same order as the variants. + /// No guarantees are made about the order of the selectors. + /// + /// Prefer using `SolInterface` methods instead. + pub const SELECTORS: &'static [[u8; 4usize]] = &[[42u8, 62u8, 127u8, 59u8]]; + } + #[automatically_derived] + impl alloy_sol_types::SolInterface for ILayerServiceManagerCalls { + const NAME: &'static str = "ILayerServiceManagerCalls"; + const MIN_DATA_LENGTH: usize = 128usize; + const COUNT: usize = 1usize; + #[inline] + fn selector(&self) -> [u8; 4] { + match self { + Self::validate(_) => ::SELECTOR, + } + } + #[inline] + fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { + Self::SELECTORS.get(i).copied() + } + #[inline] + fn valid_selector(selector: [u8; 4]) -> bool { + Self::SELECTORS.binary_search(&selector).is_ok() + } + #[inline] + #[allow(non_snake_case)] + fn abi_decode_raw( + selector: [u8; 4], + data: &[u8], + validate: bool, + ) -> alloy_sol_types::Result { + static DECODE_SHIMS: &[fn( + &[u8], + bool, + ) + -> alloy_sol_types::Result] = &[{ + fn validate( + data: &[u8], + validate: bool, + ) -> alloy_sol_types::Result { + ::abi_decode_raw(data, validate) + .map(ILayerServiceManagerCalls::validate) + } + validate + }]; + let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { + return Err(alloy_sol_types::Error::unknown_selector( + ::NAME, + selector, + )); + }; + DECODE_SHIMS[idx](data, validate) + } + #[inline] + fn abi_encoded_size(&self) -> usize { + match self { + Self::validate(inner) => { + ::abi_encoded_size(inner) + } + } + } + #[inline] + fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { + match self { + Self::validate(inner) => { + ::abi_encode_raw(inner, out) + } + } + } + } + ///Container for all the [`ILayerServiceManager`](self) custom errors. + pub enum ILayerServiceManagerErrors { + InvalidSignature(InvalidSignature), } #[automatically_derived] - impl IERC721TokenReceiverCalls { + impl ILayerServiceManagerErrors { /// All the selectors of this enum. /// /// Note that the selectors might not be in the same order as the variants. /// No guarantees are made about the order of the selectors. /// /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[[21u8, 11u8, 122u8, 2u8]]; + pub const SELECTORS: &'static [[u8; 4usize]] = &[[139u8, 170u8, 87u8, 159u8]]; } #[automatically_derived] - impl alloy_sol_types::SolInterface for IERC721TokenReceiverCalls { - const NAME: &'static str = "IERC721TokenReceiverCalls"; - const MIN_DATA_LENGTH: usize = 160usize; + impl alloy_sol_types::SolInterface for ILayerServiceManagerErrors { + const NAME: &'static str = "ILayerServiceManagerErrors"; + const MIN_DATA_LENGTH: usize = 0usize; const COUNT: usize = 1usize; #[inline] fn selector(&self) -> [u8; 4] { match self { - Self::onERC721Received(_) => { - ::SELECTOR + Self::InvalidSignature(_) => { + ::SELECTOR } } } @@ -260,17 +363,15 @@ pub mod IERC721TokenReceiver { &[u8], bool, ) - -> alloy_sol_types::Result] = &[{ - fn onERC721Received( + -> alloy_sol_types::Result] = &[{ + fn InvalidSignature( data: &[u8], validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IERC721TokenReceiverCalls::onERC721Received) + ) -> alloy_sol_types::Result { + ::abi_decode_raw(data, validate) + .map(ILayerServiceManagerErrors::InvalidSignature) } - onERC721Received + InvalidSignature }]; let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { return Err(alloy_sol_types::Error::unknown_selector( @@ -283,24 +384,24 @@ pub mod IERC721TokenReceiver { #[inline] fn abi_encoded_size(&self) -> usize { match self { - Self::onERC721Received(inner) => { - ::abi_encoded_size(inner) + Self::InvalidSignature(inner) => { + ::abi_encoded_size(inner) } } } #[inline] fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { match self { - Self::onERC721Received(inner) => { - ::abi_encode_raw(inner, out) + Self::InvalidSignature(inner) => { + ::abi_encode_raw(inner, out) } } } } use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IERC721TokenReceiver`](self) contract instance. + /**Creates a new wrapper around an on-chain [`ILayerServiceManager`](self) contract instance. - See the [wrapper's documentation](`IERC721TokenReceiverInstance`) for more details.*/ + See the [wrapper's documentation](`ILayerServiceManagerInstance`) for more details.*/ #[inline] pub const fn new< T: alloy_contract::private::Transport + ::core::clone::Clone, @@ -309,8 +410,8 @@ pub mod IERC721TokenReceiver { >( address: alloy_sol_types::private::Address, provider: P, - ) -> IERC721TokenReceiverInstance { - IERC721TokenReceiverInstance::::new(address, provider) + ) -> ILayerServiceManagerInstance { + ILayerServiceManagerInstance::::new(address, provider) } /**Deploys this contract using the given `provider` and constructor arguments, if any. @@ -325,9 +426,9 @@ pub mod IERC721TokenReceiver { >( provider: P, ) -> impl ::core::future::Future< - Output = alloy_contract::Result>, + Output = alloy_contract::Result>, > { - IERC721TokenReceiverInstance::::deploy(provider) + ILayerServiceManagerInstance::::deploy(provider) } /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` and constructor arguments, if any. @@ -342,12 +443,12 @@ pub mod IERC721TokenReceiver { >( provider: P, ) -> alloy_contract::RawCallBuilder { - IERC721TokenReceiverInstance::::deploy_builder(provider) + ILayerServiceManagerInstance::::deploy_builder(provider) } - /**A [`IERC721TokenReceiver`](self) instance. + /**A [`ILayerServiceManager`](self) instance. Contains type-safe methods for interacting with an on-chain instance of the - [`IERC721TokenReceiver`](self) contract located at a given `address`, using a given + [`ILayerServiceManager`](self) contract located at a given `address`, using a given provider `P`. If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) @@ -356,16 +457,16 @@ pub mod IERC721TokenReceiver { See the [module-level documentation](self) for all the available methods.*/ #[derive(Clone)] - pub struct IERC721TokenReceiverInstance { + pub struct ILayerServiceManagerInstance { address: alloy_sol_types::private::Address, provider: P, _network_transport: ::core::marker::PhantomData<(N, T)>, } #[automatically_derived] - impl ::core::fmt::Debug for IERC721TokenReceiverInstance { + impl ::core::fmt::Debug for ILayerServiceManagerInstance { #[inline] fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IERC721TokenReceiverInstance").field(&self.address).finish() + f.debug_tuple("ILayerServiceManagerInstance").field(&self.address).finish() } } /// Instantiation and getters/setters. @@ -374,11 +475,11 @@ pub mod IERC721TokenReceiver { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > IERC721TokenReceiverInstance + > ILayerServiceManagerInstance { - /**Creates a new wrapper around an on-chain [`IERC721TokenReceiver`](self) contract instance. + /**Creates a new wrapper around an on-chain [`ILayerServiceManager`](self) contract instance. - See the [wrapper's documentation](`IERC721TokenReceiverInstance`) for more details.*/ + See the [wrapper's documentation](`ILayerServiceManagerInstance`) for more details.*/ #[inline] pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { Self { address, provider, _network_transport: ::core::marker::PhantomData } @@ -391,7 +492,7 @@ pub mod IERC721TokenReceiver { #[inline] pub async fn deploy( provider: P, - ) -> alloy_contract::Result> { + ) -> alloy_contract::Result> { let call_builder = Self::deploy_builder(provider); let contract_address = call_builder.deploy().await?; Ok(Self::new(contract_address, call_builder.provider)) @@ -429,11 +530,11 @@ pub mod IERC721TokenReceiver { &self.provider } } - impl IERC721TokenReceiverInstance { + impl ILayerServiceManagerInstance { /// Clones the provider and returns a new instance with the cloned provider. #[inline] - pub fn with_cloned_provider(self) -> IERC721TokenReceiverInstance { - IERC721TokenReceiverInstance { + pub fn with_cloned_provider(self) -> ILayerServiceManagerInstance { + ILayerServiceManagerInstance { address: self.address, provider: ::core::clone::Clone::clone(&self.provider), _network_transport: ::core::marker::PhantomData, @@ -446,7 +547,7 @@ pub mod IERC721TokenReceiver { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > IERC721TokenReceiverInstance + > ILayerServiceManagerInstance { /// Creates a new call builder using this contract instance's provider and address. /// @@ -458,15 +559,13 @@ pub mod IERC721TokenReceiver { ) -> alloy_contract::SolCallBuilder { alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) } - ///Creates a new call builder for the [`onERC721Received`] function. - pub fn onERC721Received( + ///Creates a new call builder for the [`validate`] function. + pub fn validate( &self, - _operator: alloy::sol_types::private::Address, - _from: alloy::sol_types::private::Address, - _tokenId: alloy::sol_types::private::primitives::aliases::U256, - _data: alloy::sol_types::private::Bytes, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&onERC721ReceivedCall { _operator, _from, _tokenId, _data }) + data: alloy::sol_types::private::Bytes, + signature: alloy::sol_types::private::Bytes, + ) -> alloy_contract::SolCallBuilder { + self.call_builder(&validateCall { data, signature }) } } /// Event filters. @@ -475,7 +574,7 @@ pub mod IERC721TokenReceiver { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > IERC721TokenReceiverInstance + > ILayerServiceManagerInstance { /// Creates a new event filter using this contract instance's provider and address. /// diff --git a/crates/bindings/src/initializable.rs b/crates/bindings/src/initializable.rs deleted file mode 100644 index 6e72c6f3..00000000 --- a/crates/bindings/src/initializable.rs +++ /dev/null @@ -1,388 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface Initializable { - event Initialized(uint8 version); -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "event", - "name": "Initialized", - "inputs": [ - { - "name": "version", - "type": "uint8", - "indexed": false, - "internalType": "uint8" - } - ], - "anonymous": false - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod Initializable { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**Event with signature `Initialized(uint8)` and selector `0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498`. - ```solidity - event Initialized(uint8 version); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Initialized { - #[allow(missing_docs)] - pub version: u8, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Initialized { - type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<8>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "Initialized(uint8)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 127u8, 38u8, 184u8, 63u8, 249u8, 110u8, 31u8, 43u8, 106u8, 104u8, 47u8, 19u8, - 56u8, 82u8, 246u8, 121u8, 138u8, 9u8, 196u8, 101u8, 218u8, 149u8, 146u8, 20u8, - 96u8, 206u8, 251u8, 56u8, 71u8, 64u8, 36u8, 152u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { version: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.version, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Initialized { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Initialized> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Initialized) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - ///Container for all the [`Initializable`](self) events. - pub enum InitializableEvents { - Initialized(Initialized), - } - #[automatically_derived] - impl InitializableEvents { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[[ - 127u8, 38u8, 184u8, 63u8, 249u8, 110u8, 31u8, 43u8, 106u8, 104u8, 47u8, 19u8, 56u8, - 82u8, 246u8, 121u8, 138u8, 9u8, 196u8, 101u8, 218u8, 149u8, 146u8, 20u8, 96u8, 206u8, - 251u8, 56u8, 71u8, 64u8, 36u8, 152u8, - ]]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for InitializableEvents { - const NAME: &'static str = "InitializableEvents"; - const COUNT: usize = 1usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::Initialized) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for InitializableEvents { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::Initialized(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::Initialized(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`Initializable`](self) contract instance. - - See the [wrapper's documentation](`InitializableInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> InitializableInstance { - InitializableInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - InitializableInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - InitializableInstance::::deploy_builder(provider) - } - /**A [`Initializable`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`Initializable`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct InitializableInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for InitializableInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("InitializableInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > InitializableInstance - { - /**Creates a new wrapper around an on-chain [`Initializable`](self) contract instance. - - See the [wrapper's documentation](`InitializableInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy(provider: P) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl InitializableInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> InitializableInstance { - InitializableInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > InitializableInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > InitializableInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`Initialized`] event. - pub fn Initialized_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/irewardscoordinator.rs b/crates/bindings/src/irewardscoordinator.rs deleted file mode 100644 index 9332c503..00000000 --- a/crates/bindings/src/irewardscoordinator.rs +++ /dev/null @@ -1,11292 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface IRewardsCoordinator { - struct DistributionRoot { - bytes32 root; - uint32 rewardsCalculationEndTimestamp; - uint32 activatedAt; - bool disabled; - } - struct EarnerTreeMerkleLeaf { - address earner; - bytes32 earnerTokenRoot; - } - struct OperatorDirectedRewardsSubmission { - StrategyAndMultiplier[] strategiesAndMultipliers; - address token; - OperatorReward[] operatorRewards; - uint32 startTimestamp; - uint32 duration; - string description; - } - struct OperatorReward { - address operator; - uint256 amount; - } - struct RewardsMerkleClaim { - uint32 rootIndex; - uint32 earnerIndex; - bytes earnerTreeProof; - EarnerTreeMerkleLeaf earnerLeaf; - uint32[] tokenIndices; - bytes[] tokenTreeProofs; - TokenTreeMerkleLeaf[] tokenLeaves; - } - struct RewardsSubmission { - StrategyAndMultiplier[] strategiesAndMultipliers; - address token; - uint256 amount; - uint32 startTimestamp; - uint32 duration; - } - struct StrategyAndMultiplier { - address strategy; - uint96 multiplier; - } - struct TokenTreeMerkleLeaf { - address token; - uint256 cumulativeEarnings; - } - - event AVSRewardsSubmissionCreated(address indexed avs, uint256 indexed submissionNonce, bytes32 indexed rewardsSubmissionHash, RewardsSubmission rewardsSubmission); - event ActivationDelaySet(uint32 oldActivationDelay, uint32 newActivationDelay); - event ClaimerForSet(address indexed earner, address indexed oldClaimer, address indexed claimer); - event DefaultOperatorSplitBipsSet(uint16 oldDefaultOperatorSplitBips, uint16 newDefaultOperatorSplitBips); - event DistributionRootDisabled(uint32 indexed rootIndex); - event DistributionRootSubmitted(uint32 indexed rootIndex, bytes32 indexed root, uint32 indexed rewardsCalculationEndTimestamp, uint32 activatedAt); - event OperatorAVSSplitBipsSet(address indexed caller, address indexed operator, address indexed avs, uint32 activatedAt, uint16 oldOperatorAVSSplitBips, uint16 newOperatorAVSSplitBips); - event OperatorDirectedAVSRewardsSubmissionCreated(address indexed caller, address indexed avs, bytes32 indexed operatorDirectedRewardsSubmissionHash, uint256 submissionNonce, OperatorDirectedRewardsSubmission operatorDirectedRewardsSubmission); - event OperatorPISplitBipsSet(address indexed caller, address indexed operator, uint32 activatedAt, uint16 oldOperatorPISplitBips, uint16 newOperatorPISplitBips); - event RewardsClaimed(bytes32 root, address indexed earner, address indexed claimer, address indexed recipient, address token, uint256 claimedAmount); - event RewardsForAllSubmitterSet(address indexed rewardsForAllSubmitter, bool indexed oldValue, bool indexed newValue); - event RewardsSubmissionForAllCreated(address indexed submitter, uint256 indexed submissionNonce, bytes32 indexed rewardsSubmissionHash, RewardsSubmission rewardsSubmission); - event RewardsSubmissionForAllEarnersCreated(address indexed tokenHopper, uint256 indexed submissionNonce, bytes32 indexed rewardsSubmissionHash, RewardsSubmission rewardsSubmission); - event RewardsUpdaterSet(address indexed oldRewardsUpdater, address indexed newRewardsUpdater); - - function CALCULATION_INTERVAL_SECONDS() external view returns (uint32); - function GENESIS_REWARDS_TIMESTAMP() external view returns (uint32); - function MAX_FUTURE_LENGTH() external view returns (uint32); - function MAX_RETROACTIVE_LENGTH() external view returns (uint32); - function MAX_REWARDS_DURATION() external view returns (uint32); - function activationDelay() external view returns (uint32); - function calculateEarnerLeafHash(EarnerTreeMerkleLeaf memory leaf) external pure returns (bytes32); - function calculateTokenLeafHash(TokenTreeMerkleLeaf memory leaf) external pure returns (bytes32); - function checkClaim(RewardsMerkleClaim memory claim) external view returns (bool); - function claimerFor(address earner) external view returns (address); - function createAVSRewardsSubmission(RewardsSubmission[] memory rewardsSubmissions) external; - function createOperatorDirectedAVSRewardsSubmission(address avs, OperatorDirectedRewardsSubmission[] memory operatorDirectedRewardsSubmissions) external; - function createRewardsForAllEarners(RewardsSubmission[] memory rewardsSubmissions) external; - function createRewardsForAllSubmission(RewardsSubmission[] memory rewardsSubmission) external; - function cumulativeClaimed(address claimer, address token) external view returns (uint256); - function currRewardsCalculationEndTimestamp() external view returns (uint32); - function defaultOperatorSplitBips() external view returns (uint16); - function disableRoot(uint32 rootIndex) external; - function domainSeparator() external view returns (bytes32); - function getCurrentClaimableDistributionRoot() external view returns (DistributionRoot memory); - function getCurrentDistributionRoot() external view returns (DistributionRoot memory); - function getDistributionRootAtIndex(uint256 index) external view returns (DistributionRoot memory); - function getDistributionRootsLength() external view returns (uint256); - function getOperatorAVSSplit(address operator, address avs) external view returns (uint16); - function getOperatorPISplit(address operator) external view returns (uint16); - function getRootIndexFromHash(bytes32 rootHash) external view returns (uint32); - function processClaim(RewardsMerkleClaim memory claim, address recipient) external; - function processClaims(RewardsMerkleClaim[] memory claims, address recipient) external; - function rewardsUpdater() external view returns (address); - function setActivationDelay(uint32 _activationDelay) external; - function setClaimerFor(address claimer) external; - function setDefaultOperatorSplit(uint16 split) external; - function setOperatorAVSSplit(address operator, address avs, uint16 split) external; - function setOperatorPISplit(address operator, uint16 split) external; - function setRewardsForAllSubmitter(address _submitter, bool _newValue) external; - function setRewardsUpdater(address _rewardsUpdater) external; - function submitRoot(bytes32 root, uint32 rewardsCalculationEndTimestamp) external; -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "CALCULATION_INTERVAL_SECONDS", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint32", - "internalType": "uint32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "GENESIS_REWARDS_TIMESTAMP", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint32", - "internalType": "uint32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "MAX_FUTURE_LENGTH", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint32", - "internalType": "uint32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "MAX_RETROACTIVE_LENGTH", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint32", - "internalType": "uint32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "MAX_REWARDS_DURATION", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint32", - "internalType": "uint32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "activationDelay", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint32", - "internalType": "uint32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "calculateEarnerLeafHash", - "inputs": [ - { - "name": "leaf", - "type": "tuple", - "internalType": "struct IRewardsCoordinator.EarnerTreeMerkleLeaf", - "components": [ - { - "name": "earner", - "type": "address", - "internalType": "address" - }, - { - "name": "earnerTokenRoot", - "type": "bytes32", - "internalType": "bytes32" - } - ] - } - ], - "outputs": [ - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "pure" - }, - { - "type": "function", - "name": "calculateTokenLeafHash", - "inputs": [ - { - "name": "leaf", - "type": "tuple", - "internalType": "struct IRewardsCoordinator.TokenTreeMerkleLeaf", - "components": [ - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "cumulativeEarnings", - "type": "uint256", - "internalType": "uint256" - } - ] - } - ], - "outputs": [ - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "pure" - }, - { - "type": "function", - "name": "checkClaim", - "inputs": [ - { - "name": "claim", - "type": "tuple", - "internalType": "struct IRewardsCoordinator.RewardsMerkleClaim", - "components": [ - { - "name": "rootIndex", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "earnerIndex", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "earnerTreeProof", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "earnerLeaf", - "type": "tuple", - "internalType": "struct IRewardsCoordinator.EarnerTreeMerkleLeaf", - "components": [ - { - "name": "earner", - "type": "address", - "internalType": "address" - }, - { - "name": "earnerTokenRoot", - "type": "bytes32", - "internalType": "bytes32" - } - ] - }, - { - "name": "tokenIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "tokenTreeProofs", - "type": "bytes[]", - "internalType": "bytes[]" - }, - { - "name": "tokenLeaves", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.TokenTreeMerkleLeaf[]", - "components": [ - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "cumulativeEarnings", - "type": "uint256", - "internalType": "uint256" - } - ] - } - ] - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "claimerFor", - "inputs": [ - { - "name": "earner", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "createAVSRewardsSubmission", - "inputs": [ - { - "name": "rewardsSubmissions", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.RewardsSubmission[]", - "components": [ - { - "name": "strategiesAndMultipliers", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.StrategyAndMultiplier[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - }, - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "startTimestamp", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "duration", - "type": "uint32", - "internalType": "uint32" - } - ] - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "createOperatorDirectedAVSRewardsSubmission", - "inputs": [ - { - "name": "avs", - "type": "address", - "internalType": "address" - }, - { - "name": "operatorDirectedRewardsSubmissions", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.OperatorDirectedRewardsSubmission[]", - "components": [ - { - "name": "strategiesAndMultipliers", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.StrategyAndMultiplier[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - }, - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "operatorRewards", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.OperatorReward[]", - "components": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "startTimestamp", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "duration", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "description", - "type": "string", - "internalType": "string" - } - ] - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "createRewardsForAllEarners", - "inputs": [ - { - "name": "rewardsSubmissions", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.RewardsSubmission[]", - "components": [ - { - "name": "strategiesAndMultipliers", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.StrategyAndMultiplier[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - }, - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "startTimestamp", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "duration", - "type": "uint32", - "internalType": "uint32" - } - ] - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "createRewardsForAllSubmission", - "inputs": [ - { - "name": "rewardsSubmission", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.RewardsSubmission[]", - "components": [ - { - "name": "strategiesAndMultipliers", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.StrategyAndMultiplier[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - }, - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "startTimestamp", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "duration", - "type": "uint32", - "internalType": "uint32" - } - ] - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "cumulativeClaimed", - "inputs": [ - { - "name": "claimer", - "type": "address", - "internalType": "address" - }, - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "currRewardsCalculationEndTimestamp", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint32", - "internalType": "uint32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "defaultOperatorSplitBips", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint16", - "internalType": "uint16" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "disableRoot", - "inputs": [ - { - "name": "rootIndex", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "domainSeparator", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getCurrentClaimableDistributionRoot", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct IRewardsCoordinator.DistributionRoot", - "components": [ - { - "name": "root", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "rewardsCalculationEndTimestamp", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "activatedAt", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "disabled", - "type": "bool", - "internalType": "bool" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getCurrentDistributionRoot", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct IRewardsCoordinator.DistributionRoot", - "components": [ - { - "name": "root", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "rewardsCalculationEndTimestamp", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "activatedAt", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "disabled", - "type": "bool", - "internalType": "bool" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getDistributionRootAtIndex", - "inputs": [ - { - "name": "index", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct IRewardsCoordinator.DistributionRoot", - "components": [ - { - "name": "root", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "rewardsCalculationEndTimestamp", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "activatedAt", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "disabled", - "type": "bool", - "internalType": "bool" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getDistributionRootsLength", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorAVSSplit", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "avs", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint16", - "internalType": "uint16" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorPISplit", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint16", - "internalType": "uint16" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getRootIndexFromHash", - "inputs": [ - { - "name": "rootHash", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "outputs": [ - { - "name": "", - "type": "uint32", - "internalType": "uint32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "processClaim", - "inputs": [ - { - "name": "claim", - "type": "tuple", - "internalType": "struct IRewardsCoordinator.RewardsMerkleClaim", - "components": [ - { - "name": "rootIndex", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "earnerIndex", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "earnerTreeProof", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "earnerLeaf", - "type": "tuple", - "internalType": "struct IRewardsCoordinator.EarnerTreeMerkleLeaf", - "components": [ - { - "name": "earner", - "type": "address", - "internalType": "address" - }, - { - "name": "earnerTokenRoot", - "type": "bytes32", - "internalType": "bytes32" - } - ] - }, - { - "name": "tokenIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "tokenTreeProofs", - "type": "bytes[]", - "internalType": "bytes[]" - }, - { - "name": "tokenLeaves", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.TokenTreeMerkleLeaf[]", - "components": [ - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "cumulativeEarnings", - "type": "uint256", - "internalType": "uint256" - } - ] - } - ] - }, - { - "name": "recipient", - "type": "address", - "internalType": "address" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "processClaims", - "inputs": [ - { - "name": "claims", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.RewardsMerkleClaim[]", - "components": [ - { - "name": "rootIndex", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "earnerIndex", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "earnerTreeProof", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "earnerLeaf", - "type": "tuple", - "internalType": "struct IRewardsCoordinator.EarnerTreeMerkleLeaf", - "components": [ - { - "name": "earner", - "type": "address", - "internalType": "address" - }, - { - "name": "earnerTokenRoot", - "type": "bytes32", - "internalType": "bytes32" - } - ] - }, - { - "name": "tokenIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "tokenTreeProofs", - "type": "bytes[]", - "internalType": "bytes[]" - }, - { - "name": "tokenLeaves", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.TokenTreeMerkleLeaf[]", - "components": [ - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "cumulativeEarnings", - "type": "uint256", - "internalType": "uint256" - } - ] - } - ] - }, - { - "name": "recipient", - "type": "address", - "internalType": "address" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "rewardsUpdater", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "setActivationDelay", - "inputs": [ - { - "name": "_activationDelay", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "setClaimerFor", - "inputs": [ - { - "name": "claimer", - "type": "address", - "internalType": "address" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "setDefaultOperatorSplit", - "inputs": [ - { - "name": "split", - "type": "uint16", - "internalType": "uint16" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "setOperatorAVSSplit", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "avs", - "type": "address", - "internalType": "address" - }, - { - "name": "split", - "type": "uint16", - "internalType": "uint16" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "setOperatorPISplit", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "split", - "type": "uint16", - "internalType": "uint16" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "setRewardsForAllSubmitter", - "inputs": [ - { - "name": "_submitter", - "type": "address", - "internalType": "address" - }, - { - "name": "_newValue", - "type": "bool", - "internalType": "bool" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "setRewardsUpdater", - "inputs": [ - { - "name": "_rewardsUpdater", - "type": "address", - "internalType": "address" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "submitRoot", - "inputs": [ - { - "name": "root", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "rewardsCalculationEndTimestamp", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "event", - "name": "AVSRewardsSubmissionCreated", - "inputs": [ - { - "name": "avs", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "submissionNonce", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - }, - { - "name": "rewardsSubmissionHash", - "type": "bytes32", - "indexed": true, - "internalType": "bytes32" - }, - { - "name": "rewardsSubmission", - "type": "tuple", - "indexed": false, - "internalType": "struct IRewardsCoordinator.RewardsSubmission", - "components": [ - { - "name": "strategiesAndMultipliers", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.StrategyAndMultiplier[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - }, - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "startTimestamp", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "duration", - "type": "uint32", - "internalType": "uint32" - } - ] - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "ActivationDelaySet", - "inputs": [ - { - "name": "oldActivationDelay", - "type": "uint32", - "indexed": false, - "internalType": "uint32" - }, - { - "name": "newActivationDelay", - "type": "uint32", - "indexed": false, - "internalType": "uint32" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "ClaimerForSet", - "inputs": [ - { - "name": "earner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "oldClaimer", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "claimer", - "type": "address", - "indexed": true, - "internalType": "address" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "DefaultOperatorSplitBipsSet", - "inputs": [ - { - "name": "oldDefaultOperatorSplitBips", - "type": "uint16", - "indexed": false, - "internalType": "uint16" - }, - { - "name": "newDefaultOperatorSplitBips", - "type": "uint16", - "indexed": false, - "internalType": "uint16" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "DistributionRootDisabled", - "inputs": [ - { - "name": "rootIndex", - "type": "uint32", - "indexed": true, - "internalType": "uint32" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "DistributionRootSubmitted", - "inputs": [ - { - "name": "rootIndex", - "type": "uint32", - "indexed": true, - "internalType": "uint32" - }, - { - "name": "root", - "type": "bytes32", - "indexed": true, - "internalType": "bytes32" - }, - { - "name": "rewardsCalculationEndTimestamp", - "type": "uint32", - "indexed": true, - "internalType": "uint32" - }, - { - "name": "activatedAt", - "type": "uint32", - "indexed": false, - "internalType": "uint32" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorAVSSplitBipsSet", - "inputs": [ - { - "name": "caller", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "avs", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "activatedAt", - "type": "uint32", - "indexed": false, - "internalType": "uint32" - }, - { - "name": "oldOperatorAVSSplitBips", - "type": "uint16", - "indexed": false, - "internalType": "uint16" - }, - { - "name": "newOperatorAVSSplitBips", - "type": "uint16", - "indexed": false, - "internalType": "uint16" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorDirectedAVSRewardsSubmissionCreated", - "inputs": [ - { - "name": "caller", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "avs", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "operatorDirectedRewardsSubmissionHash", - "type": "bytes32", - "indexed": true, - "internalType": "bytes32" - }, - { - "name": "submissionNonce", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - }, - { - "name": "operatorDirectedRewardsSubmission", - "type": "tuple", - "indexed": false, - "internalType": "struct IRewardsCoordinator.OperatorDirectedRewardsSubmission", - "components": [ - { - "name": "strategiesAndMultipliers", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.StrategyAndMultiplier[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - }, - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "operatorRewards", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.OperatorReward[]", - "components": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "startTimestamp", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "duration", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "description", - "type": "string", - "internalType": "string" - } - ] - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorPISplitBipsSet", - "inputs": [ - { - "name": "caller", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "activatedAt", - "type": "uint32", - "indexed": false, - "internalType": "uint32" - }, - { - "name": "oldOperatorPISplitBips", - "type": "uint16", - "indexed": false, - "internalType": "uint16" - }, - { - "name": "newOperatorPISplitBips", - "type": "uint16", - "indexed": false, - "internalType": "uint16" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "RewardsClaimed", - "inputs": [ - { - "name": "root", - "type": "bytes32", - "indexed": false, - "internalType": "bytes32" - }, - { - "name": "earner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "claimer", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "recipient", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "token", - "type": "address", - "indexed": false, - "internalType": "contract IERC20" - }, - { - "name": "claimedAmount", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "RewardsForAllSubmitterSet", - "inputs": [ - { - "name": "rewardsForAllSubmitter", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "oldValue", - "type": "bool", - "indexed": true, - "internalType": "bool" - }, - { - "name": "newValue", - "type": "bool", - "indexed": true, - "internalType": "bool" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "RewardsSubmissionForAllCreated", - "inputs": [ - { - "name": "submitter", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "submissionNonce", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - }, - { - "name": "rewardsSubmissionHash", - "type": "bytes32", - "indexed": true, - "internalType": "bytes32" - }, - { - "name": "rewardsSubmission", - "type": "tuple", - "indexed": false, - "internalType": "struct IRewardsCoordinator.RewardsSubmission", - "components": [ - { - "name": "strategiesAndMultipliers", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.StrategyAndMultiplier[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - }, - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "startTimestamp", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "duration", - "type": "uint32", - "internalType": "uint32" - } - ] - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "RewardsSubmissionForAllEarnersCreated", - "inputs": [ - { - "name": "tokenHopper", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "submissionNonce", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - }, - { - "name": "rewardsSubmissionHash", - "type": "bytes32", - "indexed": true, - "internalType": "bytes32" - }, - { - "name": "rewardsSubmission", - "type": "tuple", - "indexed": false, - "internalType": "struct IRewardsCoordinator.RewardsSubmission", - "components": [ - { - "name": "strategiesAndMultipliers", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.StrategyAndMultiplier[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - }, - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "startTimestamp", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "duration", - "type": "uint32", - "internalType": "uint32" - } - ] - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "RewardsUpdaterSet", - "inputs": [ - { - "name": "oldRewardsUpdater", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "newRewardsUpdater", - "type": "address", - "indexed": true, - "internalType": "address" - } - ], - "anonymous": false - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IRewardsCoordinator { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**```solidity - struct DistributionRoot { bytes32 root; uint32 rewardsCalculationEndTimestamp; uint32 activatedAt; bool disabled; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct DistributionRoot { - pub root: alloy::sol_types::private::FixedBytes<32>, - pub rewardsCalculationEndTimestamp: u32, - pub activatedAt: u32, - pub disabled: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Bool, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>, u32, u32, bool); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: DistributionRoot) -> Self { - ( - value.root, - value.rewardsCalculationEndTimestamp, - value.activatedAt, - value.disabled, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for DistributionRoot { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - root: tuple.0, - rewardsCalculationEndTimestamp: tuple.1, - activatedAt: tuple.2, - disabled: tuple.3, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for DistributionRoot { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for DistributionRoot { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.root), - as alloy_sol_types::SolType>::tokenize( - &self.rewardsCalculationEndTimestamp, - ), - as alloy_sol_types::SolType>::tokenize(&self.activatedAt), - ::tokenize( - &self.disabled, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for DistributionRoot { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for DistributionRoot { - const NAME: &'static str = "DistributionRoot"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "DistributionRoot(bytes32 root,uint32 rewardsCalculationEndTimestamp,uint32 activatedAt,bool disabled)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - as alloy_sol_types::SolType>::eip712_data_word(&self.root) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.rewardsCalculationEndTimestamp, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.activatedAt) - .0, - ::eip712_data_word( - &self.disabled, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for DistributionRoot { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.root) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.rewardsCalculationEndTimestamp, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.activatedAt, - ) - + ::topic_preimage_length( - &rust.disabled, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.root, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.rewardsCalculationEndTimestamp, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.activatedAt, - out, - ); - ::encode_topic_preimage( - &rust.disabled, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct EarnerTreeMerkleLeaf { address earner; bytes32 earnerTokenRoot; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct EarnerTreeMerkleLeaf { - pub earner: alloy::sol_types::private::Address, - pub earnerTokenRoot: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::FixedBytes<32>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Address, alloy::sol_types::private::FixedBytes<32>); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: EarnerTreeMerkleLeaf) -> Self { - (value.earner, value.earnerTokenRoot) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for EarnerTreeMerkleLeaf { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { earner: tuple.0, earnerTokenRoot: tuple.1 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for EarnerTreeMerkleLeaf { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for EarnerTreeMerkleLeaf { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.earner, - ), - as alloy_sol_types::SolType>::tokenize(&self.earnerTokenRoot), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for EarnerTreeMerkleLeaf { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for EarnerTreeMerkleLeaf { - const NAME: &'static str = "EarnerTreeMerkleLeaf"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "EarnerTreeMerkleLeaf(address earner,bytes32 earnerTokenRoot)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.earner, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.earnerTokenRoot, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for EarnerTreeMerkleLeaf { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.earner, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.earnerTokenRoot, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.earner, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.earnerTokenRoot, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct OperatorDirectedRewardsSubmission { StrategyAndMultiplier[] strategiesAndMultipliers; address token; OperatorReward[] operatorRewards; uint32 startTimestamp; uint32 duration; string description; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OperatorDirectedRewardsSubmission { - pub strategiesAndMultipliers: alloy::sol_types::private::Vec< - ::RustType, - >, - pub token: alloy::sol_types::private::Address, - pub operatorRewards: - alloy::sol_types::private::Vec<::RustType>, - pub startTimestamp: u32, - pub duration: u32, - pub description: alloy::sol_types::private::String, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::String, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - ::RustType, - >, - alloy::sol_types::private::Address, - alloy::sol_types::private::Vec<::RustType>, - u32, - u32, - alloy::sol_types::private::String, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: OperatorDirectedRewardsSubmission) -> Self { - ( - value.strategiesAndMultipliers, - value.token, - value.operatorRewards, - value.startTimestamp, - value.duration, - value.description, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OperatorDirectedRewardsSubmission { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - strategiesAndMultipliers: tuple.0, - token: tuple.1, - operatorRewards: tuple.2, - startTimestamp: tuple.3, - duration: tuple.4, - description: tuple.5, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for OperatorDirectedRewardsSubmission { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for OperatorDirectedRewardsSubmission { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.strategiesAndMultipliers, - ), - ::tokenize( - &self.token, - ), - as alloy_sol_types::SolType>::tokenize(&self.operatorRewards), - as alloy_sol_types::SolType>::tokenize(&self.startTimestamp), - as alloy_sol_types::SolType>::tokenize(&self.duration), - ::tokenize( - &self.description, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for OperatorDirectedRewardsSubmission { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for OperatorDirectedRewardsSubmission { - const NAME: &'static str = "OperatorDirectedRewardsSubmission"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "OperatorDirectedRewardsSubmission(StrategyAndMultiplier[] strategiesAndMultipliers,address token,OperatorReward[] operatorRewards,uint32 startTimestamp,uint32 duration,string description)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - let mut components = alloy_sol_types::private::Vec::with_capacity(2); - components - .push( - ::eip712_root_type(), - ); - components.extend( - ::eip712_components(), - ); - components.push(::eip712_root_type()); - components - .extend(::eip712_components()); - components - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - as alloy_sol_types::SolType>::eip712_data_word( - &self.strategiesAndMultipliers, - ) - .0, - ::eip712_data_word( - &self.token, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.operatorRewards, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.startTimestamp, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.duration) - .0, - ::eip712_data_word( - &self.description, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for OperatorDirectedRewardsSubmission { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.strategiesAndMultipliers, - ) - + ::topic_preimage_length( - &rust.token, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.operatorRewards, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.startTimestamp, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.duration, - ) - + ::topic_preimage_length( - &rust.description, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.strategiesAndMultipliers, - out, - ); - ::encode_topic_preimage( - &rust.token, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.operatorRewards, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.startTimestamp, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.duration, - out, - ); - ::encode_topic_preimage( - &rust.description, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct OperatorReward { address operator; uint256 amount; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OperatorReward { - pub operator: alloy::sol_types::private::Address, - pub amount: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: OperatorReward) -> Self { - (value.operator, value.amount) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OperatorReward { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0, amount: tuple.1 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for OperatorReward { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for OperatorReward { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - as alloy_sol_types::SolType>::tokenize( - &self.amount, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for OperatorReward { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for OperatorReward { - const NAME: &'static str = "OperatorReward"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "OperatorReward(address operator,uint256 amount)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.operator, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.amount) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for OperatorReward { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.operator, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.amount, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.operator, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.amount, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct RewardsMerkleClaim { uint32 rootIndex; uint32 earnerIndex; bytes earnerTreeProof; EarnerTreeMerkleLeaf earnerLeaf; uint32[] tokenIndices; bytes[] tokenTreeProofs; TokenTreeMerkleLeaf[] tokenLeaves; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct RewardsMerkleClaim { - pub rootIndex: u32, - pub earnerIndex: u32, - pub earnerTreeProof: alloy::sol_types::private::Bytes, - pub earnerLeaf: ::RustType, - pub tokenIndices: alloy::sol_types::private::Vec, - pub tokenTreeProofs: alloy::sol_types::private::Vec, - pub tokenLeaves: alloy::sol_types::private::Vec< - ::RustType, - >, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Bytes, - EarnerTreeMerkleLeaf, - alloy::sol_types::sol_data::Array>, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Array, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - u32, - u32, - alloy::sol_types::private::Bytes, - ::RustType, - alloy::sol_types::private::Vec, - alloy::sol_types::private::Vec, - alloy::sol_types::private::Vec< - ::RustType, - >, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: RewardsMerkleClaim) -> Self { - ( - value.rootIndex, - value.earnerIndex, - value.earnerTreeProof, - value.earnerLeaf, - value.tokenIndices, - value.tokenTreeProofs, - value.tokenLeaves, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for RewardsMerkleClaim { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - rootIndex: tuple.0, - earnerIndex: tuple.1, - earnerTreeProof: tuple.2, - earnerLeaf: tuple.3, - tokenIndices: tuple.4, - tokenTreeProofs: tuple.5, - tokenLeaves: tuple.6, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for RewardsMerkleClaim { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for RewardsMerkleClaim { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.rootIndex), - as alloy_sol_types::SolType>::tokenize(&self.earnerIndex), - ::tokenize( - &self.earnerTreeProof, - ), - ::tokenize( - &self.earnerLeaf, - ), - , - > as alloy_sol_types::SolType>::tokenize(&self.tokenIndices), - as alloy_sol_types::SolType>::tokenize(&self.tokenTreeProofs), - as alloy_sol_types::SolType>::tokenize(&self.tokenLeaves), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for RewardsMerkleClaim { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for RewardsMerkleClaim { - const NAME: &'static str = "RewardsMerkleClaim"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "RewardsMerkleClaim(uint32 rootIndex,uint32 earnerIndex,bytes earnerTreeProof,EarnerTreeMerkleLeaf earnerLeaf,uint32[] tokenIndices,bytes[] tokenTreeProofs,TokenTreeMerkleLeaf[] tokenLeaves)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - let mut components = alloy_sol_types::private::Vec::with_capacity(2); - components - .push(::eip712_root_type()); - components.extend( - ::eip712_components(), - ); - components - .push(::eip712_root_type()); - components.extend( - ::eip712_components(), - ); - components - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - as alloy_sol_types::SolType>::eip712_data_word(&self.rootIndex) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.earnerIndex) - .0, - ::eip712_data_word( - &self.earnerTreeProof, - ) - .0, - ::eip712_data_word( - &self.earnerLeaf, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word(&self.tokenIndices) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.tokenTreeProofs, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.tokenLeaves) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for RewardsMerkleClaim { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.rootIndex, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.earnerIndex, - ) - + ::topic_preimage_length( - &rust.earnerTreeProof, - ) - + ::topic_preimage_length( - &rust.earnerLeaf, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.tokenIndices, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.tokenTreeProofs, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.tokenLeaves, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.rootIndex, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.earnerIndex, - out, - ); - ::encode_topic_preimage( - &rust.earnerTreeProof, - out, - ); - ::encode_topic_preimage( - &rust.earnerLeaf, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.tokenIndices, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.tokenTreeProofs, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.tokenLeaves, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct RewardsSubmission { StrategyAndMultiplier[] strategiesAndMultipliers; address token; uint256 amount; uint32 startTimestamp; uint32 duration; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct RewardsSubmission { - pub strategiesAndMultipliers: alloy::sol_types::private::Vec< - ::RustType, - >, - pub token: alloy::sol_types::private::Address, - pub amount: alloy::sol_types::private::primitives::aliases::U256, - pub startTimestamp: u32, - pub duration: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - ::RustType, - >, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - u32, - u32, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: RewardsSubmission) -> Self { - ( - value.strategiesAndMultipliers, - value.token, - value.amount, - value.startTimestamp, - value.duration, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for RewardsSubmission { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - strategiesAndMultipliers: tuple.0, - token: tuple.1, - amount: tuple.2, - startTimestamp: tuple.3, - duration: tuple.4, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for RewardsSubmission { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for RewardsSubmission { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.strategiesAndMultipliers, - ), - ::tokenize( - &self.token, - ), - as alloy_sol_types::SolType>::tokenize(&self.amount), - as alloy_sol_types::SolType>::tokenize(&self.startTimestamp), - as alloy_sol_types::SolType>::tokenize(&self.duration), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for RewardsSubmission { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for RewardsSubmission { - const NAME: &'static str = "RewardsSubmission"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "RewardsSubmission(StrategyAndMultiplier[] strategiesAndMultipliers,address token,uint256 amount,uint32 startTimestamp,uint32 duration)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - let mut components = alloy_sol_types::private::Vec::with_capacity(1); - components - .push( - ::eip712_root_type(), - ); - components.extend( - ::eip712_components(), - ); - components - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - as alloy_sol_types::SolType>::eip712_data_word( - &self.strategiesAndMultipliers, - ) - .0, - ::eip712_data_word( - &self.token, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.amount) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.startTimestamp, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.duration) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for RewardsSubmission { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.strategiesAndMultipliers, - ) - + ::topic_preimage_length( - &rust.token, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.amount, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.startTimestamp, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.duration, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.strategiesAndMultipliers, - out, - ); - ::encode_topic_preimage( - &rust.token, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.amount, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.startTimestamp, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.duration, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct StrategyAndMultiplier { address strategy; uint96 multiplier; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct StrategyAndMultiplier { - pub strategy: alloy::sol_types::private::Address, - pub multiplier: alloy::sol_types::private::primitives::aliases::U96, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<96>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U96, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: StrategyAndMultiplier) -> Self { - (value.strategy, value.multiplier) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for StrategyAndMultiplier { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { strategy: tuple.0, multiplier: tuple.1 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for StrategyAndMultiplier { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for StrategyAndMultiplier { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.strategy, - ), - as alloy_sol_types::SolType>::tokenize( - &self.multiplier, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for StrategyAndMultiplier { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for StrategyAndMultiplier { - const NAME: &'static str = "StrategyAndMultiplier"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "StrategyAndMultiplier(address strategy,uint96 multiplier)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.strategy, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.multiplier) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for StrategyAndMultiplier { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.strategy, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.multiplier, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.strategy, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.multiplier, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct TokenTreeMerkleLeaf { address token; uint256 cumulativeEarnings; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct TokenTreeMerkleLeaf { - pub token: alloy::sol_types::private::Address, - pub cumulativeEarnings: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: TokenTreeMerkleLeaf) -> Self { - (value.token, value.cumulativeEarnings) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for TokenTreeMerkleLeaf { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { token: tuple.0, cumulativeEarnings: tuple.1 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for TokenTreeMerkleLeaf { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for TokenTreeMerkleLeaf { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.token, - ), - as alloy_sol_types::SolType>::tokenize( - &self.cumulativeEarnings, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for TokenTreeMerkleLeaf { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for TokenTreeMerkleLeaf { - const NAME: &'static str = "TokenTreeMerkleLeaf"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "TokenTreeMerkleLeaf(address token,uint256 cumulativeEarnings)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.token, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.cumulativeEarnings, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for TokenTreeMerkleLeaf { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.token, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.cumulativeEarnings, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.token, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.cumulativeEarnings, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**Event with signature `AVSRewardsSubmissionCreated(address,uint256,bytes32,((address,uint96)[],address,uint256,uint32,uint32))` and selector `0x450a367a380c4e339e5ae7340c8464ef27af7781ad9945cfe8abd828f89e6281`. - ```solidity - event AVSRewardsSubmissionCreated(address indexed avs, uint256 indexed submissionNonce, bytes32 indexed rewardsSubmissionHash, RewardsSubmission rewardsSubmission); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct AVSRewardsSubmissionCreated { - #[allow(missing_docs)] - pub avs: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub submissionNonce: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub rewardsSubmissionHash: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub rewardsSubmission: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for AVSRewardsSubmissionCreated { - type DataTuple<'a> = (RewardsSubmission,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - const SIGNATURE: &'static str = "AVSRewardsSubmissionCreated(address,uint256,bytes32,((address,uint96)[],address,uint256,uint32,uint32))"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 69u8, 10u8, 54u8, 122u8, 56u8, 12u8, 78u8, 51u8, 158u8, 90u8, 231u8, 52u8, - 12u8, 132u8, 100u8, 239u8, 39u8, 175u8, 119u8, 129u8, 173u8, 153u8, 69u8, - 207u8, 232u8, 171u8, 216u8, 40u8, 248u8, 158u8, 98u8, 129u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - avs: topics.1, - submissionNonce: topics.2, - rewardsSubmissionHash: topics.3, - rewardsSubmission: data.0, - } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - (::tokenize(&self.rewardsSubmission),) - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self.avs.clone(), - self.submissionNonce.clone(), - self.rewardsSubmissionHash.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.avs, - ); - out[2usize] = as alloy_sol_types::EventTopic>::encode_topic(&self.submissionNonce); - out[3usize] = as alloy_sol_types::EventTopic>::encode_topic( - &self.rewardsSubmissionHash, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for AVSRewardsSubmissionCreated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&AVSRewardsSubmissionCreated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &AVSRewardsSubmissionCreated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `ActivationDelaySet(uint32,uint32)` and selector `0xaf557c6c02c208794817a705609cfa935f827312a1adfdd26494b6b95dd2b4b3`. - ```solidity - event ActivationDelaySet(uint32 oldActivationDelay, uint32 newActivationDelay); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct ActivationDelaySet { - #[allow(missing_docs)] - pub oldActivationDelay: u32, - #[allow(missing_docs)] - pub newActivationDelay: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for ActivationDelaySet { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<32>, alloy::sol_types::sol_data::Uint<32>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "ActivationDelaySet(uint32,uint32)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 175u8, 85u8, 124u8, 108u8, 2u8, 194u8, 8u8, 121u8, 72u8, 23u8, 167u8, 5u8, - 96u8, 156u8, 250u8, 147u8, 95u8, 130u8, 115u8, 18u8, 161u8, 173u8, 253u8, - 210u8, 100u8, 148u8, 182u8, 185u8, 93u8, 210u8, 180u8, 179u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { oldActivationDelay: data.0, newActivationDelay: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.oldActivationDelay, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newActivationDelay, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ActivationDelaySet { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&ActivationDelaySet> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &ActivationDelaySet) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `ClaimerForSet(address,address,address)` and selector `0xbab947934d42e0ad206f25c9cab18b5bb6ae144acfb00f40b4e3aa59590ca312`. - ```solidity - event ClaimerForSet(address indexed earner, address indexed oldClaimer, address indexed claimer); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct ClaimerForSet { - #[allow(missing_docs)] - pub earner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub oldClaimer: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub claimer: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for ClaimerForSet { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "ClaimerForSet(address,address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 186u8, 185u8, 71u8, 147u8, 77u8, 66u8, 224u8, 173u8, 32u8, 111u8, 37u8, 201u8, - 202u8, 177u8, 139u8, 91u8, 182u8, 174u8, 20u8, 74u8, 207u8, 176u8, 15u8, 64u8, - 180u8, 227u8, 170u8, 89u8, 89u8, 12u8, 163u8, 18u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { earner: topics.1, oldClaimer: topics.2, claimer: topics.3 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self.earner.clone(), - self.oldClaimer.clone(), - self.claimer.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.earner, - ); - out[2usize] = ::encode_topic( - &self.oldClaimer, - ); - out[3usize] = ::encode_topic( - &self.claimer, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ClaimerForSet { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&ClaimerForSet> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &ClaimerForSet) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `DefaultOperatorSplitBipsSet(uint16,uint16)` and selector `0xe6cd4edfdcc1f6d130ab35f73d72378f3a642944fb4ee5bd84b7807a81ea1c4e`. - ```solidity - event DefaultOperatorSplitBipsSet(uint16 oldDefaultOperatorSplitBips, uint16 newDefaultOperatorSplitBips); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct DefaultOperatorSplitBipsSet { - #[allow(missing_docs)] - pub oldDefaultOperatorSplitBips: u16, - #[allow(missing_docs)] - pub newDefaultOperatorSplitBips: u16, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for DefaultOperatorSplitBipsSet { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<16>, alloy::sol_types::sol_data::Uint<16>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "DefaultOperatorSplitBipsSet(uint16,uint16)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 230u8, 205u8, 78u8, 223u8, 220u8, 193u8, 246u8, 209u8, 48u8, 171u8, 53u8, - 247u8, 61u8, 114u8, 55u8, 143u8, 58u8, 100u8, 41u8, 68u8, 251u8, 78u8, 229u8, - 189u8, 132u8, 183u8, 128u8, 122u8, 129u8, 234u8, 28u8, 78u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { oldDefaultOperatorSplitBips: data.0, newDefaultOperatorSplitBips: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.oldDefaultOperatorSplitBips, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newDefaultOperatorSplitBips, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for DefaultOperatorSplitBipsSet { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&DefaultOperatorSplitBipsSet> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &DefaultOperatorSplitBipsSet) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `DistributionRootDisabled(uint32)` and selector `0xd850e6e5dfa497b72661fa73df2923464eaed9dc2ff1d3cb82bccbfeabe5c41e`. - ```solidity - event DistributionRootDisabled(uint32 indexed rootIndex); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct DistributionRootDisabled { - #[allow(missing_docs)] - pub rootIndex: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for DistributionRootDisabled { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = - (alloy_sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Uint<32>); - const SIGNATURE: &'static str = "DistributionRootDisabled(uint32)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 216u8, 80u8, 230u8, 229u8, 223u8, 164u8, 151u8, 183u8, 38u8, 97u8, 250u8, - 115u8, 223u8, 41u8, 35u8, 70u8, 78u8, 174u8, 217u8, 220u8, 47u8, 241u8, 211u8, - 203u8, 130u8, 188u8, 203u8, 254u8, 171u8, 229u8, 196u8, 30u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { rootIndex: topics.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.rootIndex.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = as alloy_sol_types::EventTopic>::encode_topic(&self.rootIndex); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for DistributionRootDisabled { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&DistributionRootDisabled> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &DistributionRootDisabled) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `DistributionRootSubmitted(uint32,bytes32,uint32,uint32)` and selector `0xecd866c3c158fa00bf34d803d5f6023000b57080bcb48af004c2b4b46b3afd08`. - ```solidity - event DistributionRootSubmitted(uint32 indexed rootIndex, bytes32 indexed root, uint32 indexed rewardsCalculationEndTimestamp, uint32 activatedAt); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct DistributionRootSubmitted { - #[allow(missing_docs)] - pub rootIndex: u32, - #[allow(missing_docs)] - pub root: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub rewardsCalculationEndTimestamp: u32, - #[allow(missing_docs)] - pub activatedAt: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for DistributionRootSubmitted { - type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<32>, - ); - const SIGNATURE: &'static str = - "DistributionRootSubmitted(uint32,bytes32,uint32,uint32)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 236u8, 216u8, 102u8, 195u8, 193u8, 88u8, 250u8, 0u8, 191u8, 52u8, 216u8, 3u8, - 213u8, 246u8, 2u8, 48u8, 0u8, 181u8, 112u8, 128u8, 188u8, 180u8, 138u8, 240u8, - 4u8, 194u8, 180u8, 180u8, 107u8, 58u8, 253u8, 8u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - rootIndex: topics.1, - root: topics.2, - rewardsCalculationEndTimestamp: topics.3, - activatedAt: data.0, - } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.activatedAt, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self.rootIndex.clone(), - self.root.clone(), - self.rewardsCalculationEndTimestamp.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = as alloy_sol_types::EventTopic>::encode_topic(&self.rootIndex); - out[2usize] = as alloy_sol_types::EventTopic>::encode_topic(&self.root); - out[3usize] = as alloy_sol_types::EventTopic>::encode_topic( - &self.rewardsCalculationEndTimestamp, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for DistributionRootSubmitted { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&DistributionRootSubmitted> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &DistributionRootSubmitted) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorAVSSplitBipsSet(address,address,address,uint32,uint16,uint16)` and selector `0x48e198b6ae357e529204ee53a8e514c470ff77d9cc8e4f7207f8b5d490ae6934`. - ```solidity - event OperatorAVSSplitBipsSet(address indexed caller, address indexed operator, address indexed avs, uint32 activatedAt, uint16 oldOperatorAVSSplitBips, uint16 newOperatorAVSSplitBips); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorAVSSplitBipsSet { - #[allow(missing_docs)] - pub caller: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub avs: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub activatedAt: u32, - #[allow(missing_docs)] - pub oldOperatorAVSSplitBips: u16, - #[allow(missing_docs)] - pub newOperatorAVSSplitBips: u16, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorAVSSplitBipsSet { - type DataTuple<'a> = ( - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Uint<16>, - alloy::sol_types::sol_data::Uint<16>, - ); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = - "OperatorAVSSplitBipsSet(address,address,address,uint32,uint16,uint16)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 72u8, 225u8, 152u8, 182u8, 174u8, 53u8, 126u8, 82u8, 146u8, 4u8, 238u8, 83u8, - 168u8, 229u8, 20u8, 196u8, 112u8, 255u8, 119u8, 217u8, 204u8, 142u8, 79u8, - 114u8, 7u8, 248u8, 181u8, 212u8, 144u8, 174u8, 105u8, 52u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - caller: topics.1, - operator: topics.2, - avs: topics.3, - activatedAt: data.0, - oldOperatorAVSSplitBips: data.1, - newOperatorAVSSplitBips: data.2, - } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.activatedAt, - ), - as alloy_sol_types::SolType>::tokenize( - &self.oldOperatorAVSSplitBips, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newOperatorAVSSplitBips, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self.caller.clone(), - self.operator.clone(), - self.avs.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.caller, - ); - out[2usize] = ::encode_topic( - &self.operator, - ); - out[3usize] = ::encode_topic( - &self.avs, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorAVSSplitBipsSet { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorAVSSplitBipsSet> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorAVSSplitBipsSet) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorDirectedAVSRewardsSubmissionCreated(address,address,bytes32,uint256,((address,uint96)[],address,(address,uint256)[],uint32,uint32,string))` and selector `0xfc8888bffd711da60bc5092b33f677d81896fe80ecc677b84cfab8184462b6e0`. - ```solidity - event OperatorDirectedAVSRewardsSubmissionCreated(address indexed caller, address indexed avs, bytes32 indexed operatorDirectedRewardsSubmissionHash, uint256 submissionNonce, OperatorDirectedRewardsSubmission operatorDirectedRewardsSubmission); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorDirectedAVSRewardsSubmissionCreated { - #[allow(missing_docs)] - pub caller: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub avs: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorDirectedRewardsSubmissionHash: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub submissionNonce: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub operatorDirectedRewardsSubmission: - ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorDirectedAVSRewardsSubmissionCreated { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Uint<256>, OperatorDirectedRewardsSubmission); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - const SIGNATURE: &'static str = "OperatorDirectedAVSRewardsSubmissionCreated(address,address,bytes32,uint256,((address,uint96)[],address,(address,uint256)[],uint32,uint32,string))"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 252u8, 136u8, 136u8, 191u8, 253u8, 113u8, 29u8, 166u8, 11u8, 197u8, 9u8, 43u8, - 51u8, 246u8, 119u8, 216u8, 24u8, 150u8, 254u8, 128u8, 236u8, 198u8, 119u8, - 184u8, 76u8, 250u8, 184u8, 24u8, 68u8, 98u8, 182u8, 224u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - caller: topics.1, - avs: topics.2, - operatorDirectedRewardsSubmissionHash: topics.3, - submissionNonce: data.0, - operatorDirectedRewardsSubmission: data.1, - } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.submissionNonce, - ), - ::tokenize( - &self.operatorDirectedRewardsSubmission, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self.caller.clone(), - self.avs.clone(), - self.operatorDirectedRewardsSubmissionHash.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.caller, - ); - out[2usize] = ::encode_topic( - &self.avs, - ); - out[3usize] = as alloy_sol_types::EventTopic>::encode_topic( - &self.operatorDirectedRewardsSubmissionHash, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorDirectedAVSRewardsSubmissionCreated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorDirectedAVSRewardsSubmissionCreated> for alloy_sol_types::private::LogData { - #[inline] - fn from( - this: &OperatorDirectedAVSRewardsSubmissionCreated, - ) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OperatorPISplitBipsSet(address,address,uint32,uint16,uint16)` and selector `0xd1e028bd664486a46ad26040e999cd2d22e1e9a094ee6afe19fcf64678f16f74`. - ```solidity - event OperatorPISplitBipsSet(address indexed caller, address indexed operator, uint32 activatedAt, uint16 oldOperatorPISplitBips, uint16 newOperatorPISplitBips); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OperatorPISplitBipsSet { - #[allow(missing_docs)] - pub caller: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub activatedAt: u32, - #[allow(missing_docs)] - pub oldOperatorPISplitBips: u16, - #[allow(missing_docs)] - pub newOperatorPISplitBips: u16, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OperatorPISplitBipsSet { - type DataTuple<'a> = ( - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Uint<16>, - alloy::sol_types::sol_data::Uint<16>, - ); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = - "OperatorPISplitBipsSet(address,address,uint32,uint16,uint16)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 209u8, 224u8, 40u8, 189u8, 102u8, 68u8, 134u8, 164u8, 106u8, 210u8, 96u8, 64u8, - 233u8, 153u8, 205u8, 45u8, 34u8, 225u8, 233u8, 160u8, 148u8, 238u8, 106u8, - 254u8, 25u8, 252u8, 246u8, 70u8, 120u8, 241u8, 111u8, 116u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - caller: topics.1, - operator: topics.2, - activatedAt: data.0, - oldOperatorPISplitBips: data.1, - newOperatorPISplitBips: data.2, - } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.activatedAt, - ), - as alloy_sol_types::SolType>::tokenize( - &self.oldOperatorPISplitBips, - ), - as alloy_sol_types::SolType>::tokenize( - &self.newOperatorPISplitBips, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.caller.clone(), self.operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.caller, - ); - out[2usize] = ::encode_topic( - &self.operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OperatorPISplitBipsSet { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OperatorPISplitBipsSet> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorPISplitBipsSet) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `RewardsClaimed(bytes32,address,address,address,address,uint256)` and selector `0x9543dbd55580842586a951f0386e24d68a5df99ae29e3b216588b45fd684ce31`. - ```solidity - event RewardsClaimed(bytes32 root, address indexed earner, address indexed claimer, address indexed recipient, address token, uint256 claimedAmount); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct RewardsClaimed { - #[allow(missing_docs)] - pub root: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub earner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub claimer: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub recipient: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub token: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub claimedAmount: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for RewardsClaimed { - type DataTuple<'a> = ( - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = - "RewardsClaimed(bytes32,address,address,address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 149u8, 67u8, 219u8, 213u8, 85u8, 128u8, 132u8, 37u8, 134u8, 169u8, 81u8, 240u8, - 56u8, 110u8, 36u8, 214u8, 138u8, 93u8, 249u8, 154u8, 226u8, 158u8, 59u8, 33u8, - 101u8, 136u8, 180u8, 95u8, 214u8, 132u8, 206u8, 49u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - root: data.0, - earner: topics.1, - claimer: topics.2, - recipient: topics.3, - token: data.1, - claimedAmount: data.2, - } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.root), - ::tokenize( - &self.token, - ), - as alloy_sol_types::SolType>::tokenize(&self.claimedAmount), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self.earner.clone(), - self.claimer.clone(), - self.recipient.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.earner, - ); - out[2usize] = ::encode_topic( - &self.claimer, - ); - out[3usize] = ::encode_topic( - &self.recipient, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for RewardsClaimed { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&RewardsClaimed> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &RewardsClaimed) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `RewardsForAllSubmitterSet(address,bool,bool)` and selector `0x4de6293e668df1398422e1def12118052c1539a03cbfedc145895d48d7685f1c`. - ```solidity - event RewardsForAllSubmitterSet(address indexed rewardsForAllSubmitter, bool indexed oldValue, bool indexed newValue); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct RewardsForAllSubmitterSet { - #[allow(missing_docs)] - pub rewardsForAllSubmitter: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub oldValue: bool, - #[allow(missing_docs)] - pub newValue: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for RewardsForAllSubmitterSet { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Bool, - alloy::sol_types::sol_data::Bool, - ); - const SIGNATURE: &'static str = "RewardsForAllSubmitterSet(address,bool,bool)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 77u8, 230u8, 41u8, 62u8, 102u8, 141u8, 241u8, 57u8, 132u8, 34u8, 225u8, 222u8, - 241u8, 33u8, 24u8, 5u8, 44u8, 21u8, 57u8, 160u8, 60u8, 191u8, 237u8, 193u8, - 69u8, 137u8, 93u8, 72u8, 215u8, 104u8, 95u8, 28u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { rewardsForAllSubmitter: topics.1, oldValue: topics.2, newValue: topics.3 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self.rewardsForAllSubmitter.clone(), - self.oldValue.clone(), - self.newValue.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.rewardsForAllSubmitter, - ); - out[2usize] = - ::encode_topic( - &self.oldValue, - ); - out[3usize] = - ::encode_topic( - &self.newValue, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for RewardsForAllSubmitterSet { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&RewardsForAllSubmitterSet> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &RewardsForAllSubmitterSet) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `RewardsSubmissionForAllCreated(address,uint256,bytes32,((address,uint96)[],address,uint256,uint32,uint32))` and selector `0x51088b8c89628df3a8174002c2a034d0152fce6af8415d651b2a4734bf270482`. - ```solidity - event RewardsSubmissionForAllCreated(address indexed submitter, uint256 indexed submissionNonce, bytes32 indexed rewardsSubmissionHash, RewardsSubmission rewardsSubmission); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct RewardsSubmissionForAllCreated { - #[allow(missing_docs)] - pub submitter: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub submissionNonce: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub rewardsSubmissionHash: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub rewardsSubmission: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for RewardsSubmissionForAllCreated { - type DataTuple<'a> = (RewardsSubmission,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - const SIGNATURE: &'static str = "RewardsSubmissionForAllCreated(address,uint256,bytes32,((address,uint96)[],address,uint256,uint32,uint32))"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 81u8, 8u8, 139u8, 140u8, 137u8, 98u8, 141u8, 243u8, 168u8, 23u8, 64u8, 2u8, - 194u8, 160u8, 52u8, 208u8, 21u8, 47u8, 206u8, 106u8, 248u8, 65u8, 93u8, 101u8, - 27u8, 42u8, 71u8, 52u8, 191u8, 39u8, 4u8, 130u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - submitter: topics.1, - submissionNonce: topics.2, - rewardsSubmissionHash: topics.3, - rewardsSubmission: data.0, - } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - (::tokenize(&self.rewardsSubmission),) - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self.submitter.clone(), - self.submissionNonce.clone(), - self.rewardsSubmissionHash.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.submitter, - ); - out[2usize] = as alloy_sol_types::EventTopic>::encode_topic(&self.submissionNonce); - out[3usize] = as alloy_sol_types::EventTopic>::encode_topic( - &self.rewardsSubmissionHash, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for RewardsSubmissionForAllCreated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&RewardsSubmissionForAllCreated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &RewardsSubmissionForAllCreated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `RewardsSubmissionForAllEarnersCreated(address,uint256,bytes32,((address,uint96)[],address,uint256,uint32,uint32))` and selector `0x5251b6fdefcb5d81144e735f69ea4c695fd43b0289ca53dc075033f5fc80068b`. - ```solidity - event RewardsSubmissionForAllEarnersCreated(address indexed tokenHopper, uint256 indexed submissionNonce, bytes32 indexed rewardsSubmissionHash, RewardsSubmission rewardsSubmission); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct RewardsSubmissionForAllEarnersCreated { - #[allow(missing_docs)] - pub tokenHopper: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub submissionNonce: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub rewardsSubmissionHash: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub rewardsSubmission: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for RewardsSubmissionForAllEarnersCreated { - type DataTuple<'a> = (RewardsSubmission,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - const SIGNATURE: &'static str = "RewardsSubmissionForAllEarnersCreated(address,uint256,bytes32,((address,uint96)[],address,uint256,uint32,uint32))"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 82u8, 81u8, 182u8, 253u8, 239u8, 203u8, 93u8, 129u8, 20u8, 78u8, 115u8, 95u8, - 105u8, 234u8, 76u8, 105u8, 95u8, 212u8, 59u8, 2u8, 137u8, 202u8, 83u8, 220u8, - 7u8, 80u8, 51u8, 245u8, 252u8, 128u8, 6u8, 139u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - tokenHopper: topics.1, - submissionNonce: topics.2, - rewardsSubmissionHash: topics.3, - rewardsSubmission: data.0, - } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - (::tokenize(&self.rewardsSubmission),) - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self.tokenHopper.clone(), - self.submissionNonce.clone(), - self.rewardsSubmissionHash.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.tokenHopper, - ); - out[2usize] = as alloy_sol_types::EventTopic>::encode_topic(&self.submissionNonce); - out[3usize] = as alloy_sol_types::EventTopic>::encode_topic( - &self.rewardsSubmissionHash, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for RewardsSubmissionForAllEarnersCreated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&RewardsSubmissionForAllEarnersCreated> for alloy_sol_types::private::LogData { - #[inline] - fn from( - this: &RewardsSubmissionForAllEarnersCreated, - ) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `RewardsUpdaterSet(address,address)` and selector `0x237b82f438d75fc568ebab484b75b01d9287b9e98b490b7c23221623b6705dbb`. - ```solidity - event RewardsUpdaterSet(address indexed oldRewardsUpdater, address indexed newRewardsUpdater); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct RewardsUpdaterSet { - #[allow(missing_docs)] - pub oldRewardsUpdater: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub newRewardsUpdater: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for RewardsUpdaterSet { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "RewardsUpdaterSet(address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 35u8, 123u8, 130u8, 244u8, 56u8, 215u8, 95u8, 197u8, 104u8, 235u8, 171u8, 72u8, - 75u8, 117u8, 176u8, 29u8, 146u8, 135u8, 185u8, 233u8, 139u8, 73u8, 11u8, 124u8, - 35u8, 34u8, 22u8, 35u8, 182u8, 112u8, 93u8, 187u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { oldRewardsUpdater: topics.1, newRewardsUpdater: topics.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self.oldRewardsUpdater.clone(), - self.newRewardsUpdater.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.oldRewardsUpdater, - ); - out[2usize] = ::encode_topic( - &self.newRewardsUpdater, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for RewardsUpdaterSet { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&RewardsUpdaterSet> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &RewardsUpdaterSet) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Function with signature `CALCULATION_INTERVAL_SECONDS()` and selector `0x9d45c281`. - ```solidity - function CALCULATION_INTERVAL_SECONDS() external view returns (uint32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct CALCULATION_INTERVAL_SECONDSCall {} - ///Container type for the return parameters of the [`CALCULATION_INTERVAL_SECONDS()`](CALCULATION_INTERVAL_SECONDSCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct CALCULATION_INTERVAL_SECONDSReturn { - pub _0: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: CALCULATION_INTERVAL_SECONDSCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for CALCULATION_INTERVAL_SECONDSCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u32,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: CALCULATION_INTERVAL_SECONDSReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for CALCULATION_INTERVAL_SECONDSReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for CALCULATION_INTERVAL_SECONDSCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = CALCULATION_INTERVAL_SECONDSReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "CALCULATION_INTERVAL_SECONDS()"; - const SELECTOR: [u8; 4] = [157u8, 69u8, 194u8, 129u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `GENESIS_REWARDS_TIMESTAMP()` and selector `0x131433b4`. - ```solidity - function GENESIS_REWARDS_TIMESTAMP() external view returns (uint32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct GENESIS_REWARDS_TIMESTAMPCall {} - ///Container type for the return parameters of the [`GENESIS_REWARDS_TIMESTAMP()`](GENESIS_REWARDS_TIMESTAMPCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct GENESIS_REWARDS_TIMESTAMPReturn { - pub _0: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: GENESIS_REWARDS_TIMESTAMPCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for GENESIS_REWARDS_TIMESTAMPCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u32,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: GENESIS_REWARDS_TIMESTAMPReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for GENESIS_REWARDS_TIMESTAMPReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for GENESIS_REWARDS_TIMESTAMPCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = GENESIS_REWARDS_TIMESTAMPReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "GENESIS_REWARDS_TIMESTAMP()"; - const SELECTOR: [u8; 4] = [19u8, 20u8, 51u8, 180u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `MAX_FUTURE_LENGTH()` and selector `0x04a0c502`. - ```solidity - function MAX_FUTURE_LENGTH() external view returns (uint32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct MAX_FUTURE_LENGTHCall {} - ///Container type for the return parameters of the [`MAX_FUTURE_LENGTH()`](MAX_FUTURE_LENGTHCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct MAX_FUTURE_LENGTHReturn { - pub _0: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: MAX_FUTURE_LENGTHCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for MAX_FUTURE_LENGTHCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u32,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: MAX_FUTURE_LENGTHReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for MAX_FUTURE_LENGTHReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for MAX_FUTURE_LENGTHCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = MAX_FUTURE_LENGTHReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "MAX_FUTURE_LENGTH()"; - const SELECTOR: [u8; 4] = [4u8, 160u8, 197u8, 2u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `MAX_RETROACTIVE_LENGTH()` and selector `0x37838ed0`. - ```solidity - function MAX_RETROACTIVE_LENGTH() external view returns (uint32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct MAX_RETROACTIVE_LENGTHCall {} - ///Container type for the return parameters of the [`MAX_RETROACTIVE_LENGTH()`](MAX_RETROACTIVE_LENGTHCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct MAX_RETROACTIVE_LENGTHReturn { - pub _0: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: MAX_RETROACTIVE_LENGTHCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for MAX_RETROACTIVE_LENGTHCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u32,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: MAX_RETROACTIVE_LENGTHReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for MAX_RETROACTIVE_LENGTHReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for MAX_RETROACTIVE_LENGTHCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = MAX_RETROACTIVE_LENGTHReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "MAX_RETROACTIVE_LENGTH()"; - const SELECTOR: [u8; 4] = [55u8, 131u8, 142u8, 208u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `MAX_REWARDS_DURATION()` and selector `0xbf21a8aa`. - ```solidity - function MAX_REWARDS_DURATION() external view returns (uint32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct MAX_REWARDS_DURATIONCall {} - ///Container type for the return parameters of the [`MAX_REWARDS_DURATION()`](MAX_REWARDS_DURATIONCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct MAX_REWARDS_DURATIONReturn { - pub _0: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: MAX_REWARDS_DURATIONCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for MAX_REWARDS_DURATIONCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u32,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: MAX_REWARDS_DURATIONReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for MAX_REWARDS_DURATIONReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for MAX_REWARDS_DURATIONCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = MAX_REWARDS_DURATIONReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "MAX_REWARDS_DURATION()"; - const SELECTOR: [u8; 4] = [191u8, 33u8, 168u8, 170u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `activationDelay()` and selector `0x3a8c0786`. - ```solidity - function activationDelay() external view returns (uint32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct activationDelayCall {} - ///Container type for the return parameters of the [`activationDelay()`](activationDelayCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct activationDelayReturn { - pub _0: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: activationDelayCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for activationDelayCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u32,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: activationDelayReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for activationDelayReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for activationDelayCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = activationDelayReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "activationDelay()"; - const SELECTOR: [u8; 4] = [58u8, 140u8, 7u8, 134u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `calculateEarnerLeafHash((address,bytes32))` and selector `0x149bc872`. - ```solidity - function calculateEarnerLeafHash(EarnerTreeMerkleLeaf memory leaf) external pure returns (bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct calculateEarnerLeafHashCall { - pub leaf: ::RustType, - } - ///Container type for the return parameters of the [`calculateEarnerLeafHash((address,bytes32))`](calculateEarnerLeafHashCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct calculateEarnerLeafHashReturn { - pub _0: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (EarnerTreeMerkleLeaf,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (::RustType,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: calculateEarnerLeafHashCall) -> Self { - (value.leaf,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for calculateEarnerLeafHashCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { leaf: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: calculateEarnerLeafHashReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for calculateEarnerLeafHashReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for calculateEarnerLeafHashCall { - type Parameters<'a> = (EarnerTreeMerkleLeaf,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = calculateEarnerLeafHashReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "calculateEarnerLeafHash((address,bytes32))"; - const SELECTOR: [u8; 4] = [20u8, 155u8, 200u8, 114u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize(&self.leaf),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `calculateTokenLeafHash((address,uint256))` and selector `0xf8cd8448`. - ```solidity - function calculateTokenLeafHash(TokenTreeMerkleLeaf memory leaf) external pure returns (bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct calculateTokenLeafHashCall { - pub leaf: ::RustType, - } - ///Container type for the return parameters of the [`calculateTokenLeafHash((address,uint256))`](calculateTokenLeafHashCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct calculateTokenLeafHashReturn { - pub _0: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (TokenTreeMerkleLeaf,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (::RustType,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: calculateTokenLeafHashCall) -> Self { - (value.leaf,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for calculateTokenLeafHashCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { leaf: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: calculateTokenLeafHashReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for calculateTokenLeafHashReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for calculateTokenLeafHashCall { - type Parameters<'a> = (TokenTreeMerkleLeaf,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = calculateTokenLeafHashReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "calculateTokenLeafHash((address,uint256))"; - const SELECTOR: [u8; 4] = [248u8, 205u8, 132u8, 72u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize(&self.leaf),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `checkClaim((uint32,uint32,bytes,(address,bytes32),uint32[],bytes[],(address,uint256)[]))` and selector `0x5e9d8348`. - ```solidity - function checkClaim(RewardsMerkleClaim memory claim) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct checkClaimCall { - pub claim: ::RustType, - } - ///Container type for the return parameters of the [`checkClaim((uint32,uint32,bytes,(address,bytes32),uint32[],bytes[],(address,uint256)[]))`](checkClaimCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct checkClaimReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (RewardsMerkleClaim,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (::RustType,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: checkClaimCall) -> Self { - (value.claim,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for checkClaimCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { claim: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: checkClaimReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for checkClaimReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for checkClaimCall { - type Parameters<'a> = (RewardsMerkleClaim,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = checkClaimReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "checkClaim((uint32,uint32,bytes,(address,bytes32),uint32[],bytes[],(address,uint256)[]))"; - const SELECTOR: [u8; 4] = [94u8, 157u8, 131u8, 72u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize(&self.claim),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `claimerFor(address)` and selector `0x2b9f64a4`. - ```solidity - function claimerFor(address earner) external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct claimerForCall { - pub earner: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`claimerFor(address)`](claimerForCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct claimerForReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: claimerForCall) -> Self { - (value.earner,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for claimerForCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { earner: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: claimerForReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for claimerForReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for claimerForCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = claimerForReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "claimerFor(address)"; - const SELECTOR: [u8; 4] = [43u8, 159u8, 100u8, 164u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.earner, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `createAVSRewardsSubmission(((address,uint96)[],address,uint256,uint32,uint32)[])` and selector `0xfce36c7d`. - ```solidity - function createAVSRewardsSubmission(RewardsSubmission[] memory rewardsSubmissions) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct createAVSRewardsSubmissionCall { - pub rewardsSubmissions: alloy::sol_types::private::Vec< - ::RustType, - >, - } - ///Container type for the return parameters of the [`createAVSRewardsSubmission(((address,uint96)[],address,uint256,uint32,uint32)[])`](createAVSRewardsSubmissionCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct createAVSRewardsSubmissionReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - ::RustType, - >, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: createAVSRewardsSubmissionCall) -> Self { - (value.rewardsSubmissions,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for createAVSRewardsSubmissionCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { rewardsSubmissions: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: createAVSRewardsSubmissionReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for createAVSRewardsSubmissionReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for createAVSRewardsSubmissionCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Array,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = createAVSRewardsSubmissionReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "createAVSRewardsSubmission(((address,uint96)[],address,uint256,uint32,uint32)[])"; - const SELECTOR: [u8; 4] = [252u8, 227u8, 108u8, 125u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.rewardsSubmissions), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `createOperatorDirectedAVSRewardsSubmission(address,((address,uint96)[],address,(address,uint256)[],uint32,uint32,string)[])` and selector `0x9cb9a5fa`. - ```solidity - function createOperatorDirectedAVSRewardsSubmission(address avs, OperatorDirectedRewardsSubmission[] memory operatorDirectedRewardsSubmissions) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct createOperatorDirectedAVSRewardsSubmissionCall { - pub avs: alloy::sol_types::private::Address, - pub operatorDirectedRewardsSubmissions: alloy::sol_types::private::Vec< - ::RustType, - >, - } - ///Container type for the return parameters of the [`createOperatorDirectedAVSRewardsSubmission(address,((address,uint96)[],address,(address,uint256)[],uint32,uint32,string)[])`](createOperatorDirectedAVSRewardsSubmissionCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct createOperatorDirectedAVSRewardsSubmissionReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Array, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Vec< - ::RustType, - >, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From - for UnderlyingRustTuple<'_> - { - fn from(value: createOperatorDirectedAVSRewardsSubmissionCall) -> Self { - (value.avs, value.operatorDirectedRewardsSubmissions) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for createOperatorDirectedAVSRewardsSubmissionCall - { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { avs: tuple.0, operatorDirectedRewardsSubmissions: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From - for UnderlyingRustTuple<'_> - { - fn from(value: createOperatorDirectedAVSRewardsSubmissionReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for createOperatorDirectedAVSRewardsSubmissionReturn - { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for createOperatorDirectedAVSRewardsSubmissionCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Array, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = createOperatorDirectedAVSRewardsSubmissionReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "createOperatorDirectedAVSRewardsSubmission(address,((address,uint96)[],address,(address,uint256)[],uint32,uint32,string)[])"; - const SELECTOR: [u8; 4] = [156u8, 185u8, 165u8, 250u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.avs, - ), - as alloy_sol_types::SolType>::tokenize( - &self.operatorDirectedRewardsSubmissions, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `createRewardsForAllEarners(((address,uint96)[],address,uint256,uint32,uint32)[])` and selector `0xff9f6cce`. - ```solidity - function createRewardsForAllEarners(RewardsSubmission[] memory rewardsSubmissions) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct createRewardsForAllEarnersCall { - pub rewardsSubmissions: alloy::sol_types::private::Vec< - ::RustType, - >, - } - ///Container type for the return parameters of the [`createRewardsForAllEarners(((address,uint96)[],address,uint256,uint32,uint32)[])`](createRewardsForAllEarnersCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct createRewardsForAllEarnersReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - ::RustType, - >, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: createRewardsForAllEarnersCall) -> Self { - (value.rewardsSubmissions,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for createRewardsForAllEarnersCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { rewardsSubmissions: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: createRewardsForAllEarnersReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for createRewardsForAllEarnersReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for createRewardsForAllEarnersCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Array,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = createRewardsForAllEarnersReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "createRewardsForAllEarners(((address,uint96)[],address,uint256,uint32,uint32)[])"; - const SELECTOR: [u8; 4] = [255u8, 159u8, 108u8, 206u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.rewardsSubmissions), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `createRewardsForAllSubmission(((address,uint96)[],address,uint256,uint32,uint32)[])` and selector `0x36af41fa`. - ```solidity - function createRewardsForAllSubmission(RewardsSubmission[] memory rewardsSubmission) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct createRewardsForAllSubmissionCall { - pub rewardsSubmission: alloy::sol_types::private::Vec< - ::RustType, - >, - } - ///Container type for the return parameters of the [`createRewardsForAllSubmission(((address,uint96)[],address,uint256,uint32,uint32)[])`](createRewardsForAllSubmissionCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct createRewardsForAllSubmissionReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - ::RustType, - >, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: createRewardsForAllSubmissionCall) -> Self { - (value.rewardsSubmission,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for createRewardsForAllSubmissionCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { rewardsSubmission: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: createRewardsForAllSubmissionReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for createRewardsForAllSubmissionReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for createRewardsForAllSubmissionCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Array,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = createRewardsForAllSubmissionReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "createRewardsForAllSubmission(((address,uint96)[],address,uint256,uint32,uint32)[])"; - const SELECTOR: [u8; 4] = [54u8, 175u8, 65u8, 250u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.rewardsSubmission), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `cumulativeClaimed(address,address)` and selector `0x865c6953`. - ```solidity - function cumulativeClaimed(address claimer, address token) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct cumulativeClaimedCall { - pub claimer: alloy::sol_types::private::Address, - pub token: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`cumulativeClaimed(address,address)`](cumulativeClaimedCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct cumulativeClaimedReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Address, alloy::sol_types::private::Address); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: cumulativeClaimedCall) -> Self { - (value.claimer, value.token) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for cumulativeClaimedCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { claimer: tuple.0, token: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: cumulativeClaimedReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for cumulativeClaimedReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for cumulativeClaimedCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = cumulativeClaimedReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "cumulativeClaimed(address,address)"; - const SELECTOR: [u8; 4] = [134u8, 92u8, 105u8, 83u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.claimer, - ), - ::tokenize( - &self.token, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `currRewardsCalculationEndTimestamp()` and selector `0x4d18cc35`. - ```solidity - function currRewardsCalculationEndTimestamp() external view returns (uint32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct currRewardsCalculationEndTimestampCall {} - ///Container type for the return parameters of the [`currRewardsCalculationEndTimestamp()`](currRewardsCalculationEndTimestampCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct currRewardsCalculationEndTimestampReturn { - pub _0: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: currRewardsCalculationEndTimestampCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for currRewardsCalculationEndTimestampCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u32,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: currRewardsCalculationEndTimestampReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for currRewardsCalculationEndTimestampReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for currRewardsCalculationEndTimestampCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = currRewardsCalculationEndTimestampReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "currRewardsCalculationEndTimestamp()"; - const SELECTOR: [u8; 4] = [77u8, 24u8, 204u8, 53u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `defaultOperatorSplitBips()` and selector `0x63f6a798`. - ```solidity - function defaultOperatorSplitBips() external view returns (uint16); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct defaultOperatorSplitBipsCall {} - ///Container type for the return parameters of the [`defaultOperatorSplitBips()`](defaultOperatorSplitBipsCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct defaultOperatorSplitBipsReturn { - pub _0: u16, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: defaultOperatorSplitBipsCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for defaultOperatorSplitBipsCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<16>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u16,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: defaultOperatorSplitBipsReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for defaultOperatorSplitBipsReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for defaultOperatorSplitBipsCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = defaultOperatorSplitBipsReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<16>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "defaultOperatorSplitBips()"; - const SELECTOR: [u8; 4] = [99u8, 246u8, 167u8, 152u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `disableRoot(uint32)` and selector `0xf96abf2e`. - ```solidity - function disableRoot(uint32 rootIndex) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct disableRootCall { - pub rootIndex: u32, - } - ///Container type for the return parameters of the [`disableRoot(uint32)`](disableRootCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct disableRootReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u32,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: disableRootCall) -> Self { - (value.rootIndex,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for disableRootCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { rootIndex: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: disableRootReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for disableRootReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for disableRootCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = disableRootReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "disableRoot(uint32)"; - const SELECTOR: [u8; 4] = [249u8, 106u8, 191u8, 46u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.rootIndex, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `domainSeparator()` and selector `0xf698da25`. - ```solidity - function domainSeparator() external view returns (bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct domainSeparatorCall {} - ///Container type for the return parameters of the [`domainSeparator()`](domainSeparatorCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct domainSeparatorReturn { - pub _0: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: domainSeparatorCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for domainSeparatorCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: domainSeparatorReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for domainSeparatorReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for domainSeparatorCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = domainSeparatorReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "domainSeparator()"; - const SELECTOR: [u8; 4] = [246u8, 152u8, 218u8, 37u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getCurrentClaimableDistributionRoot()` and selector `0x0e9a53cf`. - ```solidity - function getCurrentClaimableDistributionRoot() external view returns (DistributionRoot memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getCurrentClaimableDistributionRootCall {} - ///Container type for the return parameters of the [`getCurrentClaimableDistributionRoot()`](getCurrentClaimableDistributionRootCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getCurrentClaimableDistributionRootReturn { - pub _0: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getCurrentClaimableDistributionRootCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getCurrentClaimableDistributionRootCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (DistributionRoot,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (::RustType,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getCurrentClaimableDistributionRootReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getCurrentClaimableDistributionRootReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getCurrentClaimableDistributionRootCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getCurrentClaimableDistributionRootReturn; - type ReturnTuple<'a> = (DistributionRoot,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getCurrentClaimableDistributionRoot()"; - const SELECTOR: [u8; 4] = [14u8, 154u8, 83u8, 207u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getCurrentDistributionRoot()` and selector `0x9be3d4e4`. - ```solidity - function getCurrentDistributionRoot() external view returns (DistributionRoot memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getCurrentDistributionRootCall {} - ///Container type for the return parameters of the [`getCurrentDistributionRoot()`](getCurrentDistributionRootCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getCurrentDistributionRootReturn { - pub _0: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getCurrentDistributionRootCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getCurrentDistributionRootCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (DistributionRoot,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (::RustType,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getCurrentDistributionRootReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getCurrentDistributionRootReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getCurrentDistributionRootCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getCurrentDistributionRootReturn; - type ReturnTuple<'a> = (DistributionRoot,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getCurrentDistributionRoot()"; - const SELECTOR: [u8; 4] = [155u8, 227u8, 212u8, 228u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getDistributionRootAtIndex(uint256)` and selector `0xde02e503`. - ```solidity - function getDistributionRootAtIndex(uint256 index) external view returns (DistributionRoot memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getDistributionRootAtIndexCall { - pub index: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`getDistributionRootAtIndex(uint256)`](getDistributionRootAtIndexCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getDistributionRootAtIndexReturn { - pub _0: ::RustType, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getDistributionRootAtIndexCall) -> Self { - (value.index,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getDistributionRootAtIndexCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { index: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (DistributionRoot,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (::RustType,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getDistributionRootAtIndexReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getDistributionRootAtIndexReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getDistributionRootAtIndexCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getDistributionRootAtIndexReturn; - type ReturnTuple<'a> = (DistributionRoot,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getDistributionRootAtIndex(uint256)"; - const SELECTOR: [u8; 4] = [222u8, 2u8, 229u8, 3u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.index, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getDistributionRootsLength()` and selector `0x7b8f8b05`. - ```solidity - function getDistributionRootsLength() external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getDistributionRootsLengthCall {} - ///Container type for the return parameters of the [`getDistributionRootsLength()`](getDistributionRootsLengthCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getDistributionRootsLengthReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getDistributionRootsLengthCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getDistributionRootsLengthCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getDistributionRootsLengthReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getDistributionRootsLengthReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getDistributionRootsLengthCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getDistributionRootsLengthReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getDistributionRootsLength()"; - const SELECTOR: [u8; 4] = [123u8, 143u8, 139u8, 5u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getOperatorAVSSplit(address,address)` and selector `0xe063f81f`. - ```solidity - function getOperatorAVSSplit(address operator, address avs) external view returns (uint16); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorAVSSplitCall { - pub operator: alloy::sol_types::private::Address, - pub avs: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`getOperatorAVSSplit(address,address)`](getOperatorAVSSplitCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorAVSSplitReturn { - pub _0: u16, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Address, alloy::sol_types::private::Address); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorAVSSplitCall) -> Self { - (value.operator, value.avs) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorAVSSplitCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0, avs: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<16>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u16,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorAVSSplitReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorAVSSplitReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorAVSSplitCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorAVSSplitReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<16>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getOperatorAVSSplit(address,address)"; - const SELECTOR: [u8; 4] = [224u8, 99u8, 248u8, 31u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - ::tokenize( - &self.avs, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getOperatorPISplit(address)` and selector `0x4b943960`. - ```solidity - function getOperatorPISplit(address operator) external view returns (uint16); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorPISplitCall { - pub operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`getOperatorPISplit(address)`](getOperatorPISplitCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorPISplitReturn { - pub _0: u16, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorPISplitCall) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorPISplitCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<16>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u16,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorPISplitReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorPISplitReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorPISplitCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorPISplitReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<16>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getOperatorPISplit(address)"; - const SELECTOR: [u8; 4] = [75u8, 148u8, 57u8, 96u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.operator, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getRootIndexFromHash(bytes32)` and selector `0xe810ce21`. - ```solidity - function getRootIndexFromHash(bytes32 rootHash) external view returns (uint32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getRootIndexFromHashCall { - pub rootHash: alloy::sol_types::private::FixedBytes<32>, - } - ///Container type for the return parameters of the [`getRootIndexFromHash(bytes32)`](getRootIndexFromHashCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getRootIndexFromHashReturn { - pub _0: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getRootIndexFromHashCall) -> Self { - (value.rootHash,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getRootIndexFromHashCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { rootHash: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u32,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getRootIndexFromHashReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getRootIndexFromHashReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getRootIndexFromHashCall { - type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getRootIndexFromHashReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getRootIndexFromHash(bytes32)"; - const SELECTOR: [u8; 4] = [232u8, 16u8, 206u8, 33u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.rootHash), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `processClaim((uint32,uint32,bytes,(address,bytes32),uint32[],bytes[],(address,uint256)[]),address)` and selector `0x3ccc861d`. - ```solidity - function processClaim(RewardsMerkleClaim memory claim, address recipient) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct processClaimCall { - pub claim: ::RustType, - pub recipient: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`processClaim((uint32,uint32,bytes,(address,bytes32),uint32[],bytes[],(address,uint256)[]),address)`](processClaimCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct processClaimReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (RewardsMerkleClaim, alloy::sol_types::sol_data::Address); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - ::RustType, - alloy::sol_types::private::Address, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: processClaimCall) -> Self { - (value.claim, value.recipient) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for processClaimCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { claim: tuple.0, recipient: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: processClaimReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for processClaimReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for processClaimCall { - type Parameters<'a> = (RewardsMerkleClaim, alloy::sol_types::sol_data::Address); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = processClaimReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "processClaim((uint32,uint32,bytes,(address,bytes32),uint32[],bytes[],(address,uint256)[]),address)"; - const SELECTOR: [u8; 4] = [60u8, 204u8, 134u8, 29u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize(&self.claim), - ::tokenize( - &self.recipient, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `processClaims((uint32,uint32,bytes,(address,bytes32),uint32[],bytes[],(address,uint256)[])[],address)` and selector `0x4596021c`. - ```solidity - function processClaims(RewardsMerkleClaim[] memory claims, address recipient) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct processClaimsCall { - pub claims: alloy::sol_types::private::Vec< - ::RustType, - >, - pub recipient: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`processClaims((uint32,uint32,bytes,(address,bytes32),uint32[],bytes[],(address,uint256)[])[],address)`](processClaimsCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct processClaimsReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Address, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - ::RustType, - >, - alloy::sol_types::private::Address, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: processClaimsCall) -> Self { - (value.claims, value.recipient) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for processClaimsCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { claims: tuple.0, recipient: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: processClaimsReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for processClaimsReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for processClaimsCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Address, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = processClaimsReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "processClaims((uint32,uint32,bytes,(address,bytes32),uint32[],bytes[],(address,uint256)[])[],address)"; - const SELECTOR: [u8; 4] = [69u8, 150u8, 2u8, 28u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.claims), - ::tokenize( - &self.recipient, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `rewardsUpdater()` and selector `0xfbf1e2c1`. - ```solidity - function rewardsUpdater() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct rewardsUpdaterCall {} - ///Container type for the return parameters of the [`rewardsUpdater()`](rewardsUpdaterCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct rewardsUpdaterReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: rewardsUpdaterCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for rewardsUpdaterCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: rewardsUpdaterReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for rewardsUpdaterReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for rewardsUpdaterCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = rewardsUpdaterReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "rewardsUpdater()"; - const SELECTOR: [u8; 4] = [251u8, 241u8, 226u8, 193u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setActivationDelay(uint32)` and selector `0x58baaa3e`. - ```solidity - function setActivationDelay(uint32 _activationDelay) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setActivationDelayCall { - pub _activationDelay: u32, - } - ///Container type for the return parameters of the [`setActivationDelay(uint32)`](setActivationDelayCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setActivationDelayReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u32,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setActivationDelayCall) -> Self { - (value._activationDelay,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setActivationDelayCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _activationDelay: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setActivationDelayReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setActivationDelayReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setActivationDelayCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setActivationDelayReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setActivationDelay(uint32)"; - const SELECTOR: [u8; 4] = [88u8, 186u8, 170u8, 62u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self._activationDelay, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setClaimerFor(address)` and selector `0xa0169ddd`. - ```solidity - function setClaimerFor(address claimer) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setClaimerForCall { - pub claimer: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`setClaimerFor(address)`](setClaimerForCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setClaimerForReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setClaimerForCall) -> Self { - (value.claimer,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setClaimerForCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { claimer: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setClaimerForReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setClaimerForReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setClaimerForCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setClaimerForReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setClaimerFor(address)"; - const SELECTOR: [u8; 4] = [160u8, 22u8, 157u8, 221u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.claimer, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setDefaultOperatorSplit(uint16)` and selector `0xa50a1d9c`. - ```solidity - function setDefaultOperatorSplit(uint16 split) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setDefaultOperatorSplitCall { - pub split: u16, - } - ///Container type for the return parameters of the [`setDefaultOperatorSplit(uint16)`](setDefaultOperatorSplitCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setDefaultOperatorSplitReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<16>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u16,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setDefaultOperatorSplitCall) -> Self { - (value.split,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setDefaultOperatorSplitCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { split: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setDefaultOperatorSplitReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setDefaultOperatorSplitReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setDefaultOperatorSplitCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<16>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setDefaultOperatorSplitReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setDefaultOperatorSplit(uint16)"; - const SELECTOR: [u8; 4] = [165u8, 10u8, 29u8, 156u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.split, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setOperatorAVSSplit(address,address,uint16)` and selector `0xdcbb03b3`. - ```solidity - function setOperatorAVSSplit(address operator, address avs, uint16 split) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setOperatorAVSSplitCall { - pub operator: alloy::sol_types::private::Address, - pub avs: alloy::sol_types::private::Address, - pub split: u16, - } - ///Container type for the return parameters of the [`setOperatorAVSSplit(address,address,uint16)`](setOperatorAVSSplitCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setOperatorAVSSplitReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<16>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Address, alloy::sol_types::private::Address, u16); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setOperatorAVSSplitCall) -> Self { - (value.operator, value.avs, value.split) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setOperatorAVSSplitCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0, avs: tuple.1, split: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setOperatorAVSSplitReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setOperatorAVSSplitReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setOperatorAVSSplitCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<16>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setOperatorAVSSplitReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setOperatorAVSSplit(address,address,uint16)"; - const SELECTOR: [u8; 4] = [220u8, 187u8, 3u8, 179u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - ::tokenize( - &self.avs, - ), - as alloy_sol_types::SolType>::tokenize( - &self.split, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setOperatorPISplit(address,uint16)` and selector `0xb3dbb0e0`. - ```solidity - function setOperatorPISplit(address operator, uint16 split) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setOperatorPISplitCall { - pub operator: alloy::sol_types::private::Address, - pub split: u16, - } - ///Container type for the return parameters of the [`setOperatorPISplit(address,uint16)`](setOperatorPISplitCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setOperatorPISplitReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<16>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address, u16); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setOperatorPISplitCall) -> Self { - (value.operator, value.split) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setOperatorPISplitCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0, split: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setOperatorPISplitReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setOperatorPISplitReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setOperatorPISplitCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<16>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setOperatorPISplitReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setOperatorPISplit(address,uint16)"; - const SELECTOR: [u8; 4] = [179u8, 219u8, 176u8, 224u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - as alloy_sol_types::SolType>::tokenize( - &self.split, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setRewardsForAllSubmitter(address,bool)` and selector `0x0eb38345`. - ```solidity - function setRewardsForAllSubmitter(address _submitter, bool _newValue) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setRewardsForAllSubmitterCall { - pub _submitter: alloy::sol_types::private::Address, - pub _newValue: bool, - } - ///Container type for the return parameters of the [`setRewardsForAllSubmitter(address,bool)`](setRewardsForAllSubmitterCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setRewardsForAllSubmitterReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Bool); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address, bool); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setRewardsForAllSubmitterCall) -> Self { - (value._submitter, value._newValue) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setRewardsForAllSubmitterCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _submitter: tuple.0, _newValue: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setRewardsForAllSubmitterReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setRewardsForAllSubmitterReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setRewardsForAllSubmitterCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Bool); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setRewardsForAllSubmitterReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setRewardsForAllSubmitter(address,bool)"; - const SELECTOR: [u8; 4] = [14u8, 179u8, 131u8, 69u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self._submitter, - ), - ::tokenize( - &self._newValue, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setRewardsUpdater(address)` and selector `0x863cb9a9`. - ```solidity - function setRewardsUpdater(address _rewardsUpdater) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setRewardsUpdaterCall { - pub _rewardsUpdater: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`setRewardsUpdater(address)`](setRewardsUpdaterCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setRewardsUpdaterReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setRewardsUpdaterCall) -> Self { - (value._rewardsUpdater,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setRewardsUpdaterCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _rewardsUpdater: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setRewardsUpdaterReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setRewardsUpdaterReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setRewardsUpdaterCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setRewardsUpdaterReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setRewardsUpdater(address)"; - const SELECTOR: [u8; 4] = [134u8, 60u8, 185u8, 169u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self._rewardsUpdater, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `submitRoot(bytes32,uint32)` and selector `0x3efe1db6`. - ```solidity - function submitRoot(bytes32 root, uint32 rewardsCalculationEndTimestamp) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct submitRootCall { - pub root: alloy::sol_types::private::FixedBytes<32>, - pub rewardsCalculationEndTimestamp: u32, - } - ///Container type for the return parameters of the [`submitRoot(bytes32,uint32)`](submitRootCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct submitRootReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Uint<32>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>, u32); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: submitRootCall) -> Self { - (value.root, value.rewardsCalculationEndTimestamp) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for submitRootCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { root: tuple.0, rewardsCalculationEndTimestamp: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: submitRootReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for submitRootReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for submitRootCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::FixedBytes<32>, alloy::sol_types::sol_data::Uint<32>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = submitRootReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "submitRoot(bytes32,uint32)"; - const SELECTOR: [u8; 4] = [62u8, 254u8, 29u8, 182u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.root), - as alloy_sol_types::SolType>::tokenize( - &self.rewardsCalculationEndTimestamp, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`IRewardsCoordinator`](self) function calls. - pub enum IRewardsCoordinatorCalls { - CALCULATION_INTERVAL_SECONDS(CALCULATION_INTERVAL_SECONDSCall), - GENESIS_REWARDS_TIMESTAMP(GENESIS_REWARDS_TIMESTAMPCall), - MAX_FUTURE_LENGTH(MAX_FUTURE_LENGTHCall), - MAX_RETROACTIVE_LENGTH(MAX_RETROACTIVE_LENGTHCall), - MAX_REWARDS_DURATION(MAX_REWARDS_DURATIONCall), - activationDelay(activationDelayCall), - calculateEarnerLeafHash(calculateEarnerLeafHashCall), - calculateTokenLeafHash(calculateTokenLeafHashCall), - checkClaim(checkClaimCall), - claimerFor(claimerForCall), - createAVSRewardsSubmission(createAVSRewardsSubmissionCall), - createOperatorDirectedAVSRewardsSubmission(createOperatorDirectedAVSRewardsSubmissionCall), - createRewardsForAllEarners(createRewardsForAllEarnersCall), - createRewardsForAllSubmission(createRewardsForAllSubmissionCall), - cumulativeClaimed(cumulativeClaimedCall), - currRewardsCalculationEndTimestamp(currRewardsCalculationEndTimestampCall), - defaultOperatorSplitBips(defaultOperatorSplitBipsCall), - disableRoot(disableRootCall), - domainSeparator(domainSeparatorCall), - getCurrentClaimableDistributionRoot(getCurrentClaimableDistributionRootCall), - getCurrentDistributionRoot(getCurrentDistributionRootCall), - getDistributionRootAtIndex(getDistributionRootAtIndexCall), - getDistributionRootsLength(getDistributionRootsLengthCall), - getOperatorAVSSplit(getOperatorAVSSplitCall), - getOperatorPISplit(getOperatorPISplitCall), - getRootIndexFromHash(getRootIndexFromHashCall), - processClaim(processClaimCall), - processClaims(processClaimsCall), - rewardsUpdater(rewardsUpdaterCall), - setActivationDelay(setActivationDelayCall), - setClaimerFor(setClaimerForCall), - setDefaultOperatorSplit(setDefaultOperatorSplitCall), - setOperatorAVSSplit(setOperatorAVSSplitCall), - setOperatorPISplit(setOperatorPISplitCall), - setRewardsForAllSubmitter(setRewardsForAllSubmitterCall), - setRewardsUpdater(setRewardsUpdaterCall), - submitRoot(submitRootCall), - } - #[automatically_derived] - impl IRewardsCoordinatorCalls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [4u8, 160u8, 197u8, 2u8], - [14u8, 154u8, 83u8, 207u8], - [14u8, 179u8, 131u8, 69u8], - [19u8, 20u8, 51u8, 180u8], - [20u8, 155u8, 200u8, 114u8], - [43u8, 159u8, 100u8, 164u8], - [54u8, 175u8, 65u8, 250u8], - [55u8, 131u8, 142u8, 208u8], - [58u8, 140u8, 7u8, 134u8], - [60u8, 204u8, 134u8, 29u8], - [62u8, 254u8, 29u8, 182u8], - [69u8, 150u8, 2u8, 28u8], - [75u8, 148u8, 57u8, 96u8], - [77u8, 24u8, 204u8, 53u8], - [88u8, 186u8, 170u8, 62u8], - [94u8, 157u8, 131u8, 72u8], - [99u8, 246u8, 167u8, 152u8], - [123u8, 143u8, 139u8, 5u8], - [134u8, 60u8, 185u8, 169u8], - [134u8, 92u8, 105u8, 83u8], - [155u8, 227u8, 212u8, 228u8], - [156u8, 185u8, 165u8, 250u8], - [157u8, 69u8, 194u8, 129u8], - [160u8, 22u8, 157u8, 221u8], - [165u8, 10u8, 29u8, 156u8], - [179u8, 219u8, 176u8, 224u8], - [191u8, 33u8, 168u8, 170u8], - [220u8, 187u8, 3u8, 179u8], - [222u8, 2u8, 229u8, 3u8], - [224u8, 99u8, 248u8, 31u8], - [232u8, 16u8, 206u8, 33u8], - [246u8, 152u8, 218u8, 37u8], - [248u8, 205u8, 132u8, 72u8], - [249u8, 106u8, 191u8, 46u8], - [251u8, 241u8, 226u8, 193u8], - [252u8, 227u8, 108u8, 125u8], - [255u8, 159u8, 108u8, 206u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for IRewardsCoordinatorCalls { - const NAME: &'static str = "IRewardsCoordinatorCalls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 37usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::CALCULATION_INTERVAL_SECONDS(_) => { - ::SELECTOR - } - Self::GENESIS_REWARDS_TIMESTAMP(_) => { - ::SELECTOR - } - Self::MAX_FUTURE_LENGTH(_) => { - ::SELECTOR - } - Self::MAX_RETROACTIVE_LENGTH(_) => { - ::SELECTOR - } - Self::MAX_REWARDS_DURATION(_) => { - ::SELECTOR - } - Self::activationDelay(_) => { - ::SELECTOR - } - Self::calculateEarnerLeafHash(_) => { - ::SELECTOR - } - Self::calculateTokenLeafHash(_) => { - ::SELECTOR - } - Self::checkClaim(_) => { - ::SELECTOR - } - Self::claimerFor(_) => { - ::SELECTOR - } - Self::createAVSRewardsSubmission(_) => { - ::SELECTOR - } - Self::createOperatorDirectedAVSRewardsSubmission(_) => { - ::SELECTOR - } - Self::createRewardsForAllEarners(_) => { - ::SELECTOR - } - Self::createRewardsForAllSubmission(_) => { - ::SELECTOR - } - Self::cumulativeClaimed(_) => { - ::SELECTOR - } - Self::currRewardsCalculationEndTimestamp(_) => { - ::SELECTOR - } - Self::defaultOperatorSplitBips(_) => { - ::SELECTOR - } - Self::disableRoot(_) => { - ::SELECTOR - } - Self::domainSeparator(_) => { - ::SELECTOR - } - Self::getCurrentClaimableDistributionRoot(_) => { - ::SELECTOR - } - Self::getCurrentDistributionRoot(_) => { - ::SELECTOR - } - Self::getDistributionRootAtIndex(_) => { - ::SELECTOR - } - Self::getDistributionRootsLength(_) => { - ::SELECTOR - } - Self::getOperatorAVSSplit(_) => { - ::SELECTOR - } - Self::getOperatorPISplit(_) => { - ::SELECTOR - } - Self::getRootIndexFromHash(_) => { - ::SELECTOR - } - Self::processClaim(_) => { - ::SELECTOR - } - Self::processClaims(_) => { - ::SELECTOR - } - Self::rewardsUpdater(_) => { - ::SELECTOR - } - Self::setActivationDelay(_) => { - ::SELECTOR - } - Self::setClaimerFor(_) => { - ::SELECTOR - } - Self::setDefaultOperatorSplit(_) => { - ::SELECTOR - } - Self::setOperatorAVSSplit(_) => { - ::SELECTOR - } - Self::setOperatorPISplit(_) => { - ::SELECTOR - } - Self::setRewardsForAllSubmitter(_) => { - ::SELECTOR - } - Self::setRewardsUpdater(_) => { - ::SELECTOR - } - Self::submitRoot(_) => { - ::SELECTOR - } - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn( - &[u8], - bool, - ) - -> alloy_sol_types::Result] = &[ - { - fn MAX_FUTURE_LENGTH( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::MAX_FUTURE_LENGTH) - } - MAX_FUTURE_LENGTH - }, - { - fn getCurrentClaimableDistributionRoot( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - IRewardsCoordinatorCalls::getCurrentClaimableDistributionRoot, - ) - } - getCurrentClaimableDistributionRoot - }, - { - fn setRewardsForAllSubmitter( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::setRewardsForAllSubmitter) - } - setRewardsForAllSubmitter - }, - { - fn GENESIS_REWARDS_TIMESTAMP( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::GENESIS_REWARDS_TIMESTAMP) - } - GENESIS_REWARDS_TIMESTAMP - }, - { - fn calculateEarnerLeafHash( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::calculateEarnerLeafHash) - } - calculateEarnerLeafHash - }, - { - fn claimerFor( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IRewardsCoordinatorCalls::claimerFor) - } - claimerFor - }, - { - fn createRewardsForAllSubmission( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IRewardsCoordinatorCalls::createRewardsForAllSubmission) - } - createRewardsForAllSubmission - }, - { - fn MAX_RETROACTIVE_LENGTH( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::MAX_RETROACTIVE_LENGTH) - } - MAX_RETROACTIVE_LENGTH - }, - { - fn activationDelay( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::activationDelay) - } - activationDelay - }, - { - fn processClaim( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::processClaim) - } - processClaim - }, - { - fn submitRoot( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IRewardsCoordinatorCalls::submitRoot) - } - submitRoot - }, - { - fn processClaims( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::processClaims) - } - processClaims - }, - { - fn getOperatorPISplit( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::getOperatorPISplit) - } - getOperatorPISplit - }, - { - fn currRewardsCalculationEndTimestamp( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - IRewardsCoordinatorCalls::currRewardsCalculationEndTimestamp, - ) - } - currRewardsCalculationEndTimestamp - }, - { - fn setActivationDelay( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::setActivationDelay) - } - setActivationDelay - }, - { - fn checkClaim( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IRewardsCoordinatorCalls::checkClaim) - } - checkClaim - }, - { - fn defaultOperatorSplitBips( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::defaultOperatorSplitBips) - } - defaultOperatorSplitBips - }, - { - fn getDistributionRootsLength( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IRewardsCoordinatorCalls::getDistributionRootsLength) - } - getDistributionRootsLength - }, - { - fn setRewardsUpdater( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::setRewardsUpdater) - } - setRewardsUpdater - }, - { - fn cumulativeClaimed( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::cumulativeClaimed) - } - cumulativeClaimed - }, - { - fn getCurrentDistributionRoot( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IRewardsCoordinatorCalls::getCurrentDistributionRoot) - } - getCurrentDistributionRoot - }, - { - fn createOperatorDirectedAVSRewardsSubmission( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - IRewardsCoordinatorCalls::createOperatorDirectedAVSRewardsSubmission, - ) - } - createOperatorDirectedAVSRewardsSubmission - }, - { - fn CALCULATION_INTERVAL_SECONDS( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IRewardsCoordinatorCalls::CALCULATION_INTERVAL_SECONDS) - } - CALCULATION_INTERVAL_SECONDS - }, - { - fn setClaimerFor( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::setClaimerFor) - } - setClaimerFor - }, - { - fn setDefaultOperatorSplit( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::setDefaultOperatorSplit) - } - setDefaultOperatorSplit - }, - { - fn setOperatorPISplit( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::setOperatorPISplit) - } - setOperatorPISplit - }, - { - fn MAX_REWARDS_DURATION( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::MAX_REWARDS_DURATION) - } - MAX_REWARDS_DURATION - }, - { - fn setOperatorAVSSplit( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::setOperatorAVSSplit) - } - setOperatorAVSSplit - }, - { - fn getDistributionRootAtIndex( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IRewardsCoordinatorCalls::getDistributionRootAtIndex) - } - getDistributionRootAtIndex - }, - { - fn getOperatorAVSSplit( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::getOperatorAVSSplit) - } - getOperatorAVSSplit - }, - { - fn getRootIndexFromHash( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::getRootIndexFromHash) - } - getRootIndexFromHash - }, - { - fn domainSeparator( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::domainSeparator) - } - domainSeparator - }, - { - fn calculateTokenLeafHash( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::calculateTokenLeafHash) - } - calculateTokenLeafHash - }, - { - fn disableRoot( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::disableRoot) - } - disableRoot - }, - { - fn rewardsUpdater( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IRewardsCoordinatorCalls::rewardsUpdater) - } - rewardsUpdater - }, - { - fn createAVSRewardsSubmission( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IRewardsCoordinatorCalls::createAVSRewardsSubmission) - } - createAVSRewardsSubmission - }, - { - fn createRewardsForAllEarners( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IRewardsCoordinatorCalls::createRewardsForAllEarners) - } - createRewardsForAllEarners - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::CALCULATION_INTERVAL_SECONDS(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::GENESIS_REWARDS_TIMESTAMP(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::MAX_FUTURE_LENGTH(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::MAX_RETROACTIVE_LENGTH(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::MAX_REWARDS_DURATION(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::activationDelay(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::calculateEarnerLeafHash(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::calculateTokenLeafHash(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::checkClaim(inner) => { - ::abi_encoded_size(inner) - } - Self::claimerFor(inner) => { - ::abi_encoded_size(inner) - } - Self::createAVSRewardsSubmission(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::createOperatorDirectedAVSRewardsSubmission(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::createRewardsForAllEarners(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::createRewardsForAllSubmission(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::cumulativeClaimed(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::currRewardsCalculationEndTimestamp(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::defaultOperatorSplitBips(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::disableRoot(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::domainSeparator(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getCurrentClaimableDistributionRoot(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getCurrentDistributionRoot(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getDistributionRootAtIndex(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getDistributionRootsLength(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorAVSSplit(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorPISplit(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getRootIndexFromHash(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::processClaim(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::processClaims(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::rewardsUpdater(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::setActivationDelay(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::setClaimerFor(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::setDefaultOperatorSplit(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::setOperatorAVSSplit(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::setOperatorPISplit(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::setRewardsForAllSubmitter(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::setRewardsUpdater(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::submitRoot(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::CALCULATION_INTERVAL_SECONDS(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::GENESIS_REWARDS_TIMESTAMP(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::MAX_FUTURE_LENGTH(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::MAX_RETROACTIVE_LENGTH(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::MAX_REWARDS_DURATION(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::activationDelay(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::calculateEarnerLeafHash(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::calculateTokenLeafHash(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::checkClaim(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::claimerFor(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::createAVSRewardsSubmission(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::createOperatorDirectedAVSRewardsSubmission(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::createRewardsForAllEarners(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::createRewardsForAllSubmission(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::cumulativeClaimed(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::currRewardsCalculationEndTimestamp(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::defaultOperatorSplitBips(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::disableRoot(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::domainSeparator(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getCurrentClaimableDistributionRoot(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getCurrentDistributionRoot(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getDistributionRootAtIndex(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getDistributionRootsLength(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getOperatorAVSSplit(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getOperatorPISplit(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getRootIndexFromHash(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::processClaim(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::processClaims(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::rewardsUpdater(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::setActivationDelay(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::setClaimerFor(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::setDefaultOperatorSplit(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::setOperatorAVSSplit(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::setOperatorPISplit(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::setRewardsForAllSubmitter(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::setRewardsUpdater(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::submitRoot(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - } - } - } - ///Container for all the [`IRewardsCoordinator`](self) events. - pub enum IRewardsCoordinatorEvents { - AVSRewardsSubmissionCreated(AVSRewardsSubmissionCreated), - ActivationDelaySet(ActivationDelaySet), - ClaimerForSet(ClaimerForSet), - DefaultOperatorSplitBipsSet(DefaultOperatorSplitBipsSet), - DistributionRootDisabled(DistributionRootDisabled), - DistributionRootSubmitted(DistributionRootSubmitted), - OperatorAVSSplitBipsSet(OperatorAVSSplitBipsSet), - OperatorDirectedAVSRewardsSubmissionCreated(OperatorDirectedAVSRewardsSubmissionCreated), - OperatorPISplitBipsSet(OperatorPISplitBipsSet), - RewardsClaimed(RewardsClaimed), - RewardsForAllSubmitterSet(RewardsForAllSubmitterSet), - RewardsSubmissionForAllCreated(RewardsSubmissionForAllCreated), - RewardsSubmissionForAllEarnersCreated(RewardsSubmissionForAllEarnersCreated), - RewardsUpdaterSet(RewardsUpdaterSet), - } - #[automatically_derived] - impl IRewardsCoordinatorEvents { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[ - [ - 35u8, 123u8, 130u8, 244u8, 56u8, 215u8, 95u8, 197u8, 104u8, 235u8, 171u8, 72u8, - 75u8, 117u8, 176u8, 29u8, 146u8, 135u8, 185u8, 233u8, 139u8, 73u8, 11u8, 124u8, - 35u8, 34u8, 22u8, 35u8, 182u8, 112u8, 93u8, 187u8, - ], - [ - 69u8, 10u8, 54u8, 122u8, 56u8, 12u8, 78u8, 51u8, 158u8, 90u8, 231u8, 52u8, 12u8, - 132u8, 100u8, 239u8, 39u8, 175u8, 119u8, 129u8, 173u8, 153u8, 69u8, 207u8, 232u8, - 171u8, 216u8, 40u8, 248u8, 158u8, 98u8, 129u8, - ], - [ - 72u8, 225u8, 152u8, 182u8, 174u8, 53u8, 126u8, 82u8, 146u8, 4u8, 238u8, 83u8, - 168u8, 229u8, 20u8, 196u8, 112u8, 255u8, 119u8, 217u8, 204u8, 142u8, 79u8, 114u8, - 7u8, 248u8, 181u8, 212u8, 144u8, 174u8, 105u8, 52u8, - ], - [ - 77u8, 230u8, 41u8, 62u8, 102u8, 141u8, 241u8, 57u8, 132u8, 34u8, 225u8, 222u8, - 241u8, 33u8, 24u8, 5u8, 44u8, 21u8, 57u8, 160u8, 60u8, 191u8, 237u8, 193u8, 69u8, - 137u8, 93u8, 72u8, 215u8, 104u8, 95u8, 28u8, - ], - [ - 81u8, 8u8, 139u8, 140u8, 137u8, 98u8, 141u8, 243u8, 168u8, 23u8, 64u8, 2u8, 194u8, - 160u8, 52u8, 208u8, 21u8, 47u8, 206u8, 106u8, 248u8, 65u8, 93u8, 101u8, 27u8, 42u8, - 71u8, 52u8, 191u8, 39u8, 4u8, 130u8, - ], - [ - 82u8, 81u8, 182u8, 253u8, 239u8, 203u8, 93u8, 129u8, 20u8, 78u8, 115u8, 95u8, - 105u8, 234u8, 76u8, 105u8, 95u8, 212u8, 59u8, 2u8, 137u8, 202u8, 83u8, 220u8, 7u8, - 80u8, 51u8, 245u8, 252u8, 128u8, 6u8, 139u8, - ], - [ - 149u8, 67u8, 219u8, 213u8, 85u8, 128u8, 132u8, 37u8, 134u8, 169u8, 81u8, 240u8, - 56u8, 110u8, 36u8, 214u8, 138u8, 93u8, 249u8, 154u8, 226u8, 158u8, 59u8, 33u8, - 101u8, 136u8, 180u8, 95u8, 214u8, 132u8, 206u8, 49u8, - ], - [ - 175u8, 85u8, 124u8, 108u8, 2u8, 194u8, 8u8, 121u8, 72u8, 23u8, 167u8, 5u8, 96u8, - 156u8, 250u8, 147u8, 95u8, 130u8, 115u8, 18u8, 161u8, 173u8, 253u8, 210u8, 100u8, - 148u8, 182u8, 185u8, 93u8, 210u8, 180u8, 179u8, - ], - [ - 186u8, 185u8, 71u8, 147u8, 77u8, 66u8, 224u8, 173u8, 32u8, 111u8, 37u8, 201u8, - 202u8, 177u8, 139u8, 91u8, 182u8, 174u8, 20u8, 74u8, 207u8, 176u8, 15u8, 64u8, - 180u8, 227u8, 170u8, 89u8, 89u8, 12u8, 163u8, 18u8, - ], - [ - 209u8, 224u8, 40u8, 189u8, 102u8, 68u8, 134u8, 164u8, 106u8, 210u8, 96u8, 64u8, - 233u8, 153u8, 205u8, 45u8, 34u8, 225u8, 233u8, 160u8, 148u8, 238u8, 106u8, 254u8, - 25u8, 252u8, 246u8, 70u8, 120u8, 241u8, 111u8, 116u8, - ], - [ - 216u8, 80u8, 230u8, 229u8, 223u8, 164u8, 151u8, 183u8, 38u8, 97u8, 250u8, 115u8, - 223u8, 41u8, 35u8, 70u8, 78u8, 174u8, 217u8, 220u8, 47u8, 241u8, 211u8, 203u8, - 130u8, 188u8, 203u8, 254u8, 171u8, 229u8, 196u8, 30u8, - ], - [ - 230u8, 205u8, 78u8, 223u8, 220u8, 193u8, 246u8, 209u8, 48u8, 171u8, 53u8, 247u8, - 61u8, 114u8, 55u8, 143u8, 58u8, 100u8, 41u8, 68u8, 251u8, 78u8, 229u8, 189u8, - 132u8, 183u8, 128u8, 122u8, 129u8, 234u8, 28u8, 78u8, - ], - [ - 236u8, 216u8, 102u8, 195u8, 193u8, 88u8, 250u8, 0u8, 191u8, 52u8, 216u8, 3u8, - 213u8, 246u8, 2u8, 48u8, 0u8, 181u8, 112u8, 128u8, 188u8, 180u8, 138u8, 240u8, 4u8, - 194u8, 180u8, 180u8, 107u8, 58u8, 253u8, 8u8, - ], - [ - 252u8, 136u8, 136u8, 191u8, 253u8, 113u8, 29u8, 166u8, 11u8, 197u8, 9u8, 43u8, - 51u8, 246u8, 119u8, 216u8, 24u8, 150u8, 254u8, 128u8, 236u8, 198u8, 119u8, 184u8, - 76u8, 250u8, 184u8, 24u8, 68u8, 98u8, 182u8, 224u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for IRewardsCoordinatorEvents { - const NAME: &'static str = "IRewardsCoordinatorEvents"; - const COUNT: usize = 14usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some( - ::SIGNATURE_HASH, - ) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::AVSRewardsSubmissionCreated) - } - Some( - ::SIGNATURE_HASH, - ) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::ActivationDelaySet) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::ClaimerForSet) - } - Some( - ::SIGNATURE_HASH, - ) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::DefaultOperatorSplitBipsSet) - } - Some( - ::SIGNATURE_HASH, - ) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::DistributionRootDisabled) - } - Some( - ::SIGNATURE_HASH, - ) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::DistributionRootSubmitted) - } - Some( - ::SIGNATURE_HASH, - ) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::OperatorAVSSplitBipsSet) - } - Some( - ::SIGNATURE_HASH, - ) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::OperatorDirectedAVSRewardsSubmissionCreated) - } - Some( - ::SIGNATURE_HASH, - ) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::OperatorPISplitBipsSet) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::RewardsClaimed) - } - Some( - ::SIGNATURE_HASH, - ) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::RewardsForAllSubmitterSet) - } - Some( - ::SIGNATURE_HASH, - ) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::RewardsSubmissionForAllCreated) - } - Some( - ::SIGNATURE_HASH, - ) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::RewardsSubmissionForAllEarnersCreated) - } - Some( - ::SIGNATURE_HASH, - ) => { - ::decode_raw_log( - topics, - data, - validate, - ) - .map(Self::RewardsUpdaterSet) - } - _ => { - alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }) - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for IRewardsCoordinatorEvents { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::AVSRewardsSubmissionCreated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::ActivationDelaySet(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::ClaimerForSet(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::DefaultOperatorSplitBipsSet(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::DistributionRootDisabled(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::DistributionRootSubmitted(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorAVSSplitBipsSet(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorDirectedAVSRewardsSubmissionCreated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorPISplitBipsSet(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::RewardsClaimed(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::RewardsForAllSubmitterSet(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::RewardsSubmissionForAllCreated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::RewardsSubmissionForAllEarnersCreated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::RewardsUpdaterSet(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::AVSRewardsSubmissionCreated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::ActivationDelaySet(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::ClaimerForSet(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::DefaultOperatorSplitBipsSet(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::DistributionRootDisabled(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::DistributionRootSubmitted(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorAVSSplitBipsSet(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorDirectedAVSRewardsSubmissionCreated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorPISplitBipsSet(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::RewardsClaimed(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::RewardsForAllSubmitterSet(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::RewardsSubmissionForAllCreated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::RewardsSubmissionForAllEarnersCreated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::RewardsUpdaterSet(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IRewardsCoordinator`](self) contract instance. - - See the [wrapper's documentation](`IRewardsCoordinatorInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> IRewardsCoordinatorInstance { - IRewardsCoordinatorInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - IRewardsCoordinatorInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - IRewardsCoordinatorInstance::::deploy_builder(provider) - } - /**A [`IRewardsCoordinator`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IRewardsCoordinator`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct IRewardsCoordinatorInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IRewardsCoordinatorInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IRewardsCoordinatorInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IRewardsCoordinatorInstance - { - /**Creates a new wrapper around an on-chain [`IRewardsCoordinator`](self) contract instance. - - See the [wrapper's documentation](`IRewardsCoordinatorInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl IRewardsCoordinatorInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IRewardsCoordinatorInstance { - IRewardsCoordinatorInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IRewardsCoordinatorInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`CALCULATION_INTERVAL_SECONDS`] function. - pub fn CALCULATION_INTERVAL_SECONDS( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&CALCULATION_INTERVAL_SECONDSCall {}) - } - ///Creates a new call builder for the [`GENESIS_REWARDS_TIMESTAMP`] function. - pub fn GENESIS_REWARDS_TIMESTAMP( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&GENESIS_REWARDS_TIMESTAMPCall {}) - } - ///Creates a new call builder for the [`MAX_FUTURE_LENGTH`] function. - pub fn MAX_FUTURE_LENGTH( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&MAX_FUTURE_LENGTHCall {}) - } - ///Creates a new call builder for the [`MAX_RETROACTIVE_LENGTH`] function. - pub fn MAX_RETROACTIVE_LENGTH( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&MAX_RETROACTIVE_LENGTHCall {}) - } - ///Creates a new call builder for the [`MAX_REWARDS_DURATION`] function. - pub fn MAX_REWARDS_DURATION( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&MAX_REWARDS_DURATIONCall {}) - } - ///Creates a new call builder for the [`activationDelay`] function. - pub fn activationDelay( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&activationDelayCall {}) - } - ///Creates a new call builder for the [`calculateEarnerLeafHash`] function. - pub fn calculateEarnerLeafHash( - &self, - leaf: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&calculateEarnerLeafHashCall { leaf }) - } - ///Creates a new call builder for the [`calculateTokenLeafHash`] function. - pub fn calculateTokenLeafHash( - &self, - leaf: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&calculateTokenLeafHashCall { leaf }) - } - ///Creates a new call builder for the [`checkClaim`] function. - pub fn checkClaim( - &self, - claim: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&checkClaimCall { claim }) - } - ///Creates a new call builder for the [`claimerFor`] function. - pub fn claimerFor( - &self, - earner: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&claimerForCall { earner }) - } - ///Creates a new call builder for the [`createAVSRewardsSubmission`] function. - pub fn createAVSRewardsSubmission( - &self, - rewardsSubmissions: alloy::sol_types::private::Vec< - ::RustType, - >, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&createAVSRewardsSubmissionCall { rewardsSubmissions }) - } - ///Creates a new call builder for the [`createOperatorDirectedAVSRewardsSubmission`] function. - pub fn createOperatorDirectedAVSRewardsSubmission( - &self, - avs: alloy::sol_types::private::Address, - operatorDirectedRewardsSubmissions: alloy::sol_types::private::Vec< - ::RustType, - >, - ) -> alloy_contract::SolCallBuilder - { - self.call_builder(&createOperatorDirectedAVSRewardsSubmissionCall { - avs, - operatorDirectedRewardsSubmissions, - }) - } - ///Creates a new call builder for the [`createRewardsForAllEarners`] function. - pub fn createRewardsForAllEarners( - &self, - rewardsSubmissions: alloy::sol_types::private::Vec< - ::RustType, - >, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&createRewardsForAllEarnersCall { rewardsSubmissions }) - } - ///Creates a new call builder for the [`createRewardsForAllSubmission`] function. - pub fn createRewardsForAllSubmission( - &self, - rewardsSubmission: alloy::sol_types::private::Vec< - ::RustType, - >, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&createRewardsForAllSubmissionCall { rewardsSubmission }) - } - ///Creates a new call builder for the [`cumulativeClaimed`] function. - pub fn cumulativeClaimed( - &self, - claimer: alloy::sol_types::private::Address, - token: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&cumulativeClaimedCall { claimer, token }) - } - ///Creates a new call builder for the [`currRewardsCalculationEndTimestamp`] function. - pub fn currRewardsCalculationEndTimestamp( - &self, - ) -> alloy_contract::SolCallBuilder - { - self.call_builder(&currRewardsCalculationEndTimestampCall {}) - } - ///Creates a new call builder for the [`defaultOperatorSplitBips`] function. - pub fn defaultOperatorSplitBips( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&defaultOperatorSplitBipsCall {}) - } - ///Creates a new call builder for the [`disableRoot`] function. - pub fn disableRoot( - &self, - rootIndex: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&disableRootCall { rootIndex }) - } - ///Creates a new call builder for the [`domainSeparator`] function. - pub fn domainSeparator( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&domainSeparatorCall {}) - } - ///Creates a new call builder for the [`getCurrentClaimableDistributionRoot`] function. - pub fn getCurrentClaimableDistributionRoot( - &self, - ) -> alloy_contract::SolCallBuilder - { - self.call_builder(&getCurrentClaimableDistributionRootCall {}) - } - ///Creates a new call builder for the [`getCurrentDistributionRoot`] function. - pub fn getCurrentDistributionRoot( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getCurrentDistributionRootCall {}) - } - ///Creates a new call builder for the [`getDistributionRootAtIndex`] function. - pub fn getDistributionRootAtIndex( - &self, - index: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getDistributionRootAtIndexCall { index }) - } - ///Creates a new call builder for the [`getDistributionRootsLength`] function. - pub fn getDistributionRootsLength( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getDistributionRootsLengthCall {}) - } - ///Creates a new call builder for the [`getOperatorAVSSplit`] function. - pub fn getOperatorAVSSplit( - &self, - operator: alloy::sol_types::private::Address, - avs: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorAVSSplitCall { operator, avs }) - } - ///Creates a new call builder for the [`getOperatorPISplit`] function. - pub fn getOperatorPISplit( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorPISplitCall { operator }) - } - ///Creates a new call builder for the [`getRootIndexFromHash`] function. - pub fn getRootIndexFromHash( - &self, - rootHash: alloy::sol_types::private::FixedBytes<32>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getRootIndexFromHashCall { rootHash }) - } - ///Creates a new call builder for the [`processClaim`] function. - pub fn processClaim( - &self, - claim: ::RustType, - recipient: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&processClaimCall { claim, recipient }) - } - ///Creates a new call builder for the [`processClaims`] function. - pub fn processClaims( - &self, - claims: alloy::sol_types::private::Vec< - ::RustType, - >, - recipient: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&processClaimsCall { claims, recipient }) - } - ///Creates a new call builder for the [`rewardsUpdater`] function. - pub fn rewardsUpdater( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&rewardsUpdaterCall {}) - } - ///Creates a new call builder for the [`setActivationDelay`] function. - pub fn setActivationDelay( - &self, - _activationDelay: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setActivationDelayCall { _activationDelay }) - } - ///Creates a new call builder for the [`setClaimerFor`] function. - pub fn setClaimerFor( - &self, - claimer: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setClaimerForCall { claimer }) - } - ///Creates a new call builder for the [`setDefaultOperatorSplit`] function. - pub fn setDefaultOperatorSplit( - &self, - split: u16, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setDefaultOperatorSplitCall { split }) - } - ///Creates a new call builder for the [`setOperatorAVSSplit`] function. - pub fn setOperatorAVSSplit( - &self, - operator: alloy::sol_types::private::Address, - avs: alloy::sol_types::private::Address, - split: u16, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setOperatorAVSSplitCall { operator, avs, split }) - } - ///Creates a new call builder for the [`setOperatorPISplit`] function. - pub fn setOperatorPISplit( - &self, - operator: alloy::sol_types::private::Address, - split: u16, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setOperatorPISplitCall { operator, split }) - } - ///Creates a new call builder for the [`setRewardsForAllSubmitter`] function. - pub fn setRewardsForAllSubmitter( - &self, - _submitter: alloy::sol_types::private::Address, - _newValue: bool, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setRewardsForAllSubmitterCall { _submitter, _newValue }) - } - ///Creates a new call builder for the [`setRewardsUpdater`] function. - pub fn setRewardsUpdater( - &self, - _rewardsUpdater: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setRewardsUpdaterCall { _rewardsUpdater }) - } - ///Creates a new call builder for the [`submitRoot`] function. - pub fn submitRoot( - &self, - root: alloy::sol_types::private::FixedBytes<32>, - rewardsCalculationEndTimestamp: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&submitRootCall { root, rewardsCalculationEndTimestamp }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IRewardsCoordinatorInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`AVSRewardsSubmissionCreated`] event. - pub fn AVSRewardsSubmissionCreated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`ActivationDelaySet`] event. - pub fn ActivationDelaySet_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`ClaimerForSet`] event. - pub fn ClaimerForSet_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`DefaultOperatorSplitBipsSet`] event. - pub fn DefaultOperatorSplitBipsSet_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`DistributionRootDisabled`] event. - pub fn DistributionRootDisabled_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`DistributionRootSubmitted`] event. - pub fn DistributionRootSubmitted_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorAVSSplitBipsSet`] event. - pub fn OperatorAVSSplitBipsSet_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorDirectedAVSRewardsSubmissionCreated`] event. - pub fn OperatorDirectedAVSRewardsSubmissionCreated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorPISplitBipsSet`] event. - pub fn OperatorPISplitBipsSet_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`RewardsClaimed`] event. - pub fn RewardsClaimed_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`RewardsForAllSubmitterSet`] event. - pub fn RewardsForAllSubmitterSet_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`RewardsSubmissionForAllCreated`] event. - pub fn RewardsSubmissionForAllCreated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`RewardsSubmissionForAllEarnersCreated`] event. - pub fn RewardsSubmissionForAllEarnersCreated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`RewardsUpdaterSet`] event. - pub fn RewardsUpdaterSet_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/iservicemanager.rs b/crates/bindings/src/iservicemanager.rs deleted file mode 100644 index f347b039..00000000 --- a/crates/bindings/src/iservicemanager.rs +++ /dev/null @@ -1,3533 +0,0 @@ -///Module containing a contract's types and functions. -/** - -```solidity -library IRewardsCoordinator { - struct OperatorDirectedRewardsSubmission { StrategyAndMultiplier[] strategiesAndMultipliers; address token; OperatorReward[] operatorRewards; uint32 startTimestamp; uint32 duration; string description; } - struct OperatorReward { address operator; uint256 amount; } - struct RewardsSubmission { StrategyAndMultiplier[] strategiesAndMultipliers; address token; uint256 amount; uint32 startTimestamp; uint32 duration; } - struct StrategyAndMultiplier { address strategy; uint96 multiplier; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IRewardsCoordinator { - use super::*; - use alloy::sol_types as alloy_sol_types; - /**```solidity - struct OperatorDirectedRewardsSubmission { StrategyAndMultiplier[] strategiesAndMultipliers; address token; OperatorReward[] operatorRewards; uint32 startTimestamp; uint32 duration; string description; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OperatorDirectedRewardsSubmission { - pub strategiesAndMultipliers: alloy::sol_types::private::Vec< - ::RustType, - >, - pub token: alloy::sol_types::private::Address, - pub operatorRewards: - alloy::sol_types::private::Vec<::RustType>, - pub startTimestamp: u32, - pub duration: u32, - pub description: alloy::sol_types::private::String, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::String, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - ::RustType, - >, - alloy::sol_types::private::Address, - alloy::sol_types::private::Vec<::RustType>, - u32, - u32, - alloy::sol_types::private::String, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: OperatorDirectedRewardsSubmission) -> Self { - ( - value.strategiesAndMultipliers, - value.token, - value.operatorRewards, - value.startTimestamp, - value.duration, - value.description, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OperatorDirectedRewardsSubmission { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - strategiesAndMultipliers: tuple.0, - token: tuple.1, - operatorRewards: tuple.2, - startTimestamp: tuple.3, - duration: tuple.4, - description: tuple.5, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for OperatorDirectedRewardsSubmission { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for OperatorDirectedRewardsSubmission { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.strategiesAndMultipliers, - ), - ::tokenize( - &self.token, - ), - as alloy_sol_types::SolType>::tokenize(&self.operatorRewards), - as alloy_sol_types::SolType>::tokenize(&self.startTimestamp), - as alloy_sol_types::SolType>::tokenize(&self.duration), - ::tokenize( - &self.description, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for OperatorDirectedRewardsSubmission { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for OperatorDirectedRewardsSubmission { - const NAME: &'static str = "OperatorDirectedRewardsSubmission"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "OperatorDirectedRewardsSubmission(StrategyAndMultiplier[] strategiesAndMultipliers,address token,OperatorReward[] operatorRewards,uint32 startTimestamp,uint32 duration,string description)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - let mut components = alloy_sol_types::private::Vec::with_capacity(2); - components - .push( - ::eip712_root_type(), - ); - components.extend( - ::eip712_components(), - ); - components.push(::eip712_root_type()); - components - .extend(::eip712_components()); - components - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - as alloy_sol_types::SolType>::eip712_data_word( - &self.strategiesAndMultipliers, - ) - .0, - ::eip712_data_word( - &self.token, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.operatorRewards, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.startTimestamp, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.duration) - .0, - ::eip712_data_word( - &self.description, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for OperatorDirectedRewardsSubmission { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.strategiesAndMultipliers, - ) - + ::topic_preimage_length( - &rust.token, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.operatorRewards, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.startTimestamp, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.duration, - ) - + ::topic_preimage_length( - &rust.description, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.strategiesAndMultipliers, - out, - ); - ::encode_topic_preimage( - &rust.token, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.operatorRewards, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.startTimestamp, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.duration, - out, - ); - ::encode_topic_preimage( - &rust.description, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct OperatorReward { address operator; uint256 amount; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OperatorReward { - pub operator: alloy::sol_types::private::Address, - pub amount: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: OperatorReward) -> Self { - (value.operator, value.amount) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OperatorReward { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0, amount: tuple.1 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for OperatorReward { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for OperatorReward { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - as alloy_sol_types::SolType>::tokenize( - &self.amount, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for OperatorReward { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for OperatorReward { - const NAME: &'static str = "OperatorReward"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "OperatorReward(address operator,uint256 amount)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.operator, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.amount) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for OperatorReward { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.operator, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.amount, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.operator, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.amount, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct RewardsSubmission { StrategyAndMultiplier[] strategiesAndMultipliers; address token; uint256 amount; uint32 startTimestamp; uint32 duration; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct RewardsSubmission { - pub strategiesAndMultipliers: alloy::sol_types::private::Vec< - ::RustType, - >, - pub token: alloy::sol_types::private::Address, - pub amount: alloy::sol_types::private::primitives::aliases::U256, - pub startTimestamp: u32, - pub duration: u32, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - ::RustType, - >, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - u32, - u32, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: RewardsSubmission) -> Self { - ( - value.strategiesAndMultipliers, - value.token, - value.amount, - value.startTimestamp, - value.duration, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for RewardsSubmission { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - strategiesAndMultipliers: tuple.0, - token: tuple.1, - amount: tuple.2, - startTimestamp: tuple.3, - duration: tuple.4, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for RewardsSubmission { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for RewardsSubmission { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.strategiesAndMultipliers, - ), - ::tokenize( - &self.token, - ), - as alloy_sol_types::SolType>::tokenize(&self.amount), - as alloy_sol_types::SolType>::tokenize(&self.startTimestamp), - as alloy_sol_types::SolType>::tokenize(&self.duration), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for RewardsSubmission { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for RewardsSubmission { - const NAME: &'static str = "RewardsSubmission"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "RewardsSubmission(StrategyAndMultiplier[] strategiesAndMultipliers,address token,uint256 amount,uint32 startTimestamp,uint32 duration)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - let mut components = alloy_sol_types::private::Vec::with_capacity(1); - components - .push( - ::eip712_root_type(), - ); - components.extend( - ::eip712_components(), - ); - components - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - as alloy_sol_types::SolType>::eip712_data_word( - &self.strategiesAndMultipliers, - ) - .0, - ::eip712_data_word( - &self.token, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.amount) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.startTimestamp, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.duration) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for RewardsSubmission { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.strategiesAndMultipliers, - ) - + ::topic_preimage_length( - &rust.token, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.amount, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.startTimestamp, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.duration, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.strategiesAndMultipliers, - out, - ); - ::encode_topic_preimage( - &rust.token, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.amount, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.startTimestamp, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.duration, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - /**```solidity - struct StrategyAndMultiplier { address strategy; uint96 multiplier; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct StrategyAndMultiplier { - pub strategy: alloy::sol_types::private::Address, - pub multiplier: alloy::sol_types::private::primitives::aliases::U96, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<96>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U96, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: StrategyAndMultiplier) -> Self { - (value.strategy, value.multiplier) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for StrategyAndMultiplier { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { strategy: tuple.0, multiplier: tuple.1 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for StrategyAndMultiplier { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for StrategyAndMultiplier { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.strategy, - ), - as alloy_sol_types::SolType>::tokenize( - &self.multiplier, - ), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for StrategyAndMultiplier { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for StrategyAndMultiplier { - const NAME: &'static str = "StrategyAndMultiplier"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "StrategyAndMultiplier(address strategy,uint96 multiplier)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.strategy, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.multiplier) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for StrategyAndMultiplier { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.strategy, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.multiplier, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.strategy, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.multiplier, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IRewardsCoordinator`](self) contract instance. - - See the [wrapper's documentation](`IRewardsCoordinatorInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> IRewardsCoordinatorInstance { - IRewardsCoordinatorInstance::::new(address, provider) - } - /**A [`IRewardsCoordinator`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IRewardsCoordinator`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct IRewardsCoordinatorInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IRewardsCoordinatorInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IRewardsCoordinatorInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IRewardsCoordinatorInstance - { - /**Creates a new wrapper around an on-chain [`IRewardsCoordinator`](self) contract instance. - - See the [wrapper's documentation](`IRewardsCoordinatorInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl IRewardsCoordinatorInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IRewardsCoordinatorInstance { - IRewardsCoordinatorInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IRewardsCoordinatorInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IRewardsCoordinatorInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - } -} -///Module containing a contract's types and functions. -/** - -```solidity -library ISignatureUtils { - struct SignatureWithSaltAndExpiry { bytes signature; bytes32 salt; uint256 expiry; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod ISignatureUtils { - use super::*; - use alloy::sol_types as alloy_sol_types; - /**```solidity - struct SignatureWithSaltAndExpiry { bytes signature; bytes32 salt; uint256 expiry; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct SignatureWithSaltAndExpiry { - pub signature: alloy::sol_types::private::Bytes, - pub salt: alloy::sol_types::private::FixedBytes<32>, - pub expiry: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Bytes, - alloy::sol_types::private::FixedBytes<32>, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: SignatureWithSaltAndExpiry) -> Self { - (value.signature, value.salt, value.expiry) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for SignatureWithSaltAndExpiry { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { signature: tuple.0, salt: tuple.1, expiry: tuple.2 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for SignatureWithSaltAndExpiry { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for SignatureWithSaltAndExpiry { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.signature, - ), - as alloy_sol_types::SolType>::tokenize(&self.salt), - as alloy_sol_types::SolType>::tokenize(&self.expiry), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for SignatureWithSaltAndExpiry { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for SignatureWithSaltAndExpiry { - const NAME: &'static str = "SignatureWithSaltAndExpiry"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "SignatureWithSaltAndExpiry(bytes signature,bytes32 salt,uint256 expiry)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.signature, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.salt) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.expiry) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for SignatureWithSaltAndExpiry { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.signature, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.salt) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.expiry, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.signature, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.salt, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.expiry, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`ISignatureUtils`](self) contract instance. - - See the [wrapper's documentation](`ISignatureUtilsInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> ISignatureUtilsInstance { - ISignatureUtilsInstance::::new(address, provider) - } - /**A [`ISignatureUtils`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`ISignatureUtils`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct ISignatureUtilsInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for ISignatureUtilsInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ISignatureUtilsInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ISignatureUtilsInstance - { - /**Creates a new wrapper around an on-chain [`ISignatureUtils`](self) contract instance. - - See the [wrapper's documentation](`ISignatureUtilsInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl ISignatureUtilsInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> ISignatureUtilsInstance { - ISignatureUtilsInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ISignatureUtilsInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ISignatureUtilsInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - } -} -/** - -Generated by the following Solidity interface... -```solidity -library IRewardsCoordinator { - struct OperatorDirectedRewardsSubmission { - StrategyAndMultiplier[] strategiesAndMultipliers; - address token; - OperatorReward[] operatorRewards; - uint32 startTimestamp; - uint32 duration; - string description; - } - struct OperatorReward { - address operator; - uint256 amount; - } - struct RewardsSubmission { - StrategyAndMultiplier[] strategiesAndMultipliers; - address token; - uint256 amount; - uint32 startTimestamp; - uint32 duration; - } - struct StrategyAndMultiplier { - address strategy; - uint96 multiplier; - } -} - -library ISignatureUtils { - struct SignatureWithSaltAndExpiry { - bytes signature; - bytes32 salt; - uint256 expiry; - } -} - -interface IServiceManager { - event RewardsInitiatorUpdated(address prevRewardsInitiator, address newRewardsInitiator); - - function avsDirectory() external view returns (address); - function createAVSRewardsSubmission(IRewardsCoordinator.RewardsSubmission[] memory rewardsSubmissions) external; - function createOperatorDirectedAVSRewardsSubmission(IRewardsCoordinator.OperatorDirectedRewardsSubmission[] memory operatorDirectedRewardsSubmissions) external; - function deregisterOperatorFromAVS(address operator) external; - function getOperatorRestakedStrategies(address operator) external view returns (address[] memory); - function getRestakeableStrategies() external view returns (address[] memory); - function registerOperatorToAVS(address operator, ISignatureUtils.SignatureWithSaltAndExpiry memory operatorSignature) external; - function setClaimerFor(address claimer) external; - function updateAVSMetadataURI(string memory _metadataURI) external; -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "avsDirectory", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "createAVSRewardsSubmission", - "inputs": [ - { - "name": "rewardsSubmissions", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.RewardsSubmission[]", - "components": [ - { - "name": "strategiesAndMultipliers", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.StrategyAndMultiplier[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - }, - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "startTimestamp", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "duration", - "type": "uint32", - "internalType": "uint32" - } - ] - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "createOperatorDirectedAVSRewardsSubmission", - "inputs": [ - { - "name": "operatorDirectedRewardsSubmissions", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.OperatorDirectedRewardsSubmission[]", - "components": [ - { - "name": "strategiesAndMultipliers", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.StrategyAndMultiplier[]", - "components": [ - { - "name": "strategy", - "type": "address", - "internalType": "contract IStrategy" - }, - { - "name": "multiplier", - "type": "uint96", - "internalType": "uint96" - } - ] - }, - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "operatorRewards", - "type": "tuple[]", - "internalType": "struct IRewardsCoordinator.OperatorReward[]", - "components": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "startTimestamp", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "duration", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "description", - "type": "string", - "internalType": "string" - } - ] - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "deregisterOperatorFromAVS", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "getOperatorRestakedStrategies", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "address[]", - "internalType": "address[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getRestakeableStrategies", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address[]", - "internalType": "address[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "registerOperatorToAVS", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "operatorSignature", - "type": "tuple", - "internalType": "struct ISignatureUtils.SignatureWithSaltAndExpiry", - "components": [ - { - "name": "signature", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "salt", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "expiry", - "type": "uint256", - "internalType": "uint256" - } - ] - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "setClaimerFor", - "inputs": [ - { - "name": "claimer", - "type": "address", - "internalType": "address" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "updateAVSMetadataURI", - "inputs": [ - { - "name": "_metadataURI", - "type": "string", - "internalType": "string" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "event", - "name": "RewardsInitiatorUpdated", - "inputs": [ - { - "name": "prevRewardsInitiator", - "type": "address", - "indexed": false, - "internalType": "address" - }, - { - "name": "newRewardsInitiator", - "type": "address", - "indexed": false, - "internalType": "address" - } - ], - "anonymous": false - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IServiceManager { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**Event with signature `RewardsInitiatorUpdated(address,address)` and selector `0xe11cddf1816a43318ca175bbc52cd0185436e9cbead7c83acc54a73e461717e3`. - ```solidity - event RewardsInitiatorUpdated(address prevRewardsInitiator, address newRewardsInitiator); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct RewardsInitiatorUpdated { - #[allow(missing_docs)] - pub prevRewardsInitiator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub newRewardsInitiator: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for RewardsInitiatorUpdated { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "RewardsInitiatorUpdated(address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 225u8, 28u8, 221u8, 241u8, 129u8, 106u8, 67u8, 49u8, 140u8, 161u8, 117u8, - 187u8, 197u8, 44u8, 208u8, 24u8, 84u8, 54u8, 233u8, 203u8, 234u8, 215u8, 200u8, - 58u8, 204u8, 84u8, 167u8, 62u8, 70u8, 23u8, 23u8, 227u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { prevRewardsInitiator: data.0, newRewardsInitiator: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - ::tokenize( - &self.prevRewardsInitiator, - ), - ::tokenize( - &self.newRewardsInitiator, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for RewardsInitiatorUpdated { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&RewardsInitiatorUpdated> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &RewardsInitiatorUpdated) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Function with signature `avsDirectory()` and selector `0x6b3aa72e`. - ```solidity - function avsDirectory() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct avsDirectoryCall {} - ///Container type for the return parameters of the [`avsDirectory()`](avsDirectoryCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct avsDirectoryReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: avsDirectoryCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for avsDirectoryCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: avsDirectoryReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for avsDirectoryReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for avsDirectoryCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = avsDirectoryReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "avsDirectory()"; - const SELECTOR: [u8; 4] = [107u8, 58u8, 167u8, 46u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `createAVSRewardsSubmission(((address,uint96)[],address,uint256,uint32,uint32)[])` and selector `0xfce36c7d`. - ```solidity - function createAVSRewardsSubmission(IRewardsCoordinator.RewardsSubmission[] memory rewardsSubmissions) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct createAVSRewardsSubmissionCall { - pub rewardsSubmissions: alloy::sol_types::private::Vec< - ::RustType, - >, - } - ///Container type for the return parameters of the [`createAVSRewardsSubmission(((address,uint96)[],address,uint256,uint32,uint32)[])`](createAVSRewardsSubmissionCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct createAVSRewardsSubmissionReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - ::RustType, - >, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: createAVSRewardsSubmissionCall) -> Self { - (value.rewardsSubmissions,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for createAVSRewardsSubmissionCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { rewardsSubmissions: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: createAVSRewardsSubmissionReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for createAVSRewardsSubmissionReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for createAVSRewardsSubmissionCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Array,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = createAVSRewardsSubmissionReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "createAVSRewardsSubmission(((address,uint96)[],address,uint256,uint32,uint32)[])"; - const SELECTOR: [u8; 4] = [252u8, 227u8, 108u8, 125u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.rewardsSubmissions), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `createOperatorDirectedAVSRewardsSubmission(((address,uint96)[],address,(address,uint256)[],uint32,uint32,string)[])` and selector `0xa20b99bf`. - ```solidity - function createOperatorDirectedAVSRewardsSubmission(IRewardsCoordinator.OperatorDirectedRewardsSubmission[] memory operatorDirectedRewardsSubmissions) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct createOperatorDirectedAVSRewardsSubmissionCall { - pub operatorDirectedRewardsSubmissions: alloy::sol_types::private::Vec< - ::RustType, - >, - } - ///Container type for the return parameters of the [`createOperatorDirectedAVSRewardsSubmission(((address,uint96)[],address,(address,uint256)[],uint32,uint32,string)[])`](createOperatorDirectedAVSRewardsSubmissionCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct createOperatorDirectedAVSRewardsSubmissionReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Array< - IRewardsCoordinator::OperatorDirectedRewardsSubmission, - >, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - ::RustType, - >, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From - for UnderlyingRustTuple<'_> - { - fn from(value: createOperatorDirectedAVSRewardsSubmissionCall) -> Self { - (value.operatorDirectedRewardsSubmissions,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for createOperatorDirectedAVSRewardsSubmissionCall - { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operatorDirectedRewardsSubmissions: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From - for UnderlyingRustTuple<'_> - { - fn from(value: createOperatorDirectedAVSRewardsSubmissionReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for createOperatorDirectedAVSRewardsSubmissionReturn - { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for createOperatorDirectedAVSRewardsSubmissionCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Array< - IRewardsCoordinator::OperatorDirectedRewardsSubmission, - >, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = createOperatorDirectedAVSRewardsSubmissionReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "createOperatorDirectedAVSRewardsSubmission(((address,uint96)[],address,(address,uint256)[],uint32,uint32,string)[])"; - const SELECTOR: [u8; 4] = [162u8, 11u8, 153u8, 191u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.operatorDirectedRewardsSubmissions - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `deregisterOperatorFromAVS(address)` and selector `0xa364f4da`. - ```solidity - function deregisterOperatorFromAVS(address operator) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct deregisterOperatorFromAVSCall { - pub operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`deregisterOperatorFromAVS(address)`](deregisterOperatorFromAVSCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct deregisterOperatorFromAVSReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: deregisterOperatorFromAVSCall) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for deregisterOperatorFromAVSCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: deregisterOperatorFromAVSReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for deregisterOperatorFromAVSReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for deregisterOperatorFromAVSCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = deregisterOperatorFromAVSReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "deregisterOperatorFromAVS(address)"; - const SELECTOR: [u8; 4] = [163u8, 100u8, 244u8, 218u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.operator, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getOperatorRestakedStrategies(address)` and selector `0x33cfb7b7`. - ```solidity - function getOperatorRestakedStrategies(address operator) external view returns (address[] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorRestakedStrategiesCall { - pub operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`getOperatorRestakedStrategies(address)`](getOperatorRestakedStrategiesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorRestakedStrategiesReturn { - pub _0: alloy::sol_types::private::Vec, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorRestakedStrategiesCall) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorRestakedStrategiesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Vec,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorRestakedStrategiesReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorRestakedStrategiesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorRestakedStrategiesCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorRestakedStrategiesReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getOperatorRestakedStrategies(address)"; - const SELECTOR: [u8; 4] = [51u8, 207u8, 183u8, 183u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.operator, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getRestakeableStrategies()` and selector `0xe481af9d`. - ```solidity - function getRestakeableStrategies() external view returns (address[] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getRestakeableStrategiesCall {} - ///Container type for the return parameters of the [`getRestakeableStrategies()`](getRestakeableStrategiesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getRestakeableStrategiesReturn { - pub _0: alloy::sol_types::private::Vec, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getRestakeableStrategiesCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getRestakeableStrategiesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Vec,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getRestakeableStrategiesReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getRestakeableStrategiesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getRestakeableStrategiesCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getRestakeableStrategiesReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getRestakeableStrategies()"; - const SELECTOR: [u8; 4] = [228u8, 129u8, 175u8, 157u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `registerOperatorToAVS(address,(bytes,bytes32,uint256))` and selector `0x9926ee7d`. - ```solidity - function registerOperatorToAVS(address operator, ISignatureUtils.SignatureWithSaltAndExpiry memory operatorSignature) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registerOperatorToAVSCall { - pub operator: alloy::sol_types::private::Address, - pub operatorSignature: - ::RustType, - } - ///Container type for the return parameters of the [`registerOperatorToAVS(address,(bytes,bytes32,uint256))`](registerOperatorToAVSCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registerOperatorToAVSReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, ISignatureUtils::SignatureWithSaltAndExpiry); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - ::RustType, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: registerOperatorToAVSCall) -> Self { - (value.operator, value.operatorSignature) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registerOperatorToAVSCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0, operatorSignature: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: registerOperatorToAVSReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registerOperatorToAVSReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for registerOperatorToAVSCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, ISignatureUtils::SignatureWithSaltAndExpiry); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = registerOperatorToAVSReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "registerOperatorToAVS(address,(bytes,bytes32,uint256))"; - const SELECTOR: [u8; 4] = [153u8, 38u8, 238u8, 125u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - ::tokenize( - &self.operatorSignature, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setClaimerFor(address)` and selector `0xa0169ddd`. - ```solidity - function setClaimerFor(address claimer) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setClaimerForCall { - pub claimer: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`setClaimerFor(address)`](setClaimerForCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setClaimerForReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setClaimerForCall) -> Self { - (value.claimer,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setClaimerForCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { claimer: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setClaimerForReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setClaimerForReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setClaimerForCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setClaimerForReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setClaimerFor(address)"; - const SELECTOR: [u8; 4] = [160u8, 22u8, 157u8, 221u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.claimer, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `updateAVSMetadataURI(string)` and selector `0xa98fb355`. - ```solidity - function updateAVSMetadataURI(string memory _metadataURI) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateAVSMetadataURICall { - pub _metadataURI: alloy::sol_types::private::String, - } - ///Container type for the return parameters of the [`updateAVSMetadataURI(string)`](updateAVSMetadataURICall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateAVSMetadataURIReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateAVSMetadataURICall) -> Self { - (value._metadataURI,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateAVSMetadataURICall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _metadataURI: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateAVSMetadataURIReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateAVSMetadataURIReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for updateAVSMetadataURICall { - type Parameters<'a> = (alloy::sol_types::sol_data::String,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = updateAVSMetadataURIReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "updateAVSMetadataURI(string)"; - const SELECTOR: [u8; 4] = [169u8, 143u8, 179u8, 85u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self._metadataURI, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`IServiceManager`](self) function calls. - pub enum IServiceManagerCalls { - avsDirectory(avsDirectoryCall), - createAVSRewardsSubmission(createAVSRewardsSubmissionCall), - createOperatorDirectedAVSRewardsSubmission(createOperatorDirectedAVSRewardsSubmissionCall), - deregisterOperatorFromAVS(deregisterOperatorFromAVSCall), - getOperatorRestakedStrategies(getOperatorRestakedStrategiesCall), - getRestakeableStrategies(getRestakeableStrategiesCall), - registerOperatorToAVS(registerOperatorToAVSCall), - setClaimerFor(setClaimerForCall), - updateAVSMetadataURI(updateAVSMetadataURICall), - } - #[automatically_derived] - impl IServiceManagerCalls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [51u8, 207u8, 183u8, 183u8], - [107u8, 58u8, 167u8, 46u8], - [153u8, 38u8, 238u8, 125u8], - [160u8, 22u8, 157u8, 221u8], - [162u8, 11u8, 153u8, 191u8], - [163u8, 100u8, 244u8, 218u8], - [169u8, 143u8, 179u8, 85u8], - [228u8, 129u8, 175u8, 157u8], - [252u8, 227u8, 108u8, 125u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for IServiceManagerCalls { - const NAME: &'static str = "IServiceManagerCalls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 9usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::avsDirectory(_) => { - ::SELECTOR - } - Self::createAVSRewardsSubmission(_) => { - ::SELECTOR - } - Self::createOperatorDirectedAVSRewardsSubmission(_) => { - ::SELECTOR - } - Self::deregisterOperatorFromAVS(_) => { - ::SELECTOR - } - Self::getOperatorRestakedStrategies(_) => { - ::SELECTOR - } - Self::getRestakeableStrategies(_) => { - ::SELECTOR - } - Self::registerOperatorToAVS(_) => { - ::SELECTOR - } - Self::setClaimerFor(_) => { - ::SELECTOR - } - Self::updateAVSMetadataURI(_) => { - ::SELECTOR - } - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn( - &[u8], - bool, - ) - -> alloy_sol_types::Result] = &[ - { - fn getOperatorRestakedStrategies( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IServiceManagerCalls::getOperatorRestakedStrategies) - } - getOperatorRestakedStrategies - }, - { - fn avsDirectory( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IServiceManagerCalls::avsDirectory) - } - avsDirectory - }, - { - fn registerOperatorToAVS( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IServiceManagerCalls::registerOperatorToAVS) - } - registerOperatorToAVS - }, - { - fn setClaimerFor( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IServiceManagerCalls::setClaimerFor) - } - setClaimerFor - }, - { - fn createOperatorDirectedAVSRewardsSubmission( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - IServiceManagerCalls::createOperatorDirectedAVSRewardsSubmission, - ) - } - createOperatorDirectedAVSRewardsSubmission - }, - { - fn deregisterOperatorFromAVS( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IServiceManagerCalls::deregisterOperatorFromAVS) - } - deregisterOperatorFromAVS - }, - { - fn updateAVSMetadataURI( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IServiceManagerCalls::updateAVSMetadataURI) - } - updateAVSMetadataURI - }, - { - fn getRestakeableStrategies( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IServiceManagerCalls::getRestakeableStrategies) - } - getRestakeableStrategies - }, - { - fn createAVSRewardsSubmission( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IServiceManagerCalls::createAVSRewardsSubmission) - } - createAVSRewardsSubmission - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::avsDirectory(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::createAVSRewardsSubmission(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::createOperatorDirectedAVSRewardsSubmission(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::deregisterOperatorFromAVS(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorRestakedStrategies(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getRestakeableStrategies(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::registerOperatorToAVS(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::setClaimerFor(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::updateAVSMetadataURI(inner) => { - ::abi_encoded_size( - inner, - ) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::avsDirectory(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::createAVSRewardsSubmission(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::createOperatorDirectedAVSRewardsSubmission(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::deregisterOperatorFromAVS(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getOperatorRestakedStrategies(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getRestakeableStrategies(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::registerOperatorToAVS(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::setClaimerFor(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::updateAVSMetadataURI(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - } - } - } - ///Container for all the [`IServiceManager`](self) events. - pub enum IServiceManagerEvents { - RewardsInitiatorUpdated(RewardsInitiatorUpdated), - } - #[automatically_derived] - impl IServiceManagerEvents { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[[ - 225u8, 28u8, 221u8, 241u8, 129u8, 106u8, 67u8, 49u8, 140u8, 161u8, 117u8, 187u8, 197u8, - 44u8, 208u8, 24u8, 84u8, 54u8, 233u8, 203u8, 234u8, 215u8, 200u8, 58u8, 204u8, 84u8, - 167u8, 62u8, 70u8, 23u8, 23u8, 227u8, - ]]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for IServiceManagerEvents { - const NAME: &'static str = "IServiceManagerEvents"; - const COUNT: usize = 1usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::RewardsInitiatorUpdated) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for IServiceManagerEvents { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::RewardsInitiatorUpdated(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::RewardsInitiatorUpdated(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IServiceManager`](self) contract instance. - - See the [wrapper's documentation](`IServiceManagerInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> IServiceManagerInstance { - IServiceManagerInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - IServiceManagerInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - IServiceManagerInstance::::deploy_builder(provider) - } - /**A [`IServiceManager`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IServiceManager`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct IServiceManagerInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IServiceManagerInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IServiceManagerInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IServiceManagerInstance - { - /**Creates a new wrapper around an on-chain [`IServiceManager`](self) contract instance. - - See the [wrapper's documentation](`IServiceManagerInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl IServiceManagerInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IServiceManagerInstance { - IServiceManagerInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IServiceManagerInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`avsDirectory`] function. - pub fn avsDirectory(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&avsDirectoryCall {}) - } - ///Creates a new call builder for the [`createAVSRewardsSubmission`] function. - pub fn createAVSRewardsSubmission( - &self, - rewardsSubmissions: alloy::sol_types::private::Vec< - ::RustType, - >, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&createAVSRewardsSubmissionCall { rewardsSubmissions }) - } - ///Creates a new call builder for the [`createOperatorDirectedAVSRewardsSubmission`] function. - pub fn createOperatorDirectedAVSRewardsSubmission( - &self, - operatorDirectedRewardsSubmissions: alloy::sol_types::private::Vec< - ::RustType, - >, - ) -> alloy_contract::SolCallBuilder - { - self.call_builder(&createOperatorDirectedAVSRewardsSubmissionCall { - operatorDirectedRewardsSubmissions, - }) - } - ///Creates a new call builder for the [`deregisterOperatorFromAVS`] function. - pub fn deregisterOperatorFromAVS( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&deregisterOperatorFromAVSCall { operator }) - } - ///Creates a new call builder for the [`getOperatorRestakedStrategies`] function. - pub fn getOperatorRestakedStrategies( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorRestakedStrategiesCall { operator }) - } - ///Creates a new call builder for the [`getRestakeableStrategies`] function. - pub fn getRestakeableStrategies( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getRestakeableStrategiesCall {}) - } - ///Creates a new call builder for the [`registerOperatorToAVS`] function. - pub fn registerOperatorToAVS( - &self, - operator: alloy::sol_types::private::Address, - operatorSignature: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(®isterOperatorToAVSCall { operator, operatorSignature }) - } - ///Creates a new call builder for the [`setClaimerFor`] function. - pub fn setClaimerFor( - &self, - claimer: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setClaimerForCall { claimer }) - } - ///Creates a new call builder for the [`updateAVSMetadataURI`] function. - pub fn updateAVSMetadataURI( - &self, - _metadataURI: alloy::sol_types::private::String, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&updateAVSMetadataURICall { _metadataURI }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IServiceManagerInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`RewardsInitiatorUpdated`] event. - pub fn RewardsInitiatorUpdated_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/iservicemanagerui.rs b/crates/bindings/src/iservicemanagerui.rs deleted file mode 100644 index 7915eb0d..00000000 --- a/crates/bindings/src/iservicemanagerui.rs +++ /dev/null @@ -1,1612 +0,0 @@ -///Module containing a contract's types and functions. -/** - -```solidity -library ISignatureUtils { - struct SignatureWithSaltAndExpiry { bytes signature; bytes32 salt; uint256 expiry; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod ISignatureUtils { - use super::*; - use alloy::sol_types as alloy_sol_types; - /**```solidity - struct SignatureWithSaltAndExpiry { bytes signature; bytes32 salt; uint256 expiry; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct SignatureWithSaltAndExpiry { - pub signature: alloy::sol_types::private::Bytes, - pub salt: alloy::sol_types::private::FixedBytes<32>, - pub expiry: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Bytes, - alloy::sol_types::private::FixedBytes<32>, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: SignatureWithSaltAndExpiry) -> Self { - (value.signature, value.salt, value.expiry) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for SignatureWithSaltAndExpiry { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { signature: tuple.0, salt: tuple.1, expiry: tuple.2 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for SignatureWithSaltAndExpiry { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for SignatureWithSaltAndExpiry { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.signature, - ), - as alloy_sol_types::SolType>::tokenize(&self.salt), - as alloy_sol_types::SolType>::tokenize(&self.expiry), - ) - } - #[inline] - fn stv_abi_encoded_size(&self) -> usize { - if let Some(size) = ::ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encoded_size(&tuple) - } - #[inline] - fn stv_eip712_data_word(&self) -> alloy_sol_types::Word { - ::eip712_hash_struct(self) - } - #[inline] - fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec) { - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_encode_packed_to( - &tuple, out, - ) - } - #[inline] - fn stv_abi_packed_encoded_size(&self) -> usize { - if let Some(size) = ::PACKED_ENCODED_SIZE { - return size; - } - let tuple = - as ::core::convert::From>::from(self.clone()); - as alloy_sol_types::SolType>::abi_packed_encoded_size( - &tuple, - ) - } - } - #[automatically_derived] - impl alloy_sol_types::SolType for SignatureWithSaltAndExpiry { - type RustType = Self; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SOL_NAME: &'static str = ::NAME; - const ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::ENCODED_SIZE; - const PACKED_ENCODED_SIZE: Option = - as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE; - #[inline] - fn valid_token(token: &Self::Token<'_>) -> bool { - as alloy_sol_types::SolType>::valid_token(token) - } - #[inline] - fn detokenize(token: Self::Token<'_>) -> Self::RustType { - let tuple = as alloy_sol_types::SolType>::detokenize(token); - >>::from(tuple) - } - } - #[automatically_derived] - impl alloy_sol_types::SolStruct for SignatureWithSaltAndExpiry { - const NAME: &'static str = "SignatureWithSaltAndExpiry"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "SignatureWithSaltAndExpiry(bytes signature,bytes32 salt,uint256 expiry)", - ) - } - #[inline] - fn eip712_components( - ) -> alloy_sol_types::private::Vec> - { - alloy_sol_types::private::Vec::new() - } - #[inline] - fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> { - ::eip712_root_type() - } - #[inline] - fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec { - [ - ::eip712_data_word( - &self.signature, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.salt) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.expiry) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for SignatureWithSaltAndExpiry { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.signature, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.salt) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.expiry, - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - ::encode_topic_preimage( - &rust.signature, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.salt, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.expiry, - out, - ); - } - #[inline] - fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken { - let mut out = alloy_sol_types::private::Vec::new(); - ::encode_topic_preimage(rust, &mut out); - alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out)) - } - } - }; - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`ISignatureUtils`](self) contract instance. - - See the [wrapper's documentation](`ISignatureUtilsInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> ISignatureUtilsInstance { - ISignatureUtilsInstance::::new(address, provider) - } - /**A [`ISignatureUtils`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`ISignatureUtils`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct ISignatureUtilsInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for ISignatureUtilsInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ISignatureUtilsInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ISignatureUtilsInstance - { - /**Creates a new wrapper around an on-chain [`ISignatureUtils`](self) contract instance. - - See the [wrapper's documentation](`ISignatureUtilsInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl ISignatureUtilsInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> ISignatureUtilsInstance { - ISignatureUtilsInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ISignatureUtilsInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > ISignatureUtilsInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - } -} -/** - -Generated by the following Solidity interface... -```solidity -library ISignatureUtils { - struct SignatureWithSaltAndExpiry { - bytes signature; - bytes32 salt; - uint256 expiry; - } -} - -interface IServiceManagerUI { - function avsDirectory() external view returns (address); - function deregisterOperatorFromAVS(address operator) external; - function getOperatorRestakedStrategies(address operator) external view returns (address[] memory); - function getRestakeableStrategies() external view returns (address[] memory); - function registerOperatorToAVS(address operator, ISignatureUtils.SignatureWithSaltAndExpiry memory operatorSignature) external; - function updateAVSMetadataURI(string memory _metadataURI) external; -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "avsDirectory", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "deregisterOperatorFromAVS", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "getOperatorRestakedStrategies", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "address[]", - "internalType": "address[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getRestakeableStrategies", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address[]", - "internalType": "address[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "registerOperatorToAVS", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "operatorSignature", - "type": "tuple", - "internalType": "struct ISignatureUtils.SignatureWithSaltAndExpiry", - "components": [ - { - "name": "signature", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "salt", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "expiry", - "type": "uint256", - "internalType": "uint256" - } - ] - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "updateAVSMetadataURI", - "inputs": [ - { - "name": "_metadataURI", - "type": "string", - "internalType": "string" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IServiceManagerUI { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**Function with signature `avsDirectory()` and selector `0x6b3aa72e`. - ```solidity - function avsDirectory() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct avsDirectoryCall {} - ///Container type for the return parameters of the [`avsDirectory()`](avsDirectoryCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct avsDirectoryReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: avsDirectoryCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for avsDirectoryCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: avsDirectoryReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for avsDirectoryReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for avsDirectoryCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = avsDirectoryReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "avsDirectory()"; - const SELECTOR: [u8; 4] = [107u8, 58u8, 167u8, 46u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `deregisterOperatorFromAVS(address)` and selector `0xa364f4da`. - ```solidity - function deregisterOperatorFromAVS(address operator) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct deregisterOperatorFromAVSCall { - pub operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`deregisterOperatorFromAVS(address)`](deregisterOperatorFromAVSCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct deregisterOperatorFromAVSReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: deregisterOperatorFromAVSCall) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for deregisterOperatorFromAVSCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: deregisterOperatorFromAVSReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for deregisterOperatorFromAVSReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for deregisterOperatorFromAVSCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = deregisterOperatorFromAVSReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "deregisterOperatorFromAVS(address)"; - const SELECTOR: [u8; 4] = [163u8, 100u8, 244u8, 218u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.operator, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getOperatorRestakedStrategies(address)` and selector `0x33cfb7b7`. - ```solidity - function getOperatorRestakedStrategies(address operator) external view returns (address[] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorRestakedStrategiesCall { - pub operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`getOperatorRestakedStrategies(address)`](getOperatorRestakedStrategiesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorRestakedStrategiesReturn { - pub _0: alloy::sol_types::private::Vec, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorRestakedStrategiesCall) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorRestakedStrategiesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Vec,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getOperatorRestakedStrategiesReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorRestakedStrategiesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorRestakedStrategiesCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorRestakedStrategiesReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getOperatorRestakedStrategies(address)"; - const SELECTOR: [u8; 4] = [51u8, 207u8, 183u8, 183u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.operator, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getRestakeableStrategies()` and selector `0xe481af9d`. - ```solidity - function getRestakeableStrategies() external view returns (address[] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getRestakeableStrategiesCall {} - ///Container type for the return parameters of the [`getRestakeableStrategies()`](getRestakeableStrategiesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getRestakeableStrategiesReturn { - pub _0: alloy::sol_types::private::Vec, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getRestakeableStrategiesCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getRestakeableStrategiesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Array,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Vec,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getRestakeableStrategiesReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getRestakeableStrategiesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getRestakeableStrategiesCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getRestakeableStrategiesReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getRestakeableStrategies()"; - const SELECTOR: [u8; 4] = [228u8, 129u8, 175u8, 157u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `registerOperatorToAVS(address,(bytes,bytes32,uint256))` and selector `0x9926ee7d`. - ```solidity - function registerOperatorToAVS(address operator, ISignatureUtils.SignatureWithSaltAndExpiry memory operatorSignature) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registerOperatorToAVSCall { - pub operator: alloy::sol_types::private::Address, - pub operatorSignature: - ::RustType, - } - ///Container type for the return parameters of the [`registerOperatorToAVS(address,(bytes,bytes32,uint256))`](registerOperatorToAVSCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registerOperatorToAVSReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, ISignatureUtils::SignatureWithSaltAndExpiry); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - ::RustType, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: registerOperatorToAVSCall) -> Self { - (value.operator, value.operatorSignature) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registerOperatorToAVSCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0, operatorSignature: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: registerOperatorToAVSReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registerOperatorToAVSReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for registerOperatorToAVSCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, ISignatureUtils::SignatureWithSaltAndExpiry); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = registerOperatorToAVSReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "registerOperatorToAVS(address,(bytes,bytes32,uint256))"; - const SELECTOR: [u8; 4] = [153u8, 38u8, 238u8, 125u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - ::tokenize( - &self.operatorSignature, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `updateAVSMetadataURI(string)` and selector `0xa98fb355`. - ```solidity - function updateAVSMetadataURI(string memory _metadataURI) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateAVSMetadataURICall { - pub _metadataURI: alloy::sol_types::private::String, - } - ///Container type for the return parameters of the [`updateAVSMetadataURI(string)`](updateAVSMetadataURICall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct updateAVSMetadataURIReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateAVSMetadataURICall) -> Self { - (value._metadataURI,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateAVSMetadataURICall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _metadataURI: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: updateAVSMetadataURIReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for updateAVSMetadataURIReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for updateAVSMetadataURICall { - type Parameters<'a> = (alloy::sol_types::sol_data::String,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = updateAVSMetadataURIReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "updateAVSMetadataURI(string)"; - const SELECTOR: [u8; 4] = [169u8, 143u8, 179u8, 85u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self._metadataURI, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`IServiceManagerUI`](self) function calls. - pub enum IServiceManagerUICalls { - avsDirectory(avsDirectoryCall), - deregisterOperatorFromAVS(deregisterOperatorFromAVSCall), - getOperatorRestakedStrategies(getOperatorRestakedStrategiesCall), - getRestakeableStrategies(getRestakeableStrategiesCall), - registerOperatorToAVS(registerOperatorToAVSCall), - updateAVSMetadataURI(updateAVSMetadataURICall), - } - #[automatically_derived] - impl IServiceManagerUICalls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [51u8, 207u8, 183u8, 183u8], - [107u8, 58u8, 167u8, 46u8], - [153u8, 38u8, 238u8, 125u8], - [163u8, 100u8, 244u8, 218u8], - [169u8, 143u8, 179u8, 85u8], - [228u8, 129u8, 175u8, 157u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for IServiceManagerUICalls { - const NAME: &'static str = "IServiceManagerUICalls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 6usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::avsDirectory(_) => ::SELECTOR, - Self::deregisterOperatorFromAVS(_) => { - ::SELECTOR - } - Self::getOperatorRestakedStrategies(_) => { - ::SELECTOR - } - Self::getRestakeableStrategies(_) => { - ::SELECTOR - } - Self::registerOperatorToAVS(_) => { - ::SELECTOR - } - Self::updateAVSMetadataURI(_) => { - ::SELECTOR - } - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn( - &[u8], - bool, - ) - -> alloy_sol_types::Result] = &[ - { - fn getOperatorRestakedStrategies( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(IServiceManagerUICalls::getOperatorRestakedStrategies) - } - getOperatorRestakedStrategies - }, - { - fn avsDirectory( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IServiceManagerUICalls::avsDirectory) - } - avsDirectory - }, - { - fn registerOperatorToAVS( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IServiceManagerUICalls::registerOperatorToAVS) - } - registerOperatorToAVS - }, - { - fn deregisterOperatorFromAVS( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IServiceManagerUICalls::deregisterOperatorFromAVS) - } - deregisterOperatorFromAVS - }, - { - fn updateAVSMetadataURI( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IServiceManagerUICalls::updateAVSMetadataURI) - } - updateAVSMetadataURI - }, - { - fn getRestakeableStrategies( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IServiceManagerUICalls::getRestakeableStrategies) - } - getRestakeableStrategies - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::avsDirectory(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::deregisterOperatorFromAVS(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorRestakedStrategies(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getRestakeableStrategies(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::registerOperatorToAVS(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::updateAVSMetadataURI(inner) => { - ::abi_encoded_size( - inner, - ) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::avsDirectory(inner) => { - ::abi_encode_raw(inner, out) - } - Self::deregisterOperatorFromAVS(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::getOperatorRestakedStrategies(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::getRestakeableStrategies(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::registerOperatorToAVS(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::updateAVSMetadataURI(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IServiceManagerUI`](self) contract instance. - - See the [wrapper's documentation](`IServiceManagerUIInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> IServiceManagerUIInstance { - IServiceManagerUIInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - IServiceManagerUIInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - IServiceManagerUIInstance::::deploy_builder(provider) - } - /**A [`IServiceManagerUI`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IServiceManagerUI`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct IServiceManagerUIInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IServiceManagerUIInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IServiceManagerUIInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IServiceManagerUIInstance - { - /**Creates a new wrapper around an on-chain [`IServiceManagerUI`](self) contract instance. - - See the [wrapper's documentation](`IServiceManagerUIInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl IServiceManagerUIInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IServiceManagerUIInstance { - IServiceManagerUIInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IServiceManagerUIInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`avsDirectory`] function. - pub fn avsDirectory(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&avsDirectoryCall {}) - } - ///Creates a new call builder for the [`deregisterOperatorFromAVS`] function. - pub fn deregisterOperatorFromAVS( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&deregisterOperatorFromAVSCall { operator }) - } - ///Creates a new call builder for the [`getOperatorRestakedStrategies`] function. - pub fn getOperatorRestakedStrategies( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorRestakedStrategiesCall { operator }) - } - ///Creates a new call builder for the [`getRestakeableStrategies`] function. - pub fn getRestakeableStrategies( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getRestakeableStrategiesCall {}) - } - ///Creates a new call builder for the [`registerOperatorToAVS`] function. - pub fn registerOperatorToAVS( - &self, - operator: alloy::sol_types::private::Address, - operatorSignature: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(®isterOperatorToAVSCall { operator, operatorSignature }) - } - ///Creates a new call builder for the [`updateAVSMetadataURI`] function. - pub fn updateAVSMetadataURI( - &self, - _metadataURI: alloy::sol_types::private::String, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&updateAVSMetadataURICall { _metadataURI }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IServiceManagerUIInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - } -} diff --git a/crates/bindings/src/istrategy.rs b/crates/bindings/src/istrategy.rs deleted file mode 100644 index 9ea0fc63..00000000 --- a/crates/bindings/src/istrategy.rs +++ /dev/null @@ -1,2495 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface IStrategy { - event ExchangeRateEmitted(uint256 rate); - event StrategyTokenSet(address token, uint8 decimals); - - function deposit(address token, uint256 amount) external returns (uint256); - function explanation() external view returns (string memory); - function shares(address user) external view returns (uint256); - function sharesToUnderlying(uint256 amountShares) external returns (uint256); - function sharesToUnderlyingView(uint256 amountShares) external view returns (uint256); - function totalShares() external view returns (uint256); - function underlyingToShares(uint256 amountUnderlying) external returns (uint256); - function underlyingToSharesView(uint256 amountUnderlying) external view returns (uint256); - function underlyingToken() external view returns (address); - function userUnderlying(address user) external returns (uint256); - function userUnderlyingView(address user) external view returns (uint256); - function withdraw(address recipient, address token, uint256 amountShares) external; -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "deposit", - "inputs": [ - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "explanation", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "string", - "internalType": "string" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "shares", - "inputs": [ - { - "name": "user", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "sharesToUnderlying", - "inputs": [ - { - "name": "amountShares", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "sharesToUnderlyingView", - "inputs": [ - { - "name": "amountShares", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "totalShares", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "underlyingToShares", - "inputs": [ - { - "name": "amountUnderlying", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "underlyingToSharesView", - "inputs": [ - { - "name": "amountUnderlying", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "underlyingToken", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "contract IERC20" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "userUnderlying", - "inputs": [ - { - "name": "user", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "userUnderlyingView", - "inputs": [ - { - "name": "user", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "withdraw", - "inputs": [ - { - "name": "recipient", - "type": "address", - "internalType": "address" - }, - { - "name": "token", - "type": "address", - "internalType": "contract IERC20" - }, - { - "name": "amountShares", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "event", - "name": "ExchangeRateEmitted", - "inputs": [ - { - "name": "rate", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "StrategyTokenSet", - "inputs": [ - { - "name": "token", - "type": "address", - "indexed": false, - "internalType": "contract IERC20" - }, - { - "name": "decimals", - "type": "uint8", - "indexed": false, - "internalType": "uint8" - } - ], - "anonymous": false - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IStrategy { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**Event with signature `ExchangeRateEmitted(uint256)` and selector `0xd2494f3479e5da49d386657c292c610b5b01df313d07c62eb0cfa49924a31be8`. - ```solidity - event ExchangeRateEmitted(uint256 rate); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct ExchangeRateEmitted { - #[allow(missing_docs)] - pub rate: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for ExchangeRateEmitted { - type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "ExchangeRateEmitted(uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 210u8, 73u8, 79u8, 52u8, 121u8, 229u8, 218u8, 73u8, 211u8, 134u8, 101u8, 124u8, - 41u8, 44u8, 97u8, 11u8, 91u8, 1u8, 223u8, 49u8, 61u8, 7u8, 198u8, 46u8, 176u8, - 207u8, 164u8, 153u8, 36u8, 163u8, 27u8, 232u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { rate: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.rate, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ExchangeRateEmitted { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&ExchangeRateEmitted> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &ExchangeRateEmitted) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `StrategyTokenSet(address,uint8)` and selector `0x1c540707b00eb5427b6b774fc799d756516a54aee108b64b327acc55af557507`. - ```solidity - event StrategyTokenSet(address token, uint8 decimals); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct StrategyTokenSet { - #[allow(missing_docs)] - pub token: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub decimals: u8, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for StrategyTokenSet { - type DataTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<8>); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "StrategyTokenSet(address,uint8)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 28u8, 84u8, 7u8, 7u8, 176u8, 14u8, 181u8, 66u8, 123u8, 107u8, 119u8, 79u8, - 199u8, 153u8, 215u8, 86u8, 81u8, 106u8, 84u8, 174u8, 225u8, 8u8, 182u8, 75u8, - 50u8, 122u8, 204u8, 85u8, 175u8, 85u8, 117u8, 7u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { token: data.0, decimals: data.1 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( - ::tokenize( - &self.token, - ), - as alloy_sol_types::SolType>::tokenize( - &self.decimals, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for StrategyTokenSet { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&StrategyTokenSet> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &StrategyTokenSet) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Function with signature `deposit(address,uint256)` and selector `0x47e7ef24`. - ```solidity - function deposit(address token, uint256 amount) external returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct depositCall { - pub token: alloy::sol_types::private::Address, - pub amount: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`deposit(address,uint256)`](depositCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct depositReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: depositCall) -> Self { - (value.token, value.amount) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for depositCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { token: tuple.0, amount: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: depositReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for depositReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for depositCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = depositReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "deposit(address,uint256)"; - const SELECTOR: [u8; 4] = [71u8, 231u8, 239u8, 36u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.token, - ), - as alloy_sol_types::SolType>::tokenize( - &self.amount, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `explanation()` and selector `0xab5921e1`. - ```solidity - function explanation() external view returns (string memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct explanationCall {} - ///Container type for the return parameters of the [`explanation()`](explanationCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct explanationReturn { - pub _0: alloy::sol_types::private::String, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: explanationCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for explanationCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: explanationReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for explanationReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for explanationCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = explanationReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "explanation()"; - const SELECTOR: [u8; 4] = [171u8, 89u8, 33u8, 225u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `shares(address)` and selector `0xce7c2ac2`. - ```solidity - function shares(address user) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct sharesCall { - pub user: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`shares(address)`](sharesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct sharesReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: sharesCall) -> Self { - (value.user,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for sharesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { user: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: sharesReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for sharesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for sharesCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = sharesReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "shares(address)"; - const SELECTOR: [u8; 4] = [206u8, 124u8, 42u8, 194u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.user, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `sharesToUnderlying(uint256)` and selector `0xf3e73875`. - ```solidity - function sharesToUnderlying(uint256 amountShares) external returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct sharesToUnderlyingCall { - pub amountShares: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`sharesToUnderlying(uint256)`](sharesToUnderlyingCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct sharesToUnderlyingReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: sharesToUnderlyingCall) -> Self { - (value.amountShares,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for sharesToUnderlyingCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { amountShares: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: sharesToUnderlyingReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for sharesToUnderlyingReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for sharesToUnderlyingCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = sharesToUnderlyingReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "sharesToUnderlying(uint256)"; - const SELECTOR: [u8; 4] = [243u8, 231u8, 56u8, 117u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.amountShares, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `sharesToUnderlyingView(uint256)` and selector `0x7a8b2637`. - ```solidity - function sharesToUnderlyingView(uint256 amountShares) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct sharesToUnderlyingViewCall { - pub amountShares: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`sharesToUnderlyingView(uint256)`](sharesToUnderlyingViewCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct sharesToUnderlyingViewReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: sharesToUnderlyingViewCall) -> Self { - (value.amountShares,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for sharesToUnderlyingViewCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { amountShares: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: sharesToUnderlyingViewReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for sharesToUnderlyingViewReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for sharesToUnderlyingViewCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = sharesToUnderlyingViewReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "sharesToUnderlyingView(uint256)"; - const SELECTOR: [u8; 4] = [122u8, 139u8, 38u8, 55u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.amountShares, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `totalShares()` and selector `0x3a98ef39`. - ```solidity - function totalShares() external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct totalSharesCall {} - ///Container type for the return parameters of the [`totalShares()`](totalSharesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct totalSharesReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: totalSharesCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for totalSharesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: totalSharesReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for totalSharesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for totalSharesCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = totalSharesReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "totalShares()"; - const SELECTOR: [u8; 4] = [58u8, 152u8, 239u8, 57u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `underlyingToShares(uint256)` and selector `0x8c871019`. - ```solidity - function underlyingToShares(uint256 amountUnderlying) external returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct underlyingToSharesCall { - pub amountUnderlying: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`underlyingToShares(uint256)`](underlyingToSharesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct underlyingToSharesReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: underlyingToSharesCall) -> Self { - (value.amountUnderlying,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for underlyingToSharesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { amountUnderlying: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: underlyingToSharesReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for underlyingToSharesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for underlyingToSharesCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = underlyingToSharesReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "underlyingToShares(uint256)"; - const SELECTOR: [u8; 4] = [140u8, 135u8, 16u8, 25u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.amountUnderlying, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `underlyingToSharesView(uint256)` and selector `0xe3dae51c`. - ```solidity - function underlyingToSharesView(uint256 amountUnderlying) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct underlyingToSharesViewCall { - pub amountUnderlying: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`underlyingToSharesView(uint256)`](underlyingToSharesViewCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct underlyingToSharesViewReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: underlyingToSharesViewCall) -> Self { - (value.amountUnderlying,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for underlyingToSharesViewCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { amountUnderlying: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: underlyingToSharesViewReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for underlyingToSharesViewReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for underlyingToSharesViewCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = underlyingToSharesViewReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "underlyingToSharesView(uint256)"; - const SELECTOR: [u8; 4] = [227u8, 218u8, 229u8, 28u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.amountUnderlying, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `underlyingToken()` and selector `0x2495a599`. - ```solidity - function underlyingToken() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct underlyingTokenCall {} - ///Container type for the return parameters of the [`underlyingToken()`](underlyingTokenCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct underlyingTokenReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: underlyingTokenCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for underlyingTokenCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: underlyingTokenReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for underlyingTokenReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for underlyingTokenCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = underlyingTokenReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "underlyingToken()"; - const SELECTOR: [u8; 4] = [36u8, 149u8, 165u8, 153u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `userUnderlying(address)` and selector `0x8f6a6240`. - ```solidity - function userUnderlying(address user) external returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct userUnderlyingCall { - pub user: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`userUnderlying(address)`](userUnderlyingCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct userUnderlyingReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: userUnderlyingCall) -> Self { - (value.user,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for userUnderlyingCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { user: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: userUnderlyingReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for userUnderlyingReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for userUnderlyingCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = userUnderlyingReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "userUnderlying(address)"; - const SELECTOR: [u8; 4] = [143u8, 106u8, 98u8, 64u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.user, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `userUnderlyingView(address)` and selector `0x553ca5f8`. - ```solidity - function userUnderlyingView(address user) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct userUnderlyingViewCall { - pub user: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`userUnderlyingView(address)`](userUnderlyingViewCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct userUnderlyingViewReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: userUnderlyingViewCall) -> Self { - (value.user,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for userUnderlyingViewCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { user: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: userUnderlyingViewReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for userUnderlyingViewReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for userUnderlyingViewCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = userUnderlyingViewReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "userUnderlyingView(address)"; - const SELECTOR: [u8; 4] = [85u8, 60u8, 165u8, 248u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.user, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `withdraw(address,address,uint256)` and selector `0xd9caed12`. - ```solidity - function withdraw(address recipient, address token, uint256 amountShares) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct withdrawCall { - pub recipient: alloy::sol_types::private::Address, - pub token: alloy::sol_types::private::Address, - pub amountShares: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`withdraw(address,address,uint256)`](withdrawCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct withdrawReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: withdrawCall) -> Self { - (value.recipient, value.token, value.amountShares) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for withdrawCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { recipient: tuple.0, token: tuple.1, amountShares: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: withdrawReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for withdrawReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for withdrawCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = withdrawReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "withdraw(address,address,uint256)"; - const SELECTOR: [u8; 4] = [217u8, 202u8, 237u8, 18u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.recipient, - ), - ::tokenize( - &self.token, - ), - as alloy_sol_types::SolType>::tokenize( - &self.amountShares, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`IStrategy`](self) function calls. - pub enum IStrategyCalls { - deposit(depositCall), - explanation(explanationCall), - shares(sharesCall), - sharesToUnderlying(sharesToUnderlyingCall), - sharesToUnderlyingView(sharesToUnderlyingViewCall), - totalShares(totalSharesCall), - underlyingToShares(underlyingToSharesCall), - underlyingToSharesView(underlyingToSharesViewCall), - underlyingToken(underlyingTokenCall), - userUnderlying(userUnderlyingCall), - userUnderlyingView(userUnderlyingViewCall), - withdraw(withdrawCall), - } - #[automatically_derived] - impl IStrategyCalls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [36u8, 149u8, 165u8, 153u8], - [58u8, 152u8, 239u8, 57u8], - [71u8, 231u8, 239u8, 36u8], - [85u8, 60u8, 165u8, 248u8], - [122u8, 139u8, 38u8, 55u8], - [140u8, 135u8, 16u8, 25u8], - [143u8, 106u8, 98u8, 64u8], - [171u8, 89u8, 33u8, 225u8], - [206u8, 124u8, 42u8, 194u8], - [217u8, 202u8, 237u8, 18u8], - [227u8, 218u8, 229u8, 28u8], - [243u8, 231u8, 56u8, 117u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for IStrategyCalls { - const NAME: &'static str = "IStrategyCalls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 12usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::deposit(_) => ::SELECTOR, - Self::explanation(_) => ::SELECTOR, - Self::shares(_) => ::SELECTOR, - Self::sharesToUnderlying(_) => { - ::SELECTOR - } - Self::sharesToUnderlyingView(_) => { - ::SELECTOR - } - Self::totalShares(_) => ::SELECTOR, - Self::underlyingToShares(_) => { - ::SELECTOR - } - Self::underlyingToSharesView(_) => { - ::SELECTOR - } - Self::underlyingToken(_) => { - ::SELECTOR - } - Self::userUnderlying(_) => { - ::SELECTOR - } - Self::userUnderlyingView(_) => { - ::SELECTOR - } - Self::withdraw(_) => ::SELECTOR, - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn(&[u8], bool) -> alloy_sol_types::Result] = &[ - { - fn underlyingToken( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IStrategyCalls::underlyingToken) - } - underlyingToken - }, - { - fn totalShares( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IStrategyCalls::totalShares) - } - totalShares - }, - { - fn deposit( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IStrategyCalls::deposit) - } - deposit - }, - { - fn userUnderlyingView( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IStrategyCalls::userUnderlyingView) - } - userUnderlyingView - }, - { - fn sharesToUnderlyingView( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IStrategyCalls::sharesToUnderlyingView) - } - sharesToUnderlyingView - }, - { - fn underlyingToShares( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IStrategyCalls::underlyingToShares) - } - underlyingToShares - }, - { - fn userUnderlying( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IStrategyCalls::userUnderlying) - } - userUnderlying - }, - { - fn explanation( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IStrategyCalls::explanation) - } - explanation - }, - { - fn shares( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IStrategyCalls::shares) - } - shares - }, - { - fn withdraw( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(IStrategyCalls::withdraw) - } - withdraw - }, - { - fn underlyingToSharesView( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IStrategyCalls::underlyingToSharesView) - } - underlyingToSharesView - }, - { - fn sharesToUnderlying( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(IStrategyCalls::sharesToUnderlying) - } - sharesToUnderlying - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::deposit(inner) => { - ::abi_encoded_size(inner) - } - Self::explanation(inner) => { - ::abi_encoded_size(inner) - } - Self::shares(inner) => { - ::abi_encoded_size(inner) - } - Self::sharesToUnderlying(inner) => { - ::abi_encoded_size(inner) - } - Self::sharesToUnderlyingView(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::totalShares(inner) => { - ::abi_encoded_size(inner) - } - Self::underlyingToShares(inner) => { - ::abi_encoded_size(inner) - } - Self::underlyingToSharesView(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::underlyingToken(inner) => { - ::abi_encoded_size(inner) - } - Self::userUnderlying(inner) => { - ::abi_encoded_size(inner) - } - Self::userUnderlyingView(inner) => { - ::abi_encoded_size(inner) - } - Self::withdraw(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::deposit(inner) => { - ::abi_encode_raw(inner, out) - } - Self::explanation(inner) => { - ::abi_encode_raw(inner, out) - } - Self::shares(inner) => { - ::abi_encode_raw(inner, out) - } - Self::sharesToUnderlying(inner) => { - ::abi_encode_raw(inner, out) - } - Self::sharesToUnderlyingView(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::totalShares(inner) => { - ::abi_encode_raw(inner, out) - } - Self::underlyingToShares(inner) => { - ::abi_encode_raw(inner, out) - } - Self::underlyingToSharesView(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::underlyingToken(inner) => { - ::abi_encode_raw(inner, out) - } - Self::userUnderlying(inner) => { - ::abi_encode_raw(inner, out) - } - Self::userUnderlyingView(inner) => { - ::abi_encode_raw(inner, out) - } - Self::withdraw(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - ///Container for all the [`IStrategy`](self) events. - pub enum IStrategyEvents { - ExchangeRateEmitted(ExchangeRateEmitted), - StrategyTokenSet(StrategyTokenSet), - } - #[automatically_derived] - impl IStrategyEvents { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[ - [ - 28u8, 84u8, 7u8, 7u8, 176u8, 14u8, 181u8, 66u8, 123u8, 107u8, 119u8, 79u8, 199u8, - 153u8, 215u8, 86u8, 81u8, 106u8, 84u8, 174u8, 225u8, 8u8, 182u8, 75u8, 50u8, 122u8, - 204u8, 85u8, 175u8, 85u8, 117u8, 7u8, - ], - [ - 210u8, 73u8, 79u8, 52u8, 121u8, 229u8, 218u8, 73u8, 211u8, 134u8, 101u8, 124u8, - 41u8, 44u8, 97u8, 11u8, 91u8, 1u8, 223u8, 49u8, 61u8, 7u8, 198u8, 46u8, 176u8, - 207u8, 164u8, 153u8, 36u8, 163u8, 27u8, 232u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for IStrategyEvents { - const NAME: &'static str = "IStrategyEvents"; - const COUNT: usize = 2usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::ExchangeRateEmitted) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::StrategyTokenSet) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for IStrategyEvents { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::ExchangeRateEmitted(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::StrategyTokenSet(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::ExchangeRateEmitted(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::StrategyTokenSet(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`IStrategy`](self) contract instance. - - See the [wrapper's documentation](`IStrategyInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> IStrategyInstance { - IStrategyInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - IStrategyInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - IStrategyInstance::::deploy_builder(provider) - } - /**A [`IStrategy`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IStrategy`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct IStrategyInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IStrategyInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IStrategyInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IStrategyInstance - { - /**Creates a new wrapper around an on-chain [`IStrategy`](self) contract instance. - - See the [wrapper's documentation](`IStrategyInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy(provider: P) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl IStrategyInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IStrategyInstance { - IStrategyInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IStrategyInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`deposit`] function. - pub fn deposit( - &self, - token: alloy::sol_types::private::Address, - amount: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&depositCall { token, amount }) - } - ///Creates a new call builder for the [`explanation`] function. - pub fn explanation(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&explanationCall {}) - } - ///Creates a new call builder for the [`shares`] function. - pub fn shares( - &self, - user: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&sharesCall { user }) - } - ///Creates a new call builder for the [`sharesToUnderlying`] function. - pub fn sharesToUnderlying( - &self, - amountShares: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&sharesToUnderlyingCall { amountShares }) - } - ///Creates a new call builder for the [`sharesToUnderlyingView`] function. - pub fn sharesToUnderlyingView( - &self, - amountShares: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&sharesToUnderlyingViewCall { amountShares }) - } - ///Creates a new call builder for the [`totalShares`] function. - pub fn totalShares(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&totalSharesCall {}) - } - ///Creates a new call builder for the [`underlyingToShares`] function. - pub fn underlyingToShares( - &self, - amountUnderlying: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&underlyingToSharesCall { amountUnderlying }) - } - ///Creates a new call builder for the [`underlyingToSharesView`] function. - pub fn underlyingToSharesView( - &self, - amountUnderlying: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&underlyingToSharesViewCall { amountUnderlying }) - } - ///Creates a new call builder for the [`underlyingToken`] function. - pub fn underlyingToken( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&underlyingTokenCall {}) - } - ///Creates a new call builder for the [`userUnderlying`] function. - pub fn userUnderlying( - &self, - user: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&userUnderlyingCall { user }) - } - ///Creates a new call builder for the [`userUnderlyingView`] function. - pub fn userUnderlyingView( - &self, - user: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&userUnderlyingViewCall { user }) - } - ///Creates a new call builder for the [`withdraw`] function. - pub fn withdraw( - &self, - recipient: alloy::sol_types::private::Address, - token: alloy::sol_types::private::Address, - amountShares: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&withdrawCall { recipient, token, amountShares }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > IStrategyInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`ExchangeRateEmitted`] event. - pub fn ExchangeRateEmitted_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`StrategyTokenSet`] event. - pub fn StrategyTokenSet_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/lib.rs b/crates/bindings/src/lib.rs index aeff360a..10618d53 100644 --- a/crates/bindings/src/lib.rs +++ b/crates/bindings/src/lib.rs @@ -3,37 +3,14 @@ //! This is autogenerated code. //! Do not manually edit these files. //! These files may be overwritten by the codegen system at any time. -pub mod addressupgradeable; -pub mod checkpointsupgradeable; -pub mod contextupgradeable; -pub mod ecdsastakeregistry; -pub mod ecdsastakeregistryeventsanderrors; -pub mod ecdsastakeregistrystorage; -pub mod ecdsaupgradeable; -pub mod idelegationmanager; -pub mod ierc1271upgradeable; -pub mod ierc165; -pub mod ierc20; -pub mod ierc721; -pub mod ierc721enumerable; -pub mod ierc721metadata; -pub mod ierc721tokenreceiver; -pub mod initializable; -pub mod irewardscoordinator; -pub mod iservicehandler; -pub mod iservicemanager; -pub mod iservicemanagerui; -pub mod isignatureutils; +pub mod ilayerservicehandler; +pub mod ilayerservicemanager; pub mod isimplesubmit; pub mod isimpletrigger; -pub mod istrategy; -pub mod mathupgradeable; -pub mod mockerc20; -pub mod mockerc721; -pub mod ownableupgradeable; -pub mod safecastupgradeable; -pub mod signaturecheckerupgradeable; +pub mod math; +pub mod panic; +pub mod safecast; +pub mod signedmath; +pub mod simplesubmit; pub mod simpletrigger; pub mod strings; -pub mod stringsupgradeable; -pub mod wavssubmit; diff --git a/crates/bindings/src/isignatureutils.rs b/crates/bindings/src/math.rs similarity index 78% rename from crates/bindings/src/isignatureutils.rs rename to crates/bindings/src/math.rs index aebfc0ad..c89ef749 100644 --- a/crates/bindings/src/isignatureutils.rs +++ b/crates/bindings/src/math.rs @@ -2,7 +2,7 @@ Generated by the following Solidity interface... ```solidity -interface ISignatureUtils {} +interface Math {} ``` ...which was generated by the following JSON ABI: @@ -16,33 +16,33 @@ interface ISignatureUtils {} clippy::style, clippy::empty_structs_with_brackets )] -pub mod ISignatureUtils { +pub mod Math { use super::*; use alloy::sol_types as alloy_sol_types; /// The creation / init bytecode of the contract. /// /// ```text - ///0x + ///0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea2646970667358221220e72ee89d036534e3c315d88a42eead943e0f8ff6fd1c56c00f498692b346023864736f6c634300081c0033 /// ``` #[rustfmt::skip] #[allow(clippy::all)] pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", + b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 \xE7.\xE8\x9D\x03e4\xE3\xC3\x15\xD8\x8AB\xEE\xAD\x94>\x0F\x8F\xF6\xFD\x1CV\xC0\x0FI\x86\x92\xB3F\x028dsolcC\0\x08\x1C\x003", ); /// The runtime bytecode of the contract, as deployed on the network. /// /// ```text - ///0x + ///0x5f80fdfea2646970667358221220e72ee89d036534e3c315d88a42eead943e0f8ff6fd1c56c00f498692b346023864736f6c634300081c0033 /// ``` #[rustfmt::skip] #[allow(clippy::all)] pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", + b"_\x80\xFD\xFE\xA2dipfsX\"\x12 \xE7.\xE8\x9D\x03e4\xE3\xC3\x15\xD8\x8AB\xEE\xAD\x94>\x0F\x8F\xF6\xFD\x1CV\xC0\x0FI\x86\x92\xB3F\x028dsolcC\0\x08\x1C\x003", ); use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`ISignatureUtils`](self) contract instance. + /**Creates a new wrapper around an on-chain [`Math`](self) contract instance. - See the [wrapper's documentation](`ISignatureUtilsInstance`) for more details.*/ + See the [wrapper's documentation](`MathInstance`) for more details.*/ #[inline] pub const fn new< T: alloy_contract::private::Transport + ::core::clone::Clone, @@ -51,8 +51,8 @@ pub mod ISignatureUtils { >( address: alloy_sol_types::private::Address, provider: P, - ) -> ISignatureUtilsInstance { - ISignatureUtilsInstance::::new(address, provider) + ) -> MathInstance { + MathInstance::::new(address, provider) } /**Deploys this contract using the given `provider` and constructor arguments, if any. @@ -66,9 +66,8 @@ pub mod ISignatureUtils { N: alloy_contract::private::Network, >( provider: P, - ) -> impl ::core::future::Future>> - { - ISignatureUtilsInstance::::deploy(provider) + ) -> impl ::core::future::Future>> { + MathInstance::::deploy(provider) } /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` and constructor arguments, if any. @@ -83,12 +82,12 @@ pub mod ISignatureUtils { >( provider: P, ) -> alloy_contract::RawCallBuilder { - ISignatureUtilsInstance::::deploy_builder(provider) + MathInstance::::deploy_builder(provider) } - /**A [`ISignatureUtils`](self) instance. + /**A [`Math`](self) instance. Contains type-safe methods for interacting with an on-chain instance of the - [`ISignatureUtils`](self) contract located at a given `address`, using a given + [`Math`](self) contract located at a given `address`, using a given provider `P`. If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) @@ -97,16 +96,16 @@ pub mod ISignatureUtils { See the [module-level documentation](self) for all the available methods.*/ #[derive(Clone)] - pub struct ISignatureUtilsInstance { + pub struct MathInstance { address: alloy_sol_types::private::Address, provider: P, _network_transport: ::core::marker::PhantomData<(N, T)>, } #[automatically_derived] - impl ::core::fmt::Debug for ISignatureUtilsInstance { + impl ::core::fmt::Debug for MathInstance { #[inline] fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ISignatureUtilsInstance").field(&self.address).finish() + f.debug_tuple("MathInstance").field(&self.address).finish() } } /// Instantiation and getters/setters. @@ -115,11 +114,11 @@ pub mod ISignatureUtils { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > ISignatureUtilsInstance + > MathInstance { - /**Creates a new wrapper around an on-chain [`ISignatureUtils`](self) contract instance. + /**Creates a new wrapper around an on-chain [`Math`](self) contract instance. - See the [wrapper's documentation](`ISignatureUtilsInstance`) for more details.*/ + See the [wrapper's documentation](`MathInstance`) for more details.*/ #[inline] pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { Self { address, provider, _network_transport: ::core::marker::PhantomData } @@ -130,9 +129,7 @@ pub mod ISignatureUtils { For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { + pub async fn deploy(provider: P) -> alloy_contract::Result> { let call_builder = Self::deploy_builder(provider); let contract_address = call_builder.deploy().await?; Ok(Self::new(contract_address, call_builder.provider)) @@ -170,11 +167,11 @@ pub mod ISignatureUtils { &self.provider } } - impl ISignatureUtilsInstance { + impl MathInstance { /// Clones the provider and returns a new instance with the cloned provider. #[inline] - pub fn with_cloned_provider(self) -> ISignatureUtilsInstance { - ISignatureUtilsInstance { + pub fn with_cloned_provider(self) -> MathInstance { + MathInstance { address: self.address, provider: ::core::clone::Clone::clone(&self.provider), _network_transport: ::core::marker::PhantomData, @@ -187,7 +184,7 @@ pub mod ISignatureUtils { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > ISignatureUtilsInstance + > MathInstance { /// Creates a new call builder using this contract instance's provider and address. /// @@ -206,7 +203,7 @@ pub mod ISignatureUtils { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > ISignatureUtilsInstance + > MathInstance { /// Creates a new event filter using this contract instance's provider and address. /// diff --git a/crates/bindings/src/mockerc20.rs b/crates/bindings/src/mockerc20.rs deleted file mode 100644 index f6e51dac..00000000 --- a/crates/bindings/src/mockerc20.rs +++ /dev/null @@ -1,2778 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface MockERC20 { - event Approval(address indexed owner, address indexed spender, uint256 value); - event Transfer(address indexed from, address indexed to, uint256 value); - - function DOMAIN_SEPARATOR() external view returns (bytes32); - function allowance(address owner, address spender) external view returns (uint256); - function approve(address spender, uint256 amount) external returns (bool); - function balanceOf(address owner) external view returns (uint256); - function decimals() external view returns (uint8); - function initialize(string memory name_, string memory symbol_, uint8 decimals_) external; - function name() external view returns (string memory); - function nonces(address) external view returns (uint256); - function permit(address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s) external; - function symbol() external view returns (string memory); - function totalSupply() external view returns (uint256); - function transfer(address to, uint256 amount) external returns (bool); - function transferFrom(address from, address to, uint256 amount) external returns (bool); -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "DOMAIN_SEPARATOR", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "allowance", - "inputs": [ - { - "name": "owner", - "type": "address", - "internalType": "address" - }, - { - "name": "spender", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "approve", - "inputs": [ - { - "name": "spender", - "type": "address", - "internalType": "address" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "balanceOf", - "inputs": [ - { - "name": "owner", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "decimals", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint8", - "internalType": "uint8" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "initialize", - "inputs": [ - { - "name": "name_", - "type": "string", - "internalType": "string" - }, - { - "name": "symbol_", - "type": "string", - "internalType": "string" - }, - { - "name": "decimals_", - "type": "uint8", - "internalType": "uint8" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "name", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "string", - "internalType": "string" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "nonces", - "inputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "permit", - "inputs": [ - { - "name": "owner", - "type": "address", - "internalType": "address" - }, - { - "name": "spender", - "type": "address", - "internalType": "address" - }, - { - "name": "value", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "deadline", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "v", - "type": "uint8", - "internalType": "uint8" - }, - { - "name": "r", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "s", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "symbol", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "string", - "internalType": "string" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "totalSupply", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "transfer", - "inputs": [ - { - "name": "to", - "type": "address", - "internalType": "address" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "transferFrom", - "inputs": [ - { - "name": "from", - "type": "address", - "internalType": "address" - }, - { - "name": "to", - "type": "address", - "internalType": "address" - }, - { - "name": "amount", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "event", - "name": "Approval", - "inputs": [ - { - "name": "owner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "spender", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "value", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "Transfer", - "inputs": [ - { - "name": "from", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "to", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "value", - "type": "uint256", - "indexed": false, - "internalType": "uint256" - } - ], - "anonymous": false - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod MockERC20 { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x60808060405234601557610dc1908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde0314610a1c57508063095ea7b3146109a35780631624f6c61461066057806318160ddd1461064357806323b872dd14610549578063313ce567146105295780633644e5151461050757806370a08231146104cf5780637ecebe001461049757806395d89b41146103d0578063a9059cbb1461032d578063d505accf146100ff5763dd62ed3e146100ab575f80fd5b346100fb5760403660031901126100fb576100c4610a8b565b6100cc610aa1565b6001600160a01b039182165f908152600560209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100fb5760e03660031901126100fb57610118610a8b565b610120610aa1565b604435606435916084359260ff84168094036100fb574281106102e857610145610bf1565b6001600160a01b039095165f818152600860205260409020805496919590915f1988146102d4576020945f9460809460018b01905560405190878201927f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c984528a604084015260018060a01b03169a8b6060840152898784015260a083015260c082015260c081526101d860e082610ab7565b519020604051908682019261190160f01b84526022830152604282015260428152610204606282610ab7565b519020906040519182528482015260a435604082015260c435606082015282805260015afa156102c9575f516001600160a01b0316801515806102c0575b1561028a577f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925916020915f526005825260405f20855f5282528060405f2055604051908152a3005b60405162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa9a4a3a722a960911b6044820152606490fd5b50828114610242565b6040513d5f823e3d90fd5b634e487b7160e01b5f52601160045260245ffd5b60405162461bcd60e51b815260206004820152601760248201527f5045524d49545f444541444c494e455f455850495245440000000000000000006044820152606490fd5b346100fb5760403660031901126100fb57610346610a8b565b60243590335f5260046020526103608260405f2054610c99565b335f52600460205260405f205560018060a01b031690815f52600460205261038c8160405f2054610cf2565b825f52600460205260405f20556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b346100fb575f3660031901126100fb576040515f6001546103f081610b2f565b80845290600181169081156104735750600114610428575b6104248361041881850382610ab7565b60405191829182610a44565b0390f35b60015f9081525f516020610d6c5f395f51905f52939250905b80821061045957509091508101602001610418610408565b919260018160209254838588010152019101909291610441565b60ff191660208086019190915291151560051b840190910191506104189050610408565b346100fb5760203660031901126100fb576001600160a01b036104b8610a8b565b165f526008602052602060405f2054604051908152f35b346100fb5760203660031901126100fb576001600160a01b036104f0610a8b565b165f526004602052602060405f2054604051908152f35b346100fb575f3660031901126100fb576020610521610bf1565b604051908152f35b346100fb575f3660031901126100fb57602060ff60025416604051908152f35b346100fb5760603660031901126100fb57610562610a8b565b61056a610aa1565b6001600160a01b039091165f818152600560209081526040808320338452825290912054604435937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9291856001820161061e575b5050835f52600482526105d68560405f2054610c99565b845f526004835260405f205560018060a01b031693845f52600482526106008160405f2054610cf2565b855f526004835260405f2055604051908152a3602060405160018152f35b61062791610c99565b5f858152600584526040808220338352855290205585856105bf565b346100fb575f3660031901126100fb576020600354604051908152f35b346100fb5760603660031901126100fb5760043567ffffffffffffffff81116100fb57610691903690600401610ad9565b60243567ffffffffffffffff81116100fb576106b1903690600401610ad9565b60443560ff81168091036100fb5760ff6009541661096857825167ffffffffffffffff8111610876576106e45f54610b2f565b601f8111610901575b506020601f821160011461089557819293945f9261088a575b50508160011b915f199060031b1c1916175f555b815167ffffffffffffffff811161087657610736600154610b2f565b601f811161080e575b50602092601f82116001146107a257928192935f92610797575b50508160011b915f199060031b1c1916176001555b60ff19600254161760025546600655610785610c0b565b6007556009805460ff19166001179055005b015190508380610759565b601f1982169360015f525f516020610d6c5f395f51905f52915f5b8681106107f657508360019596106107de575b505050811b0160015561076e565b01515f1960f88460031b161c191690558380806107d0565b919260206001819286850151815501940192016107bd565b60015f52601f820160051c5f516020610d6c5f395f51905f52019060208310610861575b601f0160051c5f516020610d6c5f395f51905f5201905b818110610856575061073f565b5f8155600101610849565b5f516020610d6c5f395f51905f529150610832565b634e487b7160e01b5f52604160045260245ffd5b015190508480610706565b601f198216905f80525f516020610d4c5f395f51905f52915f5b8181106108e9575095836001959697106108d1575b505050811b015f5561071a565b01515f1960f88460031b161c191690558480806108c4565b9192602060018192868b0151815501940192016108af565b5f8052601f820160051c5f516020610d4c5f395f51905f52019060208310610953575b601f0160051c5f516020610d4c5f395f51905f5201905b81811061094857506106ed565b5f815560010161093b565b5f516020610d4c5f395f51905f529150610924565b60405162461bcd60e51b81526020600482015260136024820152721053149150511657d253925512505312569151606a1b6044820152606490fd5b346100fb5760403660031901126100fb576109bc610a8b565b335f8181526005602090815260408083206001600160a01b03909516808452948252918290206024359081905591519182527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a3602060405160018152f35b346100fb575f3660031901126100fb578061041881610a3d61042494610b67565b0382610ab7565b9190916020815282518060208301525f5b818110610a75575060409293505f838284010152601f8019910116010190565b8060208092870101516040828601015201610a55565b600435906001600160a01b03821682036100fb57565b602435906001600160a01b03821682036100fb57565b90601f8019910116810190811067ffffffffffffffff82111761087657604052565b81601f820112156100fb5780359067ffffffffffffffff82116108765760405192610b0e601f8401601f191660200185610ab7565b828452602083830101116100fb57815f926020809301838601378301015290565b90600182811c92168015610b5d575b6020831014610b4957565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610b3e565b905f915f5490610b7682610b2f565b8082529160018116908115610bd55750600114610b91575050565b5f8080529293509091905f516020610d4c5f395f51905f525b838310610bbb575060209250010190565b600181602092949394548385870101520191019190610baa565b9050602093945060ff929192191683830152151560051b010190565b6006544603610c005760075490565b610c08610c0b565b90565b604051610c1b81610a3d81610b67565b6020815191012060405160208101917f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f835260408201527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260a08152610c9360c082610ab7565b51902090565b90808210610cad5781039081116102d45790565b60405162461bcd60e51b815260206004820152601c60248201527f45524332303a207375627472616374696f6e20756e646572666c6f77000000006044820152606490fd5b908101908181116102d4578110610d065790565b60405162461bcd60e51b815260206004820152601860248201527f45524332303a206164646974696f6e206f766572666c6f7700000000000000006044820152606490fdfe290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563b10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6a2646970667358221220101b4c09b0b4bceae6b4c9e9dc99451eecf1d1760bd76a81b5c69b3850aa348164736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R4`\x15Wa\r\xC1\x90\x81a\0\x1A\x829\xF3[_\x80\xFD\xFE`\x80\x80`@R`\x046\x10\x15a\0\x12W_\x80\xFD[_5`\xE0\x1C\x90\x81c\x06\xFD\xDE\x03\x14a\n\x1CWP\x80c\t^\xA7\xB3\x14a\t\xA3W\x80c\x16$\xF6\xC6\x14a\x06`W\x80c\x18\x16\r\xDD\x14a\x06CW\x80c#\xB8r\xDD\x14a\x05IW\x80c1<\xE5g\x14a\x05)W\x80c6D\xE5\x15\x14a\x05\x07W\x80cp\xA0\x821\x14a\x04\xCFW\x80c~\xCE\xBE\0\x14a\x04\x97W\x80c\x95\xD8\x9BA\x14a\x03\xD0W\x80c\xA9\x05\x9C\xBB\x14a\x03-W\x80c\xD5\x05\xAC\xCF\x14a\0\xFFWc\xDDb\xED>\x14a\0\xABW_\x80\xFD[4a\0\xFBW`@6`\x03\x19\x01\x12a\0\xFBWa\0\xC4a\n\x8BV[a\0\xCCa\n\xA1V[`\x01`\x01`\xA0\x1B\x03\x91\x82\x16_\x90\x81R`\x05` \x90\x81R`@\x80\x83 \x94\x90\x93\x16\x82R\x92\x83R\x81\x90 T\x90Q\x90\x81R\xF3[_\x80\xFD[4a\0\xFBW`\xE06`\x03\x19\x01\x12a\0\xFBWa\x01\x18a\n\x8BV[a\x01 a\n\xA1V[`D5`d5\x91`\x845\x92`\xFF\x84\x16\x80\x94\x03a\0\xFBWB\x81\x10a\x02\xE8Wa\x01Ea\x0B\xF1V[`\x01`\x01`\xA0\x1B\x03\x90\x95\x16_\x81\x81R`\x08` R`@\x90 \x80T\x96\x91\x95\x90\x91_\x19\x88\x14a\x02\xD4W` \x94_\x94`\x80\x94`\x01\x8B\x01\x90U`@Q\x90\x87\x82\x01\x92\x7Fnq\xED\xAE\x12\xB1\xB9\x7FM\x1F`7\x0F\xEF\x10\x10_\xA2\xFA\xAE\x01&\x11J\x16\x9Cd\x84]a&\xC9\x84R\x8A`@\x84\x01R`\x01\x80`\xA0\x1B\x03\x16\x9A\x8B``\x84\x01R\x89\x87\x84\x01R`\xA0\x83\x01R`\xC0\x82\x01R`\xC0\x81Ra\x01\xD8`\xE0\x82a\n\xB7V[Q\x90 `@Q\x90\x86\x82\x01\x92a\x19\x01`\xF0\x1B\x84R`\"\x83\x01R`B\x82\x01R`B\x81Ra\x02\x04`b\x82a\n\xB7V[Q\x90 \x90`@Q\x91\x82R\x84\x82\x01R`\xA45`@\x82\x01R`\xC45``\x82\x01R\x82\x80R`\x01Z\xFA\x15a\x02\xC9W_Q`\x01`\x01`\xA0\x1B\x03\x16\x80\x15\x15\x80a\x02\xC0W[\x15a\x02\x8AW\x7F\x8C[\xE1\xE5\xEB\xEC}[\xD1OqB}\x1E\x84\xF3\xDD\x03\x14\xC0\xF7\xB2)\x1E[ \n\xC8\xC7\xC3\xB9%\x91` \x91_R`\x05\x82R`@_ \x85_R\x82R\x80`@_ U`@Q\x90\x81R\xA3\0[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x0E`$\x82\x01Rm$\xA7+ \xA6$\xA2/\xA9\xA4\xA3\xA7\"\xA9`\x91\x1B`D\x82\x01R`d\x90\xFD[P\x82\x81\x14a\x02BV[`@Q=_\x82>=\x90\xFD[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FPERMIT_DEADLINE_EXPIRED\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x90\xFD[4a\0\xFBW`@6`\x03\x19\x01\x12a\0\xFBWa\x03Fa\n\x8BV[`$5\x903_R`\x04` Ra\x03`\x82`@_ Ta\x0C\x99V[3_R`\x04` R`@_ U`\x01\x80`\xA0\x1B\x03\x16\x90\x81_R`\x04` Ra\x03\x8C\x81`@_ Ta\x0C\xF2V[\x82_R`\x04` R`@_ U`@Q\x90\x81R\x7F\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF` 3\x92\xA3` `@Q`\x01\x81R\xF3[4a\0\xFBW_6`\x03\x19\x01\x12a\0\xFBW`@Q_`\x01Ta\x03\xF0\x81a\x0B/V[\x80\x84R\x90`\x01\x81\x16\x90\x81\x15a\x04sWP`\x01\x14a\x04(W[a\x04$\x83a\x04\x18\x81\x85\x03\x82a\n\xB7V[`@Q\x91\x82\x91\x82a\nDV[\x03\x90\xF3[`\x01_\x90\x81R_Q` a\rl_9_Q\x90_R\x93\x92P\x90[\x80\x82\x10a\x04YWP\x90\x91P\x81\x01` \x01a\x04\x18a\x04\x08V[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\x04AV[`\xFF\x19\x16` \x80\x86\x01\x91\x90\x91R\x91\x15\x15`\x05\x1B\x84\x01\x90\x91\x01\x91Pa\x04\x18\x90Pa\x04\x08V[4a\0\xFBW` 6`\x03\x19\x01\x12a\0\xFBW`\x01`\x01`\xA0\x1B\x03a\x04\xB8a\n\x8BV[\x16_R`\x08` R` `@_ T`@Q\x90\x81R\xF3[4a\0\xFBW` 6`\x03\x19\x01\x12a\0\xFBW`\x01`\x01`\xA0\x1B\x03a\x04\xF0a\n\x8BV[\x16_R`\x04` R` `@_ T`@Q\x90\x81R\xF3[4a\0\xFBW_6`\x03\x19\x01\x12a\0\xFBW` a\x05!a\x0B\xF1V[`@Q\x90\x81R\xF3[4a\0\xFBW_6`\x03\x19\x01\x12a\0\xFBW` `\xFF`\x02T\x16`@Q\x90\x81R\xF3[4a\0\xFBW``6`\x03\x19\x01\x12a\0\xFBWa\x05ba\n\x8BV[a\x05ja\n\xA1V[`\x01`\x01`\xA0\x1B\x03\x90\x91\x16_\x81\x81R`\x05` \x90\x81R`@\x80\x83 3\x84R\x82R\x90\x91 T`D5\x93\x7F\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF\x92\x91\x85`\x01\x82\x01a\x06\x1EW[PP\x83_R`\x04\x82Ra\x05\xD6\x85`@_ Ta\x0C\x99V[\x84_R`\x04\x83R`@_ U`\x01\x80`\xA0\x1B\x03\x16\x93\x84_R`\x04\x82Ra\x06\0\x81`@_ Ta\x0C\xF2V[\x85_R`\x04\x83R`@_ U`@Q\x90\x81R\xA3` `@Q`\x01\x81R\xF3[a\x06'\x91a\x0C\x99V[_\x85\x81R`\x05\x84R`@\x80\x82 3\x83R\x85R\x90 U\x85\x85a\x05\xBFV[4a\0\xFBW_6`\x03\x19\x01\x12a\0\xFBW` `\x03T`@Q\x90\x81R\xF3[4a\0\xFBW``6`\x03\x19\x01\x12a\0\xFBW`\x045g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\0\xFBWa\x06\x91\x906\x90`\x04\x01a\n\xD9V[`$5g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\0\xFBWa\x06\xB1\x906\x90`\x04\x01a\n\xD9V[`D5`\xFF\x81\x16\x80\x91\x03a\0\xFBW`\xFF`\tT\x16a\thW\x82Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x08vWa\x06\xE4_Ta\x0B/V[`\x1F\x81\x11a\t\x01W[P` `\x1F\x82\x11`\x01\x14a\x08\x95W\x81\x92\x93\x94_\x92a\x08\x8AW[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17_U[\x81Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x08vWa\x076`\x01Ta\x0B/V[`\x1F\x81\x11a\x08\x0EW[P` \x92`\x1F\x82\x11`\x01\x14a\x07\xA2W\x92\x81\x92\x93_\x92a\x07\x97W[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17`\x01U[`\xFF\x19`\x02T\x16\x17`\x02UF`\x06Ua\x07\x85a\x0C\x0BV[`\x07U`\t\x80T`\xFF\x19\x16`\x01\x17\x90U\0[\x01Q\x90P\x83\x80a\x07YV[`\x1F\x19\x82\x16\x93`\x01_R_Q` a\rl_9_Q\x90_R\x91_[\x86\x81\x10a\x07\xF6WP\x83`\x01\x95\x96\x10a\x07\xDEW[PPP\x81\x1B\x01`\x01Ua\x07nV[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x83\x80\x80a\x07\xD0V[\x91\x92` `\x01\x81\x92\x86\x85\x01Q\x81U\x01\x94\x01\x92\x01a\x07\xBDV[`\x01_R`\x1F\x82\x01`\x05\x1C_Q` a\rl_9_Q\x90_R\x01\x90` \x83\x10a\x08aW[`\x1F\x01`\x05\x1C_Q` a\rl_9_Q\x90_R\x01\x90[\x81\x81\x10a\x08VWPa\x07?V[_\x81U`\x01\x01a\x08IV[_Q` a\rl_9_Q\x90_R\x91Pa\x082V[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[\x01Q\x90P\x84\x80a\x07\x06V[`\x1F\x19\x82\x16\x90_\x80R_Q` a\rL_9_Q\x90_R\x91_[\x81\x81\x10a\x08\xE9WP\x95\x83`\x01\x95\x96\x97\x10a\x08\xD1W[PPP\x81\x1B\x01_Ua\x07\x1AV[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x84\x80\x80a\x08\xC4V[\x91\x92` `\x01\x81\x92\x86\x8B\x01Q\x81U\x01\x94\x01\x92\x01a\x08\xAFV[_\x80R`\x1F\x82\x01`\x05\x1C_Q` a\rL_9_Q\x90_R\x01\x90` \x83\x10a\tSW[`\x1F\x01`\x05\x1C_Q` a\rL_9_Q\x90_R\x01\x90[\x81\x81\x10a\tHWPa\x06\xEDV[_\x81U`\x01\x01a\t;V[_Q` a\rL_9_Q\x90_R\x91Pa\t$V[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x13`$\x82\x01Rr\x10S\x14\x91PQ\x16W\xD2S\x92U\x12PS\x12V\x91Q`j\x1B`D\x82\x01R`d\x90\xFD[4a\0\xFBW`@6`\x03\x19\x01\x12a\0\xFBWa\t\xBCa\n\x8BV[3_\x81\x81R`\x05` \x90\x81R`@\x80\x83 `\x01`\x01`\xA0\x1B\x03\x90\x95\x16\x80\x84R\x94\x82R\x91\x82\x90 `$5\x90\x81\x90U\x91Q\x91\x82R\x7F\x8C[\xE1\xE5\xEB\xEC}[\xD1OqB}\x1E\x84\xF3\xDD\x03\x14\xC0\xF7\xB2)\x1E[ \n\xC8\xC7\xC3\xB9%\x91\xA3` `@Q`\x01\x81R\xF3[4a\0\xFBW_6`\x03\x19\x01\x12a\0\xFBW\x80a\x04\x18\x81a\n=a\x04$\x94a\x0BgV[\x03\x82a\n\xB7V[\x91\x90\x91` \x81R\x82Q\x80` \x83\x01R_[\x81\x81\x10a\nuWP`@\x92\x93P_\x83\x82\x84\x01\x01R`\x1F\x80\x19\x91\x01\x16\x01\x01\x90V[\x80` \x80\x92\x87\x01\x01Q`@\x82\x86\x01\x01R\x01a\nUV[`\x045\x90`\x01`\x01`\xA0\x1B\x03\x82\x16\x82\x03a\0\xFBWV[`$5\x90`\x01`\x01`\xA0\x1B\x03\x82\x16\x82\x03a\0\xFBWV[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x17a\x08vW`@RV[\x81`\x1F\x82\x01\x12\x15a\0\xFBW\x805\x90g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11a\x08vW`@Q\x92a\x0B\x0E`\x1F\x84\x01`\x1F\x19\x16` \x01\x85a\n\xB7V[\x82\x84R` \x83\x83\x01\x01\x11a\0\xFBW\x81_\x92` \x80\x93\x01\x83\x86\x017\x83\x01\x01R\x90V[\x90`\x01\x82\x81\x1C\x92\x16\x80\x15a\x0B]W[` \x83\x10\x14a\x0BIWV[cNH{q`\xE0\x1B_R`\"`\x04R`$_\xFD[\x91`\x7F\x16\x91a\x0B>V[\x90_\x91_T\x90a\x0Bv\x82a\x0B/V[\x80\x82R\x91`\x01\x81\x16\x90\x81\x15a\x0B\xD5WP`\x01\x14a\x0B\x91WPPV[_\x80\x80R\x92\x93P\x90\x91\x90_Q` a\rL_9_Q\x90_R[\x83\x83\x10a\x0B\xBBWP` \x92P\x01\x01\x90V[`\x01\x81` \x92\x94\x93\x94T\x83\x85\x87\x01\x01R\x01\x91\x01\x91\x90a\x0B\xAAV[\x90P` \x93\x94P`\xFF\x92\x91\x92\x19\x16\x83\x83\x01R\x15\x15`\x05\x1B\x01\x01\x90V[`\x06TF\x03a\x0C\0W`\x07T\x90V[a\x0C\x08a\x0C\x0BV[\x90V[`@Qa\x0C\x1B\x81a\n=\x81a\x0BgV[` \x81Q\x91\x01 `@Q` \x81\x01\x91\x7F\x8Bs\xC3\xC6\x9B\xB8\xFE=Q.\xCCL\xF7Y\xCCy#\x9F{\x17\x9B\x0F\xFA\xCA\xA9\xA7]R+9@\x0F\x83R`@\x82\x01R\x7F\xC8\x9E\xFD\xAAT\xC0\xF2\x0Cz\xDFa(\x82\xDF\tP\xF5\xA9Qc~\x03\x07\xCD\xCBLg/)\x8B\x8B\xC6``\x82\x01RF`\x80\x82\x01R0`\xA0\x82\x01R`\xA0\x81Ra\x0C\x93`\xC0\x82a\n\xB7V[Q\x90 \x90V[\x90\x80\x82\x10a\x0C\xADW\x81\x03\x90\x81\x11a\x02\xD4W\x90V[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1C`$\x82\x01R\x7FERC20: subtraction underflow\0\0\0\0`D\x82\x01R`d\x90\xFD[\x90\x81\x01\x90\x81\x81\x11a\x02\xD4W\x81\x10a\r\x06W\x90V[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x18`$\x82\x01R\x7FERC20: addition overflow\0\0\0\0\0\0\0\0`D\x82\x01R`d\x90\xFD\xFE)\r\xEC\xD9T\x8Bb\xA8\xD6\x03E\xA9\x888o\xC8K\xA6\xBC\x95H@\x08\xF66/\x93\x16\x0E\xF3\xE5c\xB1\x0E-Rv\x12\x07;&\xEE\xCD\xFDq~j2\x0C\xF4KJ\xFA\xC2\xB0s-\x9F\xCB\xE2\xB7\xFA\x0C\xF6\xA2dipfsX\"\x12 \x10\x1BL\t\xB0\xB4\xBC\xEA\xE6\xB4\xC9\xE9\xDC\x99E\x1E\xEC\xF1\xD1v\x0B\xD7j\x81\xB5\xC6\x9B8P\xAA4\x81dsolcC\0\x08\x1C\x003", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x6080806040526004361015610012575f80fd5b5f3560e01c90816306fdde0314610a1c57508063095ea7b3146109a35780631624f6c61461066057806318160ddd1461064357806323b872dd14610549578063313ce567146105295780633644e5151461050757806370a08231146104cf5780637ecebe001461049757806395d89b41146103d0578063a9059cbb1461032d578063d505accf146100ff5763dd62ed3e146100ab575f80fd5b346100fb5760403660031901126100fb576100c4610a8b565b6100cc610aa1565b6001600160a01b039182165f908152600560209081526040808320949093168252928352819020549051908152f35b5f80fd5b346100fb5760e03660031901126100fb57610118610a8b565b610120610aa1565b604435606435916084359260ff84168094036100fb574281106102e857610145610bf1565b6001600160a01b039095165f818152600860205260409020805496919590915f1988146102d4576020945f9460809460018b01905560405190878201927f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c984528a604084015260018060a01b03169a8b6060840152898784015260a083015260c082015260c081526101d860e082610ab7565b519020604051908682019261190160f01b84526022830152604282015260428152610204606282610ab7565b519020906040519182528482015260a435604082015260c435606082015282805260015afa156102c9575f516001600160a01b0316801515806102c0575b1561028a577f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925916020915f526005825260405f20855f5282528060405f2055604051908152a3005b60405162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa9a4a3a722a960911b6044820152606490fd5b50828114610242565b6040513d5f823e3d90fd5b634e487b7160e01b5f52601160045260245ffd5b60405162461bcd60e51b815260206004820152601760248201527f5045524d49545f444541444c494e455f455850495245440000000000000000006044820152606490fd5b346100fb5760403660031901126100fb57610346610a8b565b60243590335f5260046020526103608260405f2054610c99565b335f52600460205260405f205560018060a01b031690815f52600460205261038c8160405f2054610cf2565b825f52600460205260405f20556040519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60203392a3602060405160018152f35b346100fb575f3660031901126100fb576040515f6001546103f081610b2f565b80845290600181169081156104735750600114610428575b6104248361041881850382610ab7565b60405191829182610a44565b0390f35b60015f9081525f516020610d6c5f395f51905f52939250905b80821061045957509091508101602001610418610408565b919260018160209254838588010152019101909291610441565b60ff191660208086019190915291151560051b840190910191506104189050610408565b346100fb5760203660031901126100fb576001600160a01b036104b8610a8b565b165f526008602052602060405f2054604051908152f35b346100fb5760203660031901126100fb576001600160a01b036104f0610a8b565b165f526004602052602060405f2054604051908152f35b346100fb575f3660031901126100fb576020610521610bf1565b604051908152f35b346100fb575f3660031901126100fb57602060ff60025416604051908152f35b346100fb5760603660031901126100fb57610562610a8b565b61056a610aa1565b6001600160a01b039091165f818152600560209081526040808320338452825290912054604435937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9291856001820161061e575b5050835f52600482526105d68560405f2054610c99565b845f526004835260405f205560018060a01b031693845f52600482526106008160405f2054610cf2565b855f526004835260405f2055604051908152a3602060405160018152f35b61062791610c99565b5f858152600584526040808220338352855290205585856105bf565b346100fb575f3660031901126100fb576020600354604051908152f35b346100fb5760603660031901126100fb5760043567ffffffffffffffff81116100fb57610691903690600401610ad9565b60243567ffffffffffffffff81116100fb576106b1903690600401610ad9565b60443560ff81168091036100fb5760ff6009541661096857825167ffffffffffffffff8111610876576106e45f54610b2f565b601f8111610901575b506020601f821160011461089557819293945f9261088a575b50508160011b915f199060031b1c1916175f555b815167ffffffffffffffff811161087657610736600154610b2f565b601f811161080e575b50602092601f82116001146107a257928192935f92610797575b50508160011b915f199060031b1c1916176001555b60ff19600254161760025546600655610785610c0b565b6007556009805460ff19166001179055005b015190508380610759565b601f1982169360015f525f516020610d6c5f395f51905f52915f5b8681106107f657508360019596106107de575b505050811b0160015561076e565b01515f1960f88460031b161c191690558380806107d0565b919260206001819286850151815501940192016107bd565b60015f52601f820160051c5f516020610d6c5f395f51905f52019060208310610861575b601f0160051c5f516020610d6c5f395f51905f5201905b818110610856575061073f565b5f8155600101610849565b5f516020610d6c5f395f51905f529150610832565b634e487b7160e01b5f52604160045260245ffd5b015190508480610706565b601f198216905f80525f516020610d4c5f395f51905f52915f5b8181106108e9575095836001959697106108d1575b505050811b015f5561071a565b01515f1960f88460031b161c191690558480806108c4565b9192602060018192868b0151815501940192016108af565b5f8052601f820160051c5f516020610d4c5f395f51905f52019060208310610953575b601f0160051c5f516020610d4c5f395f51905f5201905b81811061094857506106ed565b5f815560010161093b565b5f516020610d4c5f395f51905f529150610924565b60405162461bcd60e51b81526020600482015260136024820152721053149150511657d253925512505312569151606a1b6044820152606490fd5b346100fb5760403660031901126100fb576109bc610a8b565b335f8181526005602090815260408083206001600160a01b03909516808452948252918290206024359081905591519182527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a3602060405160018152f35b346100fb575f3660031901126100fb578061041881610a3d61042494610b67565b0382610ab7565b9190916020815282518060208301525f5b818110610a75575060409293505f838284010152601f8019910116010190565b8060208092870101516040828601015201610a55565b600435906001600160a01b03821682036100fb57565b602435906001600160a01b03821682036100fb57565b90601f8019910116810190811067ffffffffffffffff82111761087657604052565b81601f820112156100fb5780359067ffffffffffffffff82116108765760405192610b0e601f8401601f191660200185610ab7565b828452602083830101116100fb57815f926020809301838601378301015290565b90600182811c92168015610b5d575b6020831014610b4957565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610b3e565b905f915f5490610b7682610b2f565b8082529160018116908115610bd55750600114610b91575050565b5f8080529293509091905f516020610d4c5f395f51905f525b838310610bbb575060209250010190565b600181602092949394548385870101520191019190610baa565b9050602093945060ff929192191683830152151560051b010190565b6006544603610c005760075490565b610c08610c0b565b90565b604051610c1b81610a3d81610b67565b6020815191012060405160208101917f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f835260408201527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260a08152610c9360c082610ab7565b51902090565b90808210610cad5781039081116102d45790565b60405162461bcd60e51b815260206004820152601c60248201527f45524332303a207375627472616374696f6e20756e646572666c6f77000000006044820152606490fd5b908101908181116102d4578110610d065790565b60405162461bcd60e51b815260206004820152601860248201527f45524332303a206164646974696f6e206f766572666c6f7700000000000000006044820152606490fdfe290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563b10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6a2646970667358221220101b4c09b0b4bceae6b4c9e9dc99451eecf1d1760bd76a81b5c69b3850aa348164736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R`\x046\x10\x15a\0\x12W_\x80\xFD[_5`\xE0\x1C\x90\x81c\x06\xFD\xDE\x03\x14a\n\x1CWP\x80c\t^\xA7\xB3\x14a\t\xA3W\x80c\x16$\xF6\xC6\x14a\x06`W\x80c\x18\x16\r\xDD\x14a\x06CW\x80c#\xB8r\xDD\x14a\x05IW\x80c1<\xE5g\x14a\x05)W\x80c6D\xE5\x15\x14a\x05\x07W\x80cp\xA0\x821\x14a\x04\xCFW\x80c~\xCE\xBE\0\x14a\x04\x97W\x80c\x95\xD8\x9BA\x14a\x03\xD0W\x80c\xA9\x05\x9C\xBB\x14a\x03-W\x80c\xD5\x05\xAC\xCF\x14a\0\xFFWc\xDDb\xED>\x14a\0\xABW_\x80\xFD[4a\0\xFBW`@6`\x03\x19\x01\x12a\0\xFBWa\0\xC4a\n\x8BV[a\0\xCCa\n\xA1V[`\x01`\x01`\xA0\x1B\x03\x91\x82\x16_\x90\x81R`\x05` \x90\x81R`@\x80\x83 \x94\x90\x93\x16\x82R\x92\x83R\x81\x90 T\x90Q\x90\x81R\xF3[_\x80\xFD[4a\0\xFBW`\xE06`\x03\x19\x01\x12a\0\xFBWa\x01\x18a\n\x8BV[a\x01 a\n\xA1V[`D5`d5\x91`\x845\x92`\xFF\x84\x16\x80\x94\x03a\0\xFBWB\x81\x10a\x02\xE8Wa\x01Ea\x0B\xF1V[`\x01`\x01`\xA0\x1B\x03\x90\x95\x16_\x81\x81R`\x08` R`@\x90 \x80T\x96\x91\x95\x90\x91_\x19\x88\x14a\x02\xD4W` \x94_\x94`\x80\x94`\x01\x8B\x01\x90U`@Q\x90\x87\x82\x01\x92\x7Fnq\xED\xAE\x12\xB1\xB9\x7FM\x1F`7\x0F\xEF\x10\x10_\xA2\xFA\xAE\x01&\x11J\x16\x9Cd\x84]a&\xC9\x84R\x8A`@\x84\x01R`\x01\x80`\xA0\x1B\x03\x16\x9A\x8B``\x84\x01R\x89\x87\x84\x01R`\xA0\x83\x01R`\xC0\x82\x01R`\xC0\x81Ra\x01\xD8`\xE0\x82a\n\xB7V[Q\x90 `@Q\x90\x86\x82\x01\x92a\x19\x01`\xF0\x1B\x84R`\"\x83\x01R`B\x82\x01R`B\x81Ra\x02\x04`b\x82a\n\xB7V[Q\x90 \x90`@Q\x91\x82R\x84\x82\x01R`\xA45`@\x82\x01R`\xC45``\x82\x01R\x82\x80R`\x01Z\xFA\x15a\x02\xC9W_Q`\x01`\x01`\xA0\x1B\x03\x16\x80\x15\x15\x80a\x02\xC0W[\x15a\x02\x8AW\x7F\x8C[\xE1\xE5\xEB\xEC}[\xD1OqB}\x1E\x84\xF3\xDD\x03\x14\xC0\xF7\xB2)\x1E[ \n\xC8\xC7\xC3\xB9%\x91` \x91_R`\x05\x82R`@_ \x85_R\x82R\x80`@_ U`@Q\x90\x81R\xA3\0[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x0E`$\x82\x01Rm$\xA7+ \xA6$\xA2/\xA9\xA4\xA3\xA7\"\xA9`\x91\x1B`D\x82\x01R`d\x90\xFD[P\x82\x81\x14a\x02BV[`@Q=_\x82>=\x90\xFD[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FPERMIT_DEADLINE_EXPIRED\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x90\xFD[4a\0\xFBW`@6`\x03\x19\x01\x12a\0\xFBWa\x03Fa\n\x8BV[`$5\x903_R`\x04` Ra\x03`\x82`@_ Ta\x0C\x99V[3_R`\x04` R`@_ U`\x01\x80`\xA0\x1B\x03\x16\x90\x81_R`\x04` Ra\x03\x8C\x81`@_ Ta\x0C\xF2V[\x82_R`\x04` R`@_ U`@Q\x90\x81R\x7F\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF` 3\x92\xA3` `@Q`\x01\x81R\xF3[4a\0\xFBW_6`\x03\x19\x01\x12a\0\xFBW`@Q_`\x01Ta\x03\xF0\x81a\x0B/V[\x80\x84R\x90`\x01\x81\x16\x90\x81\x15a\x04sWP`\x01\x14a\x04(W[a\x04$\x83a\x04\x18\x81\x85\x03\x82a\n\xB7V[`@Q\x91\x82\x91\x82a\nDV[\x03\x90\xF3[`\x01_\x90\x81R_Q` a\rl_9_Q\x90_R\x93\x92P\x90[\x80\x82\x10a\x04YWP\x90\x91P\x81\x01` \x01a\x04\x18a\x04\x08V[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\x04AV[`\xFF\x19\x16` \x80\x86\x01\x91\x90\x91R\x91\x15\x15`\x05\x1B\x84\x01\x90\x91\x01\x91Pa\x04\x18\x90Pa\x04\x08V[4a\0\xFBW` 6`\x03\x19\x01\x12a\0\xFBW`\x01`\x01`\xA0\x1B\x03a\x04\xB8a\n\x8BV[\x16_R`\x08` R` `@_ T`@Q\x90\x81R\xF3[4a\0\xFBW` 6`\x03\x19\x01\x12a\0\xFBW`\x01`\x01`\xA0\x1B\x03a\x04\xF0a\n\x8BV[\x16_R`\x04` R` `@_ T`@Q\x90\x81R\xF3[4a\0\xFBW_6`\x03\x19\x01\x12a\0\xFBW` a\x05!a\x0B\xF1V[`@Q\x90\x81R\xF3[4a\0\xFBW_6`\x03\x19\x01\x12a\0\xFBW` `\xFF`\x02T\x16`@Q\x90\x81R\xF3[4a\0\xFBW``6`\x03\x19\x01\x12a\0\xFBWa\x05ba\n\x8BV[a\x05ja\n\xA1V[`\x01`\x01`\xA0\x1B\x03\x90\x91\x16_\x81\x81R`\x05` \x90\x81R`@\x80\x83 3\x84R\x82R\x90\x91 T`D5\x93\x7F\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF\x92\x91\x85`\x01\x82\x01a\x06\x1EW[PP\x83_R`\x04\x82Ra\x05\xD6\x85`@_ Ta\x0C\x99V[\x84_R`\x04\x83R`@_ U`\x01\x80`\xA0\x1B\x03\x16\x93\x84_R`\x04\x82Ra\x06\0\x81`@_ Ta\x0C\xF2V[\x85_R`\x04\x83R`@_ U`@Q\x90\x81R\xA3` `@Q`\x01\x81R\xF3[a\x06'\x91a\x0C\x99V[_\x85\x81R`\x05\x84R`@\x80\x82 3\x83R\x85R\x90 U\x85\x85a\x05\xBFV[4a\0\xFBW_6`\x03\x19\x01\x12a\0\xFBW` `\x03T`@Q\x90\x81R\xF3[4a\0\xFBW``6`\x03\x19\x01\x12a\0\xFBW`\x045g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\0\xFBWa\x06\x91\x906\x90`\x04\x01a\n\xD9V[`$5g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\0\xFBWa\x06\xB1\x906\x90`\x04\x01a\n\xD9V[`D5`\xFF\x81\x16\x80\x91\x03a\0\xFBW`\xFF`\tT\x16a\thW\x82Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x08vWa\x06\xE4_Ta\x0B/V[`\x1F\x81\x11a\t\x01W[P` `\x1F\x82\x11`\x01\x14a\x08\x95W\x81\x92\x93\x94_\x92a\x08\x8AW[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17_U[\x81Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x08vWa\x076`\x01Ta\x0B/V[`\x1F\x81\x11a\x08\x0EW[P` \x92`\x1F\x82\x11`\x01\x14a\x07\xA2W\x92\x81\x92\x93_\x92a\x07\x97W[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17`\x01U[`\xFF\x19`\x02T\x16\x17`\x02UF`\x06Ua\x07\x85a\x0C\x0BV[`\x07U`\t\x80T`\xFF\x19\x16`\x01\x17\x90U\0[\x01Q\x90P\x83\x80a\x07YV[`\x1F\x19\x82\x16\x93`\x01_R_Q` a\rl_9_Q\x90_R\x91_[\x86\x81\x10a\x07\xF6WP\x83`\x01\x95\x96\x10a\x07\xDEW[PPP\x81\x1B\x01`\x01Ua\x07nV[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x83\x80\x80a\x07\xD0V[\x91\x92` `\x01\x81\x92\x86\x85\x01Q\x81U\x01\x94\x01\x92\x01a\x07\xBDV[`\x01_R`\x1F\x82\x01`\x05\x1C_Q` a\rl_9_Q\x90_R\x01\x90` \x83\x10a\x08aW[`\x1F\x01`\x05\x1C_Q` a\rl_9_Q\x90_R\x01\x90[\x81\x81\x10a\x08VWPa\x07?V[_\x81U`\x01\x01a\x08IV[_Q` a\rl_9_Q\x90_R\x91Pa\x082V[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[\x01Q\x90P\x84\x80a\x07\x06V[`\x1F\x19\x82\x16\x90_\x80R_Q` a\rL_9_Q\x90_R\x91_[\x81\x81\x10a\x08\xE9WP\x95\x83`\x01\x95\x96\x97\x10a\x08\xD1W[PPP\x81\x1B\x01_Ua\x07\x1AV[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x84\x80\x80a\x08\xC4V[\x91\x92` `\x01\x81\x92\x86\x8B\x01Q\x81U\x01\x94\x01\x92\x01a\x08\xAFV[_\x80R`\x1F\x82\x01`\x05\x1C_Q` a\rL_9_Q\x90_R\x01\x90` \x83\x10a\tSW[`\x1F\x01`\x05\x1C_Q` a\rL_9_Q\x90_R\x01\x90[\x81\x81\x10a\tHWPa\x06\xEDV[_\x81U`\x01\x01a\t;V[_Q` a\rL_9_Q\x90_R\x91Pa\t$V[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x13`$\x82\x01Rr\x10S\x14\x91PQ\x16W\xD2S\x92U\x12PS\x12V\x91Q`j\x1B`D\x82\x01R`d\x90\xFD[4a\0\xFBW`@6`\x03\x19\x01\x12a\0\xFBWa\t\xBCa\n\x8BV[3_\x81\x81R`\x05` \x90\x81R`@\x80\x83 `\x01`\x01`\xA0\x1B\x03\x90\x95\x16\x80\x84R\x94\x82R\x91\x82\x90 `$5\x90\x81\x90U\x91Q\x91\x82R\x7F\x8C[\xE1\xE5\xEB\xEC}[\xD1OqB}\x1E\x84\xF3\xDD\x03\x14\xC0\xF7\xB2)\x1E[ \n\xC8\xC7\xC3\xB9%\x91\xA3` `@Q`\x01\x81R\xF3[4a\0\xFBW_6`\x03\x19\x01\x12a\0\xFBW\x80a\x04\x18\x81a\n=a\x04$\x94a\x0BgV[\x03\x82a\n\xB7V[\x91\x90\x91` \x81R\x82Q\x80` \x83\x01R_[\x81\x81\x10a\nuWP`@\x92\x93P_\x83\x82\x84\x01\x01R`\x1F\x80\x19\x91\x01\x16\x01\x01\x90V[\x80` \x80\x92\x87\x01\x01Q`@\x82\x86\x01\x01R\x01a\nUV[`\x045\x90`\x01`\x01`\xA0\x1B\x03\x82\x16\x82\x03a\0\xFBWV[`$5\x90`\x01`\x01`\xA0\x1B\x03\x82\x16\x82\x03a\0\xFBWV[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x17a\x08vW`@RV[\x81`\x1F\x82\x01\x12\x15a\0\xFBW\x805\x90g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11a\x08vW`@Q\x92a\x0B\x0E`\x1F\x84\x01`\x1F\x19\x16` \x01\x85a\n\xB7V[\x82\x84R` \x83\x83\x01\x01\x11a\0\xFBW\x81_\x92` \x80\x93\x01\x83\x86\x017\x83\x01\x01R\x90V[\x90`\x01\x82\x81\x1C\x92\x16\x80\x15a\x0B]W[` \x83\x10\x14a\x0BIWV[cNH{q`\xE0\x1B_R`\"`\x04R`$_\xFD[\x91`\x7F\x16\x91a\x0B>V[\x90_\x91_T\x90a\x0Bv\x82a\x0B/V[\x80\x82R\x91`\x01\x81\x16\x90\x81\x15a\x0B\xD5WP`\x01\x14a\x0B\x91WPPV[_\x80\x80R\x92\x93P\x90\x91\x90_Q` a\rL_9_Q\x90_R[\x83\x83\x10a\x0B\xBBWP` \x92P\x01\x01\x90V[`\x01\x81` \x92\x94\x93\x94T\x83\x85\x87\x01\x01R\x01\x91\x01\x91\x90a\x0B\xAAV[\x90P` \x93\x94P`\xFF\x92\x91\x92\x19\x16\x83\x83\x01R\x15\x15`\x05\x1B\x01\x01\x90V[`\x06TF\x03a\x0C\0W`\x07T\x90V[a\x0C\x08a\x0C\x0BV[\x90V[`@Qa\x0C\x1B\x81a\n=\x81a\x0BgV[` \x81Q\x91\x01 `@Q` \x81\x01\x91\x7F\x8Bs\xC3\xC6\x9B\xB8\xFE=Q.\xCCL\xF7Y\xCCy#\x9F{\x17\x9B\x0F\xFA\xCA\xA9\xA7]R+9@\x0F\x83R`@\x82\x01R\x7F\xC8\x9E\xFD\xAAT\xC0\xF2\x0Cz\xDFa(\x82\xDF\tP\xF5\xA9Qc~\x03\x07\xCD\xCBLg/)\x8B\x8B\xC6``\x82\x01RF`\x80\x82\x01R0`\xA0\x82\x01R`\xA0\x81Ra\x0C\x93`\xC0\x82a\n\xB7V[Q\x90 \x90V[\x90\x80\x82\x10a\x0C\xADW\x81\x03\x90\x81\x11a\x02\xD4W\x90V[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1C`$\x82\x01R\x7FERC20: subtraction underflow\0\0\0\0`D\x82\x01R`d\x90\xFD[\x90\x81\x01\x90\x81\x81\x11a\x02\xD4W\x81\x10a\r\x06W\x90V[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x18`$\x82\x01R\x7FERC20: addition overflow\0\0\0\0\0\0\0\0`D\x82\x01R`d\x90\xFD\xFE)\r\xEC\xD9T\x8Bb\xA8\xD6\x03E\xA9\x888o\xC8K\xA6\xBC\x95H@\x08\xF66/\x93\x16\x0E\xF3\xE5c\xB1\x0E-Rv\x12\x07;&\xEE\xCD\xFDq~j2\x0C\xF4KJ\xFA\xC2\xB0s-\x9F\xCB\xE2\xB7\xFA\x0C\xF6\xA2dipfsX\"\x12 \x10\x1BL\t\xB0\xB4\xBC\xEA\xE6\xB4\xC9\xE9\xDC\x99E\x1E\xEC\xF1\xD1v\x0B\xD7j\x81\xB5\xC6\x9B8P\xAA4\x81dsolcC\0\x08\x1C\x003", - ); - /**Event with signature `Approval(address,address,uint256)` and selector `0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925`. - ```solidity - event Approval(address indexed owner, address indexed spender, uint256 value); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Approval { - #[allow(missing_docs)] - pub owner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub spender: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub value: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Approval { - type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "Approval(address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 140u8, 91u8, 225u8, 229u8, 235u8, 236u8, 125u8, 91u8, 209u8, 79u8, 113u8, 66u8, - 125u8, 30u8, 132u8, 243u8, 221u8, 3u8, 20u8, 192u8, 247u8, 178u8, 41u8, 30u8, - 91u8, 32u8, 10u8, 200u8, 199u8, 195u8, 185u8, 37u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { owner: topics.1, spender: topics.2, value: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.value, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.owner.clone(), self.spender.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.owner, - ); - out[2usize] = ::encode_topic( - &self.spender, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Approval { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Approval> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Approval) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `Transfer(address,address,uint256)` and selector `0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef`. - ```solidity - event Transfer(address indexed from, address indexed to, uint256 value); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Transfer { - #[allow(missing_docs)] - pub from: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub to: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub value: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Transfer { - type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "Transfer(address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 221u8, 242u8, 82u8, 173u8, 27u8, 226u8, 200u8, 155u8, 105u8, 194u8, 176u8, - 104u8, 252u8, 55u8, 141u8, 170u8, 149u8, 43u8, 167u8, 241u8, 99u8, 196u8, - 161u8, 22u8, 40u8, 245u8, 90u8, 77u8, 245u8, 35u8, 179u8, 239u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { from: topics.1, to: topics.2, value: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.value, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.from.clone(), self.to.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.from, - ); - out[2usize] = ::encode_topic( - &self.to, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Transfer { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Transfer> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Transfer) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Function with signature `DOMAIN_SEPARATOR()` and selector `0x3644e515`. - ```solidity - function DOMAIN_SEPARATOR() external view returns (bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct DOMAIN_SEPARATORCall {} - ///Container type for the return parameters of the [`DOMAIN_SEPARATOR()`](DOMAIN_SEPARATORCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct DOMAIN_SEPARATORReturn { - pub _0: alloy::sol_types::private::FixedBytes<32>, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: DOMAIN_SEPARATORCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for DOMAIN_SEPARATORCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: DOMAIN_SEPARATORReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for DOMAIN_SEPARATORReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for DOMAIN_SEPARATORCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = DOMAIN_SEPARATORReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "DOMAIN_SEPARATOR()"; - const SELECTOR: [u8; 4] = [54u8, 68u8, 229u8, 21u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `allowance(address,address)` and selector `0xdd62ed3e`. - ```solidity - function allowance(address owner, address spender) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct allowanceCall { - pub owner: alloy::sol_types::private::Address, - pub spender: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`allowance(address,address)`](allowanceCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct allowanceReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Address, alloy::sol_types::private::Address); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: allowanceCall) -> Self { - (value.owner, value.spender) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for allowanceCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { owner: tuple.0, spender: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: allowanceReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for allowanceReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for allowanceCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = allowanceReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "allowance(address,address)"; - const SELECTOR: [u8; 4] = [221u8, 98u8, 237u8, 62u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.owner, - ), - ::tokenize( - &self.spender, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `approve(address,uint256)` and selector `0x095ea7b3`. - ```solidity - function approve(address spender, uint256 amount) external returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct approveCall { - pub spender: alloy::sol_types::private::Address, - pub amount: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`approve(address,uint256)`](approveCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct approveReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: approveCall) -> Self { - (value.spender, value.amount) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for approveCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { spender: tuple.0, amount: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: approveReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for approveReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for approveCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = approveReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "approve(address,uint256)"; - const SELECTOR: [u8; 4] = [9u8, 94u8, 167u8, 179u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.spender, - ), - as alloy_sol_types::SolType>::tokenize( - &self.amount, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `balanceOf(address)` and selector `0x70a08231`. - ```solidity - function balanceOf(address owner) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct balanceOfCall { - pub owner: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`balanceOf(address)`](balanceOfCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct balanceOfReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: balanceOfCall) -> Self { - (value.owner,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for balanceOfCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { owner: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: balanceOfReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for balanceOfReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for balanceOfCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = balanceOfReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "balanceOf(address)"; - const SELECTOR: [u8; 4] = [112u8, 160u8, 130u8, 49u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.owner, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `decimals()` and selector `0x313ce567`. - ```solidity - function decimals() external view returns (uint8); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct decimalsCall {} - ///Container type for the return parameters of the [`decimals()`](decimalsCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct decimalsReturn { - pub _0: u8, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: decimalsCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for decimalsCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<8>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (u8,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: decimalsReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for decimalsReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for decimalsCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = decimalsReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<8>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "decimals()"; - const SELECTOR: [u8; 4] = [49u8, 60u8, 229u8, 103u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `initialize(string,string,uint8)` and selector `0x1624f6c6`. - ```solidity - function initialize(string memory name_, string memory symbol_, uint8 decimals_) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct initializeCall { - pub name_: alloy::sol_types::private::String, - pub symbol_: alloy::sol_types::private::String, - pub decimals_: u8, - } - ///Container type for the return parameters of the [`initialize(string,string,uint8)`](initializeCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct initializeReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::String, - alloy::sol_types::sol_data::String, - alloy::sol_types::sol_data::Uint<8>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::String, alloy::sol_types::private::String, u8); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: initializeCall) -> Self { - (value.name_, value.symbol_, value.decimals_) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for initializeCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { name_: tuple.0, symbol_: tuple.1, decimals_: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: initializeReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for initializeReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for initializeCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::String, - alloy::sol_types::sol_data::String, - alloy::sol_types::sol_data::Uint<8>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = initializeReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "initialize(string,string,uint8)"; - const SELECTOR: [u8; 4] = [22u8, 36u8, 246u8, 198u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.name_, - ), - ::tokenize( - &self.symbol_, - ), - as alloy_sol_types::SolType>::tokenize( - &self.decimals_, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `name()` and selector `0x06fdde03`. - ```solidity - function name() external view returns (string memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct nameCall {} - ///Container type for the return parameters of the [`name()`](nameCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct nameReturn { - pub _0: alloy::sol_types::private::String, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: nameCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for nameCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: nameReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for nameReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for nameCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = nameReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "name()"; - const SELECTOR: [u8; 4] = [6u8, 253u8, 222u8, 3u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `nonces(address)` and selector `0x7ecebe00`. - ```solidity - function nonces(address) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct noncesCall { - pub _0: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`nonces(address)`](noncesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct noncesReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: noncesCall) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for noncesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: noncesReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for noncesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for noncesCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = noncesReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "nonces(address)"; - const SELECTOR: [u8; 4] = [126u8, 206u8, 190u8, 0u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self._0, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `permit(address,address,uint256,uint256,uint8,bytes32,bytes32)` and selector `0xd505accf`. - ```solidity - function permit(address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct permitCall { - pub owner: alloy::sol_types::private::Address, - pub spender: alloy::sol_types::private::Address, - pub value: alloy::sol_types::private::primitives::aliases::U256, - pub deadline: alloy::sol_types::private::primitives::aliases::U256, - pub v: u8, - pub r: alloy::sol_types::private::FixedBytes<32>, - pub s: alloy::sol_types::private::FixedBytes<32>, - } - ///Container type for the return parameters of the [`permit(address,address,uint256,uint256,uint8,bytes32,bytes32)`](permitCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct permitReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Uint<8>, - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - alloy::sol_types::private::primitives::aliases::U256, - u8, - alloy::sol_types::private::FixedBytes<32>, - alloy::sol_types::private::FixedBytes<32>, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: permitCall) -> Self { - ( - value.owner, - value.spender, - value.value, - value.deadline, - value.v, - value.r, - value.s, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for permitCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - owner: tuple.0, - spender: tuple.1, - value: tuple.2, - deadline: tuple.3, - v: tuple.4, - r: tuple.5, - s: tuple.6, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: permitReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for permitReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for permitCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Uint<8>, - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = permitReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "permit(address,address,uint256,uint256,uint8,bytes32,bytes32)"; - const SELECTOR: [u8; 4] = [213u8, 5u8, 172u8, 207u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.owner, - ), - ::tokenize( - &self.spender, - ), - as alloy_sol_types::SolType>::tokenize(&self.value), - as alloy_sol_types::SolType>::tokenize(&self.deadline), - as alloy_sol_types::SolType>::tokenize(&self.v), - as alloy_sol_types::SolType>::tokenize(&self.r), - as alloy_sol_types::SolType>::tokenize(&self.s), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `symbol()` and selector `0x95d89b41`. - ```solidity - function symbol() external view returns (string memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct symbolCall {} - ///Container type for the return parameters of the [`symbol()`](symbolCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct symbolReturn { - pub _0: alloy::sol_types::private::String, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: symbolCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for symbolCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: symbolReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for symbolReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for symbolCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = symbolReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "symbol()"; - const SELECTOR: [u8; 4] = [149u8, 216u8, 155u8, 65u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `totalSupply()` and selector `0x18160ddd`. - ```solidity - function totalSupply() external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct totalSupplyCall {} - ///Container type for the return parameters of the [`totalSupply()`](totalSupplyCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct totalSupplyReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: totalSupplyCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for totalSupplyCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: totalSupplyReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for totalSupplyReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for totalSupplyCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = totalSupplyReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "totalSupply()"; - const SELECTOR: [u8; 4] = [24u8, 22u8, 13u8, 221u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `transfer(address,uint256)` and selector `0xa9059cbb`. - ```solidity - function transfer(address to, uint256 amount) external returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferCall { - pub to: alloy::sol_types::private::Address, - pub amount: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`transfer(address,uint256)`](transferCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferCall) -> Self { - (value.to, value.amount) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { to: tuple.0, amount: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for transferCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = transferReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "transfer(address,uint256)"; - const SELECTOR: [u8; 4] = [169u8, 5u8, 156u8, 187u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.to, - ), - as alloy_sol_types::SolType>::tokenize( - &self.amount, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `transferFrom(address,address,uint256)` and selector `0x23b872dd`. - ```solidity - function transferFrom(address from, address to, uint256 amount) external returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferFromCall { - pub from: alloy::sol_types::private::Address, - pub to: alloy::sol_types::private::Address, - pub amount: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`transferFrom(address,address,uint256)`](transferFromCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferFromReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferFromCall) -> Self { - (value.from, value.to, value.amount) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferFromCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { from: tuple.0, to: tuple.1, amount: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferFromReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferFromReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for transferFromCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = transferFromReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "transferFrom(address,address,uint256)"; - const SELECTOR: [u8; 4] = [35u8, 184u8, 114u8, 221u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.from, - ), - ::tokenize( - &self.to, - ), - as alloy_sol_types::SolType>::tokenize( - &self.amount, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`MockERC20`](self) function calls. - pub enum MockERC20Calls { - DOMAIN_SEPARATOR(DOMAIN_SEPARATORCall), - allowance(allowanceCall), - approve(approveCall), - balanceOf(balanceOfCall), - decimals(decimalsCall), - initialize(initializeCall), - name(nameCall), - nonces(noncesCall), - permit(permitCall), - symbol(symbolCall), - totalSupply(totalSupplyCall), - transfer(transferCall), - transferFrom(transferFromCall), - } - #[automatically_derived] - impl MockERC20Calls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [6u8, 253u8, 222u8, 3u8], - [9u8, 94u8, 167u8, 179u8], - [22u8, 36u8, 246u8, 198u8], - [24u8, 22u8, 13u8, 221u8], - [35u8, 184u8, 114u8, 221u8], - [49u8, 60u8, 229u8, 103u8], - [54u8, 68u8, 229u8, 21u8], - [112u8, 160u8, 130u8, 49u8], - [126u8, 206u8, 190u8, 0u8], - [149u8, 216u8, 155u8, 65u8], - [169u8, 5u8, 156u8, 187u8], - [213u8, 5u8, 172u8, 207u8], - [221u8, 98u8, 237u8, 62u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for MockERC20Calls { - const NAME: &'static str = "MockERC20Calls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 13usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::DOMAIN_SEPARATOR(_) => { - ::SELECTOR - } - Self::allowance(_) => ::SELECTOR, - Self::approve(_) => ::SELECTOR, - Self::balanceOf(_) => ::SELECTOR, - Self::decimals(_) => ::SELECTOR, - Self::initialize(_) => ::SELECTOR, - Self::name(_) => ::SELECTOR, - Self::nonces(_) => ::SELECTOR, - Self::permit(_) => ::SELECTOR, - Self::symbol(_) => ::SELECTOR, - Self::totalSupply(_) => ::SELECTOR, - Self::transfer(_) => ::SELECTOR, - Self::transferFrom(_) => ::SELECTOR, - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn(&[u8], bool) -> alloy_sol_types::Result] = &[ - { - fn name( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC20Calls::name) - } - name - }, - { - fn approve( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC20Calls::approve) - } - approve - }, - { - fn initialize( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC20Calls::initialize) - } - initialize - }, - { - fn totalSupply( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(MockERC20Calls::totalSupply) - } - totalSupply - }, - { - fn transferFrom( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(MockERC20Calls::transferFrom) - } - transferFrom - }, - { - fn decimals( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC20Calls::decimals) - } - decimals - }, - { - fn DOMAIN_SEPARATOR( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(MockERC20Calls::DOMAIN_SEPARATOR) - } - DOMAIN_SEPARATOR - }, - { - fn balanceOf( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC20Calls::balanceOf) - } - balanceOf - }, - { - fn nonces( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC20Calls::nonces) - } - nonces - }, - { - fn symbol( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC20Calls::symbol) - } - symbol - }, - { - fn transfer( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC20Calls::transfer) - } - transfer - }, - { - fn permit( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC20Calls::permit) - } - permit - }, - { - fn allowance( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC20Calls::allowance) - } - allowance - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::DOMAIN_SEPARATOR(inner) => { - ::abi_encoded_size(inner) - } - Self::allowance(inner) => { - ::abi_encoded_size(inner) - } - Self::approve(inner) => { - ::abi_encoded_size(inner) - } - Self::balanceOf(inner) => { - ::abi_encoded_size(inner) - } - Self::decimals(inner) => { - ::abi_encoded_size(inner) - } - Self::initialize(inner) => { - ::abi_encoded_size(inner) - } - Self::name(inner) => { - ::abi_encoded_size(inner) - } - Self::nonces(inner) => { - ::abi_encoded_size(inner) - } - Self::permit(inner) => { - ::abi_encoded_size(inner) - } - Self::symbol(inner) => { - ::abi_encoded_size(inner) - } - Self::totalSupply(inner) => { - ::abi_encoded_size(inner) - } - Self::transfer(inner) => { - ::abi_encoded_size(inner) - } - Self::transferFrom(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::DOMAIN_SEPARATOR(inner) => { - ::abi_encode_raw(inner, out) - } - Self::allowance(inner) => { - ::abi_encode_raw(inner, out) - } - Self::approve(inner) => { - ::abi_encode_raw(inner, out) - } - Self::balanceOf(inner) => { - ::abi_encode_raw(inner, out) - } - Self::decimals(inner) => { - ::abi_encode_raw(inner, out) - } - Self::initialize(inner) => { - ::abi_encode_raw(inner, out) - } - Self::name(inner) => { - ::abi_encode_raw(inner, out) - } - Self::nonces(inner) => { - ::abi_encode_raw(inner, out) - } - Self::permit(inner) => { - ::abi_encode_raw(inner, out) - } - Self::symbol(inner) => { - ::abi_encode_raw(inner, out) - } - Self::totalSupply(inner) => { - ::abi_encode_raw(inner, out) - } - Self::transfer(inner) => { - ::abi_encode_raw(inner, out) - } - Self::transferFrom(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - ///Container for all the [`MockERC20`](self) events. - pub enum MockERC20Events { - Approval(Approval), - Transfer(Transfer), - } - #[automatically_derived] - impl MockERC20Events { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[ - [ - 140u8, 91u8, 225u8, 229u8, 235u8, 236u8, 125u8, 91u8, 209u8, 79u8, 113u8, 66u8, - 125u8, 30u8, 132u8, 243u8, 221u8, 3u8, 20u8, 192u8, 247u8, 178u8, 41u8, 30u8, 91u8, - 32u8, 10u8, 200u8, 199u8, 195u8, 185u8, 37u8, - ], - [ - 221u8, 242u8, 82u8, 173u8, 27u8, 226u8, 200u8, 155u8, 105u8, 194u8, 176u8, 104u8, - 252u8, 55u8, 141u8, 170u8, 149u8, 43u8, 167u8, 241u8, 99u8, 196u8, 161u8, 22u8, - 40u8, 245u8, 90u8, 77u8, 245u8, 35u8, 179u8, 239u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for MockERC20Events { - const NAME: &'static str = "MockERC20Events"; - const COUNT: usize = 2usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log(topics, data, validate) - .map(Self::Approval) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log(topics, data, validate) - .map(Self::Transfer) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for MockERC20Events { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::Approval(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner), - Self::Transfer(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner), - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::Approval(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::Transfer(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`MockERC20`](self) contract instance. - - See the [wrapper's documentation](`MockERC20Instance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> MockERC20Instance { - MockERC20Instance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - MockERC20Instance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - MockERC20Instance::::deploy_builder(provider) - } - /**A [`MockERC20`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`MockERC20`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct MockERC20Instance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for MockERC20Instance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("MockERC20Instance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > MockERC20Instance - { - /**Creates a new wrapper around an on-chain [`MockERC20`](self) contract instance. - - See the [wrapper's documentation](`MockERC20Instance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy(provider: P) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl MockERC20Instance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> MockERC20Instance { - MockERC20Instance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > MockERC20Instance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`DOMAIN_SEPARATOR`] function. - pub fn DOMAIN_SEPARATOR( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&DOMAIN_SEPARATORCall {}) - } - ///Creates a new call builder for the [`allowance`] function. - pub fn allowance( - &self, - owner: alloy::sol_types::private::Address, - spender: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&allowanceCall { owner, spender }) - } - ///Creates a new call builder for the [`approve`] function. - pub fn approve( - &self, - spender: alloy::sol_types::private::Address, - amount: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&approveCall { spender, amount }) - } - ///Creates a new call builder for the [`balanceOf`] function. - pub fn balanceOf( - &self, - owner: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&balanceOfCall { owner }) - } - ///Creates a new call builder for the [`decimals`] function. - pub fn decimals(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&decimalsCall {}) - } - ///Creates a new call builder for the [`initialize`] function. - pub fn initialize( - &self, - name_: alloy::sol_types::private::String, - symbol_: alloy::sol_types::private::String, - decimals_: u8, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&initializeCall { name_, symbol_, decimals_ }) - } - ///Creates a new call builder for the [`name`] function. - pub fn name(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&nameCall {}) - } - ///Creates a new call builder for the [`nonces`] function. - pub fn nonces( - &self, - _0: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&noncesCall { _0 }) - } - ///Creates a new call builder for the [`permit`] function. - pub fn permit( - &self, - owner: alloy::sol_types::private::Address, - spender: alloy::sol_types::private::Address, - value: alloy::sol_types::private::primitives::aliases::U256, - deadline: alloy::sol_types::private::primitives::aliases::U256, - v: u8, - r: alloy::sol_types::private::FixedBytes<32>, - s: alloy::sol_types::private::FixedBytes<32>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&permitCall { owner, spender, value, deadline, v, r, s }) - } - ///Creates a new call builder for the [`symbol`] function. - pub fn symbol(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&symbolCall {}) - } - ///Creates a new call builder for the [`totalSupply`] function. - pub fn totalSupply(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&totalSupplyCall {}) - } - ///Creates a new call builder for the [`transfer`] function. - pub fn transfer( - &self, - to: alloy::sol_types::private::Address, - amount: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&transferCall { to, amount }) - } - ///Creates a new call builder for the [`transferFrom`] function. - pub fn transferFrom( - &self, - from: alloy::sol_types::private::Address, - to: alloy::sol_types::private::Address, - amount: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&transferFromCall { from, to, amount }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > MockERC20Instance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`Approval`] event. - pub fn Approval_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`Transfer`] event. - pub fn Transfer_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/mockerc721.rs b/crates/bindings/src/mockerc721.rs deleted file mode 100644 index 7693ead0..00000000 --- a/crates/bindings/src/mockerc721.rs +++ /dev/null @@ -1,3075 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface MockERC721 { - event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId); - event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved); - event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId); - - function approve(address spender, uint256 id) external payable; - function balanceOf(address owner) external view returns (uint256); - function getApproved(uint256 id) external view returns (address); - function initialize(string memory name_, string memory symbol_) external; - function isApprovedForAll(address owner, address operator) external view returns (bool); - function name() external view returns (string memory); - function ownerOf(uint256 id) external view returns (address owner); - function safeTransferFrom(address from, address to, uint256 id) external payable; - function safeTransferFrom(address from, address to, uint256 id, bytes memory data) external payable; - function setApprovalForAll(address operator, bool approved) external; - function supportsInterface(bytes4 interfaceId) external view returns (bool); - function symbol() external view returns (string memory); - function tokenURI(uint256 id) external view returns (string memory); - function transferFrom(address from, address to, uint256 id) external payable; -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "approve", - "inputs": [ - { - "name": "spender", - "type": "address", - "internalType": "address" - }, - { - "name": "id", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "function", - "name": "balanceOf", - "inputs": [ - { - "name": "owner", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getApproved", - "inputs": [ - { - "name": "id", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "initialize", - "inputs": [ - { - "name": "name_", - "type": "string", - "internalType": "string" - }, - { - "name": "symbol_", - "type": "string", - "internalType": "string" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "isApprovedForAll", - "inputs": [ - { - "name": "owner", - "type": "address", - "internalType": "address" - }, - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "name", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "string", - "internalType": "string" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "ownerOf", - "inputs": [ - { - "name": "id", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "owner", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "safeTransferFrom", - "inputs": [ - { - "name": "from", - "type": "address", - "internalType": "address" - }, - { - "name": "to", - "type": "address", - "internalType": "address" - }, - { - "name": "id", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "function", - "name": "safeTransferFrom", - "inputs": [ - { - "name": "from", - "type": "address", - "internalType": "address" - }, - { - "name": "to", - "type": "address", - "internalType": "address" - }, - { - "name": "id", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "data", - "type": "bytes", - "internalType": "bytes" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "function", - "name": "setApprovalForAll", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "approved", - "type": "bool", - "internalType": "bool" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "supportsInterface", - "inputs": [ - { - "name": "interfaceId", - "type": "bytes4", - "internalType": "bytes4" - } - ], - "outputs": [ - { - "name": "", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "symbol", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "string", - "internalType": "string" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "tokenURI", - "inputs": [ - { - "name": "id", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "string", - "internalType": "string" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "transferFrom", - "inputs": [ - { - "name": "from", - "type": "address", - "internalType": "address" - }, - { - "name": "to", - "type": "address", - "internalType": "address" - }, - { - "name": "id", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [], - "stateMutability": "payable" - }, - { - "type": "event", - "name": "Approval", - "inputs": [ - { - "name": "_owner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_approved", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "ApprovalForAll", - "inputs": [ - { - "name": "_owner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_approved", - "type": "bool", - "indexed": false, - "internalType": "bool" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "Transfer", - "inputs": [ - { - "name": "_from", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_to", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "_tokenId", - "type": "uint256", - "indexed": true, - "internalType": "uint256" - } - ], - "anonymous": false - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod MockERC721 { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x60808060405234601557610eac908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610a1b5750806306fdde031461098c578063081812fc1461095a578063095ea7b3146108a457806323b872dd1461089257806342842e0e146107d35780634cd88b76146104bb5780636352211e1461044d57806370a08231146103db57806395d89b411461030c578063a22cb46514610283578063b88d4fde14610153578063c87b56dd146101115763e985e9c5146100b6575f80fd5b3461010d57604036600319011261010d576100cf610acc565b6100d7610ae2565b9060018060a01b03165f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b5f80fd5b3461010d57602036600319011261010d576040516020815260208181606051808284015261014481604085016080610a86565b601f01601f1916820101030190f35b608036600319011261010d57610167610acc565b61016f610ae2565b6044359060643567ffffffffffffffff811161010d573660238201121561010d576101a4903690602481600401359101610b54565b906101b0838286610c2d565b803b159283156101c6575b6101c484610df7565b005b604051630a85bd0160e11b81523360048201526001600160a01b03909516602486015260448501526080606485015260209250839182905f90829061020f906084830190610aa7565b03926001600160a01b03165af18015610278576101c4915f91610249575b506001600160e01b031916630a85bd0160e11b148280806101bb565b61026b915060203d602011610271575b6102638183610b32565b810190610dd7565b8261022d565b503d610259565b6040513d5f823e3d90fd5b3461010d57604036600319011261010d5761029c610acc565b6024359081151580920361010d57335f52600560205260405f2060018060a01b0382165f5260205260405f2060ff1981541660ff841617905560405191825260018060a01b0316907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160203392a3005b3461010d575f36600319011261010d576040515f60015461032c81610bb8565b80845290600181169081156103b7575060011461036c575b6103688361035481850382610b32565b604051918291602083526020830190610aa7565b0390f35b91905060015f525f516020610e575f395f51905f52915f905b80821061039d57509091508101602001610354610344565b919260018160209254838588010152019101909291610385565b60ff191660208086019190915291151560051b840190910191506103549050610344565b3461010d57602036600319011261010d576001600160a01b036103fc610acc565b168015610419575f526003602052602060405f2054604051908152f35b60405162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b6044820152606490fd5b3461010d57602036600319011261010d576004355f908152600260205260409020546001600160a01b0316801561048957602090604051908152f35b60405162461bcd60e51b815260206004820152600a6024820152691393d517d3525395115160b21b6044820152606490fd5b3461010d57604036600319011261010d5760043567ffffffffffffffff811161010d576104ec903690600401610b9a565b60243567ffffffffffffffff811161010d5761050c903690600401610b9a565b60ff6006541661079857815167ffffffffffffffff81116106a8576105315f54610bb8565b601f8111610731575b50602092601f82116001146106c757928192935f926106bc575b50508160011b915f199060031b1c1916175f555b805167ffffffffffffffff81116106a857610584600154610bb8565b601f8111610640575b50602091601f82116001146105d5579181925f926105ca575b50508160011b915f199060031b1c1916176001555b6006805460ff19166001179055005b0151905082806105a6565b601f1982169260015f525f516020610e575f395f51905f52915f5b85811061062857508360019510610610575b505050811b016001556105bb565b01515f1960f88460031b161c19169055828080610602565b919260206001819286850151815501940192016105f0565b60015f52601f820160051c5f516020610e575f395f51905f52019060208310610693575b601f0160051c5f516020610e575f395f51905f5201905b818110610688575061058d565b5f815560010161067b565b5f516020610e575f395f51905f529150610664565b634e487b7160e01b5f52604160045260245ffd5b015190508380610554565b601f198216935f80525f516020610e375f395f51905f52915f5b8681106107195750836001959610610701575b505050811b015f55610568565b01515f1960f88460031b161c191690558380806106f4565b919260206001819286850151815501940192016106e1565b5f8052601f820160051c5f516020610e375f395f51905f52019060208310610783575b601f0160051c5f516020610e375f395f51905f5201905b818110610778575061053a565b5f815560010161076b565b5f516020610e375f395f51905f529150610754565b60405162461bcd60e51b81526020600482015260136024820152721053149150511657d253925512505312569151606a1b6044820152606490fd5b6107dc36610af8565b6107e98183859495610c2d565b823b159182156107fd575b6101c483610df7565b604051630a85bd0160e11b81523360048201526001600160a01b0391821660248201526044810192909252608060648301525f60848301819052919360209350849260a4928492165af18015610278576101c4915f91610873575b506001600160e01b031916630a85bd0160e11b1482806107f4565b61088c915060203d602011610271576102638183610b32565b82610858565b6101c461089e36610af8565b91610c2d565b604036600319011261010d576108b8610acc565b60243590815f52600260205260018060a01b0360405f205416908133148015610938575b6108e590610bf0565b5f83815260046020526040812080546001600160a01b0319166001600160a01b039390931692831790559091907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259080a4005b505f82815260056020908152604080832033845290915290205460ff166108dc565b3461010d57602036600319011261010d576004355f526004602052602060018060a01b0360405f205416604051908152f35b3461010d575f36600319011261010d576040515f5f546109ab81610bb8565b80845290600181169081156103b757506001146109d2576103688361035481850382610b32565b5f8080525f516020610e375f395f51905f52939250905b808210610a0157509091508101602001610354610344565b9192600181602092548385880101520191019092916109e9565b3461010d57602036600319011261010d576004359063ffffffff60e01b821680920361010d576020916301ffc9a760e01b8114908115610a75575b8115610a64575b5015158152f35b635b5e139f60e01b14905083610a5d565b6380ac58cd60e01b81149150610a56565b5f5b838110610a975750505f910152565b8181015183820152602001610a88565b90602091610ac081518092818552858086019101610a86565b601f01601f1916010190565b600435906001600160a01b038216820361010d57565b602435906001600160a01b038216820361010d57565b606090600319011261010d576004356001600160a01b038116810361010d57906024356001600160a01b038116810361010d579060443590565b90601f8019910116810190811067ffffffffffffffff8211176106a857604052565b92919267ffffffffffffffff82116106a85760405191610b7e601f8201601f191660200184610b32565b82948184528183011161010d578281602093845f960137010152565b9080601f8301121561010d57816020610bb593359101610b54565b90565b90600182811c92168015610be6575b6020831014610bd257565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610bc7565b15610bf757565b60405162461bcd60e51b815260206004820152600e60248201526d1393d517d055551213d49256915160921b6044820152606490fd5b5f838152600260205260409020546001600160a01b039182169291168203610da5576001600160a01b0316908115610d6c578033148015610d4a575b8015610d2b575b610c7990610bf0565b805f52600360205260405f2080548015610d17575f19019055815f52600360205260405f2080545f198114610d17576001019055825f52600260205260405f20826bffffffffffffffffffffffff60a01b825416179055825f52600460205260405f206bffffffffffffffffffffffff60a01b81541690557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a4565b634e487b7160e01b5f52601160045260245ffd5b505f838152600460205260409020546001600160a01b03163314610c70565b505f81815260056020908152604080832033845290915290205460ff16610c69565b60405162461bcd60e51b81526020600482015260116024820152701253959053125117d49150d25412515395607a1b6044820152606490fd5b60405162461bcd60e51b815260206004820152600a60248201526957524f4e475f46524f4d60b01b6044820152606490fd5b9081602091031261010d57516001600160e01b03198116810361010d5790565b15610dfe57565b60405162461bcd60e51b815260206004820152601060248201526f155394d0519157d49150d2541251539560821b6044820152606490fdfe290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563b10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6a2646970667358221220305b21f214d5977038b62bf3a6716a1498a19f8c72e0c74decfbb22489f20bd264736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R4`\x15Wa\x0E\xAC\x90\x81a\0\x1A\x829\xF3[_\x80\xFD\xFE`\x80\x80`@R`\x046\x10\x15a\0\x12W_\x80\xFD[_5`\xE0\x1C\x90\x81c\x01\xFF\xC9\xA7\x14a\n\x1BWP\x80c\x06\xFD\xDE\x03\x14a\t\x8CW\x80c\x08\x18\x12\xFC\x14a\tZW\x80c\t^\xA7\xB3\x14a\x08\xA4W\x80c#\xB8r\xDD\x14a\x08\x92W\x80cB\x84.\x0E\x14a\x07\xD3W\x80cL\xD8\x8Bv\x14a\x04\xBBW\x80ccR!\x1E\x14a\x04MW\x80cp\xA0\x821\x14a\x03\xDBW\x80c\x95\xD8\x9BA\x14a\x03\x0CW\x80c\xA2,\xB4e\x14a\x02\x83W\x80c\xB8\x8DO\xDE\x14a\x01SW\x80c\xC8{V\xDD\x14a\x01\x11Wc\xE9\x85\xE9\xC5\x14a\0\xB6W_\x80\xFD[4a\x01\rW`@6`\x03\x19\x01\x12a\x01\rWa\0\xCFa\n\xCCV[a\0\xD7a\n\xE2V[\x90`\x01\x80`\xA0\x1B\x03\x16_R`\x05` R`@_ \x90`\x01\x80`\xA0\x1B\x03\x16_R` R` `\xFF`@_ T\x16`@Q\x90\x15\x15\x81R\xF3[_\x80\xFD[4a\x01\rW` 6`\x03\x19\x01\x12a\x01\rW`@Q` \x81R` \x81\x81``Q\x80\x82\x84\x01Ra\x01D\x81`@\x85\x01`\x80a\n\x86V[`\x1F\x01`\x1F\x19\x16\x82\x01\x01\x03\x01\x90\xF3[`\x806`\x03\x19\x01\x12a\x01\rWa\x01ga\n\xCCV[a\x01oa\n\xE2V[`D5\x90`d5g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x01\rW6`#\x82\x01\x12\x15a\x01\rWa\x01\xA4\x906\x90`$\x81`\x04\x015\x91\x01a\x0BTV[\x90a\x01\xB0\x83\x82\x86a\x0C-V[\x80;\x15\x92\x83\x15a\x01\xC6W[a\x01\xC4\x84a\r\xF7V[\0[`@Qc\n\x85\xBD\x01`\xE1\x1B\x81R3`\x04\x82\x01R`\x01`\x01`\xA0\x1B\x03\x90\x95\x16`$\x86\x01R`D\x85\x01R`\x80`d\x85\x01R` \x92P\x83\x91\x82\x90_\x90\x82\x90a\x02\x0F\x90`\x84\x83\x01\x90a\n\xA7V[\x03\x92`\x01`\x01`\xA0\x1B\x03\x16Z\xF1\x80\x15a\x02xWa\x01\xC4\x91_\x91a\x02IW[P`\x01`\x01`\xE0\x1B\x03\x19\x16c\n\x85\xBD\x01`\xE1\x1B\x14\x82\x80\x80a\x01\xBBV[a\x02k\x91P` =` \x11a\x02qW[a\x02c\x81\x83a\x0B2V[\x81\x01\x90a\r\xD7V[\x82a\x02-V[P=a\x02YV[`@Q=_\x82>=\x90\xFD[4a\x01\rW`@6`\x03\x19\x01\x12a\x01\rWa\x02\x9Ca\n\xCCV[`$5\x90\x81\x15\x15\x80\x92\x03a\x01\rW3_R`\x05` R`@_ `\x01\x80`\xA0\x1B\x03\x82\x16_R` R`@_ `\xFF\x19\x81T\x16`\xFF\x84\x16\x17\x90U`@Q\x91\x82R`\x01\x80`\xA0\x1B\x03\x16\x90\x7F\x170~\xAB9\xABa\x07\xE8\x89\x98E\xAD=Y\xBD\x96S\xF2\0\xF2 \x92\x04\x89\xCA+Y7il1` 3\x92\xA3\0[4a\x01\rW_6`\x03\x19\x01\x12a\x01\rW`@Q_`\x01Ta\x03,\x81a\x0B\xB8V[\x80\x84R\x90`\x01\x81\x16\x90\x81\x15a\x03\xB7WP`\x01\x14a\x03lW[a\x03h\x83a\x03T\x81\x85\x03\x82a\x0B2V[`@Q\x91\x82\x91` \x83R` \x83\x01\x90a\n\xA7V[\x03\x90\xF3[\x91\x90P`\x01_R_Q` a\x0EW_9_Q\x90_R\x91_\x90[\x80\x82\x10a\x03\x9DWP\x90\x91P\x81\x01` \x01a\x03Ta\x03DV[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\x03\x85V[`\xFF\x19\x16` \x80\x86\x01\x91\x90\x91R\x91\x15\x15`\x05\x1B\x84\x01\x90\x91\x01\x91Pa\x03T\x90Pa\x03DV[4a\x01\rW` 6`\x03\x19\x01\x12a\x01\rW`\x01`\x01`\xA0\x1B\x03a\x03\xFCa\n\xCCV[\x16\x80\x15a\x04\x19W_R`\x03` R` `@_ T`@Q\x90\x81R\xF3[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x0C`$\x82\x01RkZERO_ADDRESS`\xA0\x1B`D\x82\x01R`d\x90\xFD[4a\x01\rW` 6`\x03\x19\x01\x12a\x01\rW`\x045_\x90\x81R`\x02` R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x16\x80\x15a\x04\x89W` \x90`@Q\x90\x81R\xF3[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\n`$\x82\x01Ri\x13\x93\xD5\x17\xD3RS\x95\x11Q`\xB2\x1B`D\x82\x01R`d\x90\xFD[4a\x01\rW`@6`\x03\x19\x01\x12a\x01\rW`\x045g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x01\rWa\x04\xEC\x906\x90`\x04\x01a\x0B\x9AV[`$5g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x01\rWa\x05\x0C\x906\x90`\x04\x01a\x0B\x9AV[`\xFF`\x06T\x16a\x07\x98W\x81Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x06\xA8Wa\x051_Ta\x0B\xB8V[`\x1F\x81\x11a\x071W[P` \x92`\x1F\x82\x11`\x01\x14a\x06\xC7W\x92\x81\x92\x93_\x92a\x06\xBCW[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17_U[\x80Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x06\xA8Wa\x05\x84`\x01Ta\x0B\xB8V[`\x1F\x81\x11a\x06@W[P` \x91`\x1F\x82\x11`\x01\x14a\x05\xD5W\x91\x81\x92_\x92a\x05\xCAW[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17`\x01U[`\x06\x80T`\xFF\x19\x16`\x01\x17\x90U\0[\x01Q\x90P\x82\x80a\x05\xA6V[`\x1F\x19\x82\x16\x92`\x01_R_Q` a\x0EW_9_Q\x90_R\x91_[\x85\x81\x10a\x06(WP\x83`\x01\x95\x10a\x06\x10W[PPP\x81\x1B\x01`\x01Ua\x05\xBBV[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x82\x80\x80a\x06\x02V[\x91\x92` `\x01\x81\x92\x86\x85\x01Q\x81U\x01\x94\x01\x92\x01a\x05\xF0V[`\x01_R`\x1F\x82\x01`\x05\x1C_Q` a\x0EW_9_Q\x90_R\x01\x90` \x83\x10a\x06\x93W[`\x1F\x01`\x05\x1C_Q` a\x0EW_9_Q\x90_R\x01\x90[\x81\x81\x10a\x06\x88WPa\x05\x8DV[_\x81U`\x01\x01a\x06{V[_Q` a\x0EW_9_Q\x90_R\x91Pa\x06dV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[\x01Q\x90P\x83\x80a\x05TV[`\x1F\x19\x82\x16\x93_\x80R_Q` a\x0E7_9_Q\x90_R\x91_[\x86\x81\x10a\x07\x19WP\x83`\x01\x95\x96\x10a\x07\x01W[PPP\x81\x1B\x01_Ua\x05hV[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x83\x80\x80a\x06\xF4V[\x91\x92` `\x01\x81\x92\x86\x85\x01Q\x81U\x01\x94\x01\x92\x01a\x06\xE1V[_\x80R`\x1F\x82\x01`\x05\x1C_Q` a\x0E7_9_Q\x90_R\x01\x90` \x83\x10a\x07\x83W[`\x1F\x01`\x05\x1C_Q` a\x0E7_9_Q\x90_R\x01\x90[\x81\x81\x10a\x07xWPa\x05:V[_\x81U`\x01\x01a\x07kV[_Q` a\x0E7_9_Q\x90_R\x91Pa\x07TV[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x13`$\x82\x01Rr\x10S\x14\x91PQ\x16W\xD2S\x92U\x12PS\x12V\x91Q`j\x1B`D\x82\x01R`d\x90\xFD[a\x07\xDC6a\n\xF8V[a\x07\xE9\x81\x83\x85\x94\x95a\x0C-V[\x82;\x15\x91\x82\x15a\x07\xFDW[a\x01\xC4\x83a\r\xF7V[`@Qc\n\x85\xBD\x01`\xE1\x1B\x81R3`\x04\x82\x01R`\x01`\x01`\xA0\x1B\x03\x91\x82\x16`$\x82\x01R`D\x81\x01\x92\x90\x92R`\x80`d\x83\x01R_`\x84\x83\x01\x81\x90R\x91\x93` \x93P\x84\x92`\xA4\x92\x84\x92\x16Z\xF1\x80\x15a\x02xWa\x01\xC4\x91_\x91a\x08sW[P`\x01`\x01`\xE0\x1B\x03\x19\x16c\n\x85\xBD\x01`\xE1\x1B\x14\x82\x80a\x07\xF4V[a\x08\x8C\x91P` =` \x11a\x02qWa\x02c\x81\x83a\x0B2V[\x82a\x08XV[a\x01\xC4a\x08\x9E6a\n\xF8V[\x91a\x0C-V[`@6`\x03\x19\x01\x12a\x01\rWa\x08\xB8a\n\xCCV[`$5\x90\x81_R`\x02` R`\x01\x80`\xA0\x1B\x03`@_ T\x16\x90\x813\x14\x80\x15a\t8W[a\x08\xE5\x90a\x0B\xF0V[_\x83\x81R`\x04` R`@\x81 \x80T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x93\x90\x93\x16\x92\x83\x17\x90U\x90\x91\x90\x7F\x8C[\xE1\xE5\xEB\xEC}[\xD1OqB}\x1E\x84\xF3\xDD\x03\x14\xC0\xF7\xB2)\x1E[ \n\xC8\xC7\xC3\xB9%\x90\x80\xA4\0[P_\x82\x81R`\x05` \x90\x81R`@\x80\x83 3\x84R\x90\x91R\x90 T`\xFF\x16a\x08\xDCV[4a\x01\rW` 6`\x03\x19\x01\x12a\x01\rW`\x045_R`\x04` R` `\x01\x80`\xA0\x1B\x03`@_ T\x16`@Q\x90\x81R\xF3[4a\x01\rW_6`\x03\x19\x01\x12a\x01\rW`@Q__Ta\t\xAB\x81a\x0B\xB8V[\x80\x84R\x90`\x01\x81\x16\x90\x81\x15a\x03\xB7WP`\x01\x14a\t\xD2Wa\x03h\x83a\x03T\x81\x85\x03\x82a\x0B2V[_\x80\x80R_Q` a\x0E7_9_Q\x90_R\x93\x92P\x90[\x80\x82\x10a\n\x01WP\x90\x91P\x81\x01` \x01a\x03Ta\x03DV[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\t\xE9V[4a\x01\rW` 6`\x03\x19\x01\x12a\x01\rW`\x045\x90c\xFF\xFF\xFF\xFF`\xE0\x1B\x82\x16\x80\x92\x03a\x01\rW` \x91c\x01\xFF\xC9\xA7`\xE0\x1B\x81\x14\x90\x81\x15a\nuW[\x81\x15a\ndW[P\x15\x15\x81R\xF3[c[^\x13\x9F`\xE0\x1B\x14\x90P\x83a\n]V[c\x80\xACX\xCD`\xE0\x1B\x81\x14\x91Pa\nVV[_[\x83\x81\x10a\n\x97WPP_\x91\x01RV[\x81\x81\x01Q\x83\x82\x01R` \x01a\n\x88V[\x90` \x91a\n\xC0\x81Q\x80\x92\x81\x85R\x85\x80\x86\x01\x91\x01a\n\x86V[`\x1F\x01`\x1F\x19\x16\x01\x01\x90V[`\x045\x90`\x01`\x01`\xA0\x1B\x03\x82\x16\x82\x03a\x01\rWV[`$5\x90`\x01`\x01`\xA0\x1B\x03\x82\x16\x82\x03a\x01\rWV[``\x90`\x03\x19\x01\x12a\x01\rW`\x045`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x03a\x01\rW\x90`$5`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x03a\x01\rW\x90`D5\x90V[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x17a\x06\xA8W`@RV[\x92\x91\x92g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11a\x06\xA8W`@Q\x91a\x0B~`\x1F\x82\x01`\x1F\x19\x16` \x01\x84a\x0B2V[\x82\x94\x81\x84R\x81\x83\x01\x11a\x01\rW\x82\x81` \x93\x84_\x96\x017\x01\x01RV[\x90\x80`\x1F\x83\x01\x12\x15a\x01\rW\x81` a\x0B\xB5\x935\x91\x01a\x0BTV[\x90V[\x90`\x01\x82\x81\x1C\x92\x16\x80\x15a\x0B\xE6W[` \x83\x10\x14a\x0B\xD2WV[cNH{q`\xE0\x1B_R`\"`\x04R`$_\xFD[\x91`\x7F\x16\x91a\x0B\xC7V[\x15a\x0B\xF7WV[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x0E`$\x82\x01Rm\x13\x93\xD5\x17\xD0UU\x12\x13\xD4\x92V\x91Q`\x92\x1B`D\x82\x01R`d\x90\xFD[_\x83\x81R`\x02` R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x91\x82\x16\x92\x91\x16\x82\x03a\r\xA5W`\x01`\x01`\xA0\x1B\x03\x16\x90\x81\x15a\rlW\x803\x14\x80\x15a\rJW[\x80\x15a\r+W[a\x0Cy\x90a\x0B\xF0V[\x80_R`\x03` R`@_ \x80T\x80\x15a\r\x17W_\x19\x01\x90U\x81_R`\x03` R`@_ \x80T_\x19\x81\x14a\r\x17W`\x01\x01\x90U\x82_R`\x02` R`@_ \x82k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\xA0\x1B\x82T\x16\x17\x90U\x82_R`\x04` R`@_ k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\xA0\x1B\x81T\x16\x90U\x7F\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF_\x80\xA4V[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[P_\x83\x81R`\x04` R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x163\x14a\x0CpV[P_\x81\x81R`\x05` \x90\x81R`@\x80\x83 3\x84R\x90\x91R\x90 T`\xFF\x16a\x0CiV[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x11`$\x82\x01Rp\x12S\x95\x90S\x12Q\x17\xD4\x91P\xD2T\x12QS\x95`z\x1B`D\x82\x01R`d\x90\xFD[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\n`$\x82\x01RiWRONG_FROM`\xB0\x1B`D\x82\x01R`d\x90\xFD[\x90\x81` \x91\x03\x12a\x01\rWQ`\x01`\x01`\xE0\x1B\x03\x19\x81\x16\x81\x03a\x01\rW\x90V[\x15a\r\xFEWV[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x10`$\x82\x01Ro\x15S\x94\xD0Q\x91W\xD4\x91P\xD2T\x12QS\x95`\x82\x1B`D\x82\x01R`d\x90\xFD\xFE)\r\xEC\xD9T\x8Bb\xA8\xD6\x03E\xA9\x888o\xC8K\xA6\xBC\x95H@\x08\xF66/\x93\x16\x0E\xF3\xE5c\xB1\x0E-Rv\x12\x07;&\xEE\xCD\xFDq~j2\x0C\xF4KJ\xFA\xC2\xB0s-\x9F\xCB\xE2\xB7\xFA\x0C\xF6\xA2dipfsX\"\x12 0[!\xF2\x14\xD5\x97p8\xB6+\xF3\xA6qj\x14\x98\xA1\x9F\x8Cr\xE0\xC7M\xEC\xFB\xB2$\x89\xF2\x0B\xD2dsolcC\0\x08\x1C\x003", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x6080806040526004361015610012575f80fd5b5f3560e01c90816301ffc9a714610a1b5750806306fdde031461098c578063081812fc1461095a578063095ea7b3146108a457806323b872dd1461089257806342842e0e146107d35780634cd88b76146104bb5780636352211e1461044d57806370a08231146103db57806395d89b411461030c578063a22cb46514610283578063b88d4fde14610153578063c87b56dd146101115763e985e9c5146100b6575f80fd5b3461010d57604036600319011261010d576100cf610acc565b6100d7610ae2565b9060018060a01b03165f52600560205260405f209060018060a01b03165f52602052602060ff60405f2054166040519015158152f35b5f80fd5b3461010d57602036600319011261010d576040516020815260208181606051808284015261014481604085016080610a86565b601f01601f1916820101030190f35b608036600319011261010d57610167610acc565b61016f610ae2565b6044359060643567ffffffffffffffff811161010d573660238201121561010d576101a4903690602481600401359101610b54565b906101b0838286610c2d565b803b159283156101c6575b6101c484610df7565b005b604051630a85bd0160e11b81523360048201526001600160a01b03909516602486015260448501526080606485015260209250839182905f90829061020f906084830190610aa7565b03926001600160a01b03165af18015610278576101c4915f91610249575b506001600160e01b031916630a85bd0160e11b148280806101bb565b61026b915060203d602011610271575b6102638183610b32565b810190610dd7565b8261022d565b503d610259565b6040513d5f823e3d90fd5b3461010d57604036600319011261010d5761029c610acc565b6024359081151580920361010d57335f52600560205260405f2060018060a01b0382165f5260205260405f2060ff1981541660ff841617905560405191825260018060a01b0316907f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160203392a3005b3461010d575f36600319011261010d576040515f60015461032c81610bb8565b80845290600181169081156103b7575060011461036c575b6103688361035481850382610b32565b604051918291602083526020830190610aa7565b0390f35b91905060015f525f516020610e575f395f51905f52915f905b80821061039d57509091508101602001610354610344565b919260018160209254838588010152019101909291610385565b60ff191660208086019190915291151560051b840190910191506103549050610344565b3461010d57602036600319011261010d576001600160a01b036103fc610acc565b168015610419575f526003602052602060405f2054604051908152f35b60405162461bcd60e51b815260206004820152600c60248201526b5a45524f5f4144445245535360a01b6044820152606490fd5b3461010d57602036600319011261010d576004355f908152600260205260409020546001600160a01b0316801561048957602090604051908152f35b60405162461bcd60e51b815260206004820152600a6024820152691393d517d3525395115160b21b6044820152606490fd5b3461010d57604036600319011261010d5760043567ffffffffffffffff811161010d576104ec903690600401610b9a565b60243567ffffffffffffffff811161010d5761050c903690600401610b9a565b60ff6006541661079857815167ffffffffffffffff81116106a8576105315f54610bb8565b601f8111610731575b50602092601f82116001146106c757928192935f926106bc575b50508160011b915f199060031b1c1916175f555b805167ffffffffffffffff81116106a857610584600154610bb8565b601f8111610640575b50602091601f82116001146105d5579181925f926105ca575b50508160011b915f199060031b1c1916176001555b6006805460ff19166001179055005b0151905082806105a6565b601f1982169260015f525f516020610e575f395f51905f52915f5b85811061062857508360019510610610575b505050811b016001556105bb565b01515f1960f88460031b161c19169055828080610602565b919260206001819286850151815501940192016105f0565b60015f52601f820160051c5f516020610e575f395f51905f52019060208310610693575b601f0160051c5f516020610e575f395f51905f5201905b818110610688575061058d565b5f815560010161067b565b5f516020610e575f395f51905f529150610664565b634e487b7160e01b5f52604160045260245ffd5b015190508380610554565b601f198216935f80525f516020610e375f395f51905f52915f5b8681106107195750836001959610610701575b505050811b015f55610568565b01515f1960f88460031b161c191690558380806106f4565b919260206001819286850151815501940192016106e1565b5f8052601f820160051c5f516020610e375f395f51905f52019060208310610783575b601f0160051c5f516020610e375f395f51905f5201905b818110610778575061053a565b5f815560010161076b565b5f516020610e375f395f51905f529150610754565b60405162461bcd60e51b81526020600482015260136024820152721053149150511657d253925512505312569151606a1b6044820152606490fd5b6107dc36610af8565b6107e98183859495610c2d565b823b159182156107fd575b6101c483610df7565b604051630a85bd0160e11b81523360048201526001600160a01b0391821660248201526044810192909252608060648301525f60848301819052919360209350849260a4928492165af18015610278576101c4915f91610873575b506001600160e01b031916630a85bd0160e11b1482806107f4565b61088c915060203d602011610271576102638183610b32565b82610858565b6101c461089e36610af8565b91610c2d565b604036600319011261010d576108b8610acc565b60243590815f52600260205260018060a01b0360405f205416908133148015610938575b6108e590610bf0565b5f83815260046020526040812080546001600160a01b0319166001600160a01b039390931692831790559091907f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259080a4005b505f82815260056020908152604080832033845290915290205460ff166108dc565b3461010d57602036600319011261010d576004355f526004602052602060018060a01b0360405f205416604051908152f35b3461010d575f36600319011261010d576040515f5f546109ab81610bb8565b80845290600181169081156103b757506001146109d2576103688361035481850382610b32565b5f8080525f516020610e375f395f51905f52939250905b808210610a0157509091508101602001610354610344565b9192600181602092548385880101520191019092916109e9565b3461010d57602036600319011261010d576004359063ffffffff60e01b821680920361010d576020916301ffc9a760e01b8114908115610a75575b8115610a64575b5015158152f35b635b5e139f60e01b14905083610a5d565b6380ac58cd60e01b81149150610a56565b5f5b838110610a975750505f910152565b8181015183820152602001610a88565b90602091610ac081518092818552858086019101610a86565b601f01601f1916010190565b600435906001600160a01b038216820361010d57565b602435906001600160a01b038216820361010d57565b606090600319011261010d576004356001600160a01b038116810361010d57906024356001600160a01b038116810361010d579060443590565b90601f8019910116810190811067ffffffffffffffff8211176106a857604052565b92919267ffffffffffffffff82116106a85760405191610b7e601f8201601f191660200184610b32565b82948184528183011161010d578281602093845f960137010152565b9080601f8301121561010d57816020610bb593359101610b54565b90565b90600182811c92168015610be6575b6020831014610bd257565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610bc7565b15610bf757565b60405162461bcd60e51b815260206004820152600e60248201526d1393d517d055551213d49256915160921b6044820152606490fd5b5f838152600260205260409020546001600160a01b039182169291168203610da5576001600160a01b0316908115610d6c578033148015610d4a575b8015610d2b575b610c7990610bf0565b805f52600360205260405f2080548015610d17575f19019055815f52600360205260405f2080545f198114610d17576001019055825f52600260205260405f20826bffffffffffffffffffffffff60a01b825416179055825f52600460205260405f206bffffffffffffffffffffffff60a01b81541690557fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a4565b634e487b7160e01b5f52601160045260245ffd5b505f838152600460205260409020546001600160a01b03163314610c70565b505f81815260056020908152604080832033845290915290205460ff16610c69565b60405162461bcd60e51b81526020600482015260116024820152701253959053125117d49150d25412515395607a1b6044820152606490fd5b60405162461bcd60e51b815260206004820152600a60248201526957524f4e475f46524f4d60b01b6044820152606490fd5b9081602091031261010d57516001600160e01b03198116810361010d5790565b15610dfe57565b60405162461bcd60e51b815260206004820152601060248201526f155394d0519157d49150d2541251539560821b6044820152606490fdfe290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e563b10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6a2646970667358221220305b21f214d5977038b62bf3a6716a1498a19f8c72e0c74decfbb22489f20bd264736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R`\x046\x10\x15a\0\x12W_\x80\xFD[_5`\xE0\x1C\x90\x81c\x01\xFF\xC9\xA7\x14a\n\x1BWP\x80c\x06\xFD\xDE\x03\x14a\t\x8CW\x80c\x08\x18\x12\xFC\x14a\tZW\x80c\t^\xA7\xB3\x14a\x08\xA4W\x80c#\xB8r\xDD\x14a\x08\x92W\x80cB\x84.\x0E\x14a\x07\xD3W\x80cL\xD8\x8Bv\x14a\x04\xBBW\x80ccR!\x1E\x14a\x04MW\x80cp\xA0\x821\x14a\x03\xDBW\x80c\x95\xD8\x9BA\x14a\x03\x0CW\x80c\xA2,\xB4e\x14a\x02\x83W\x80c\xB8\x8DO\xDE\x14a\x01SW\x80c\xC8{V\xDD\x14a\x01\x11Wc\xE9\x85\xE9\xC5\x14a\0\xB6W_\x80\xFD[4a\x01\rW`@6`\x03\x19\x01\x12a\x01\rWa\0\xCFa\n\xCCV[a\0\xD7a\n\xE2V[\x90`\x01\x80`\xA0\x1B\x03\x16_R`\x05` R`@_ \x90`\x01\x80`\xA0\x1B\x03\x16_R` R` `\xFF`@_ T\x16`@Q\x90\x15\x15\x81R\xF3[_\x80\xFD[4a\x01\rW` 6`\x03\x19\x01\x12a\x01\rW`@Q` \x81R` \x81\x81``Q\x80\x82\x84\x01Ra\x01D\x81`@\x85\x01`\x80a\n\x86V[`\x1F\x01`\x1F\x19\x16\x82\x01\x01\x03\x01\x90\xF3[`\x806`\x03\x19\x01\x12a\x01\rWa\x01ga\n\xCCV[a\x01oa\n\xE2V[`D5\x90`d5g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x01\rW6`#\x82\x01\x12\x15a\x01\rWa\x01\xA4\x906\x90`$\x81`\x04\x015\x91\x01a\x0BTV[\x90a\x01\xB0\x83\x82\x86a\x0C-V[\x80;\x15\x92\x83\x15a\x01\xC6W[a\x01\xC4\x84a\r\xF7V[\0[`@Qc\n\x85\xBD\x01`\xE1\x1B\x81R3`\x04\x82\x01R`\x01`\x01`\xA0\x1B\x03\x90\x95\x16`$\x86\x01R`D\x85\x01R`\x80`d\x85\x01R` \x92P\x83\x91\x82\x90_\x90\x82\x90a\x02\x0F\x90`\x84\x83\x01\x90a\n\xA7V[\x03\x92`\x01`\x01`\xA0\x1B\x03\x16Z\xF1\x80\x15a\x02xWa\x01\xC4\x91_\x91a\x02IW[P`\x01`\x01`\xE0\x1B\x03\x19\x16c\n\x85\xBD\x01`\xE1\x1B\x14\x82\x80\x80a\x01\xBBV[a\x02k\x91P` =` \x11a\x02qW[a\x02c\x81\x83a\x0B2V[\x81\x01\x90a\r\xD7V[\x82a\x02-V[P=a\x02YV[`@Q=_\x82>=\x90\xFD[4a\x01\rW`@6`\x03\x19\x01\x12a\x01\rWa\x02\x9Ca\n\xCCV[`$5\x90\x81\x15\x15\x80\x92\x03a\x01\rW3_R`\x05` R`@_ `\x01\x80`\xA0\x1B\x03\x82\x16_R` R`@_ `\xFF\x19\x81T\x16`\xFF\x84\x16\x17\x90U`@Q\x91\x82R`\x01\x80`\xA0\x1B\x03\x16\x90\x7F\x170~\xAB9\xABa\x07\xE8\x89\x98E\xAD=Y\xBD\x96S\xF2\0\xF2 \x92\x04\x89\xCA+Y7il1` 3\x92\xA3\0[4a\x01\rW_6`\x03\x19\x01\x12a\x01\rW`@Q_`\x01Ta\x03,\x81a\x0B\xB8V[\x80\x84R\x90`\x01\x81\x16\x90\x81\x15a\x03\xB7WP`\x01\x14a\x03lW[a\x03h\x83a\x03T\x81\x85\x03\x82a\x0B2V[`@Q\x91\x82\x91` \x83R` \x83\x01\x90a\n\xA7V[\x03\x90\xF3[\x91\x90P`\x01_R_Q` a\x0EW_9_Q\x90_R\x91_\x90[\x80\x82\x10a\x03\x9DWP\x90\x91P\x81\x01` \x01a\x03Ta\x03DV[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\x03\x85V[`\xFF\x19\x16` \x80\x86\x01\x91\x90\x91R\x91\x15\x15`\x05\x1B\x84\x01\x90\x91\x01\x91Pa\x03T\x90Pa\x03DV[4a\x01\rW` 6`\x03\x19\x01\x12a\x01\rW`\x01`\x01`\xA0\x1B\x03a\x03\xFCa\n\xCCV[\x16\x80\x15a\x04\x19W_R`\x03` R` `@_ T`@Q\x90\x81R\xF3[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x0C`$\x82\x01RkZERO_ADDRESS`\xA0\x1B`D\x82\x01R`d\x90\xFD[4a\x01\rW` 6`\x03\x19\x01\x12a\x01\rW`\x045_\x90\x81R`\x02` R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x16\x80\x15a\x04\x89W` \x90`@Q\x90\x81R\xF3[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\n`$\x82\x01Ri\x13\x93\xD5\x17\xD3RS\x95\x11Q`\xB2\x1B`D\x82\x01R`d\x90\xFD[4a\x01\rW`@6`\x03\x19\x01\x12a\x01\rW`\x045g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x01\rWa\x04\xEC\x906\x90`\x04\x01a\x0B\x9AV[`$5g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x01\rWa\x05\x0C\x906\x90`\x04\x01a\x0B\x9AV[`\xFF`\x06T\x16a\x07\x98W\x81Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x06\xA8Wa\x051_Ta\x0B\xB8V[`\x1F\x81\x11a\x071W[P` \x92`\x1F\x82\x11`\x01\x14a\x06\xC7W\x92\x81\x92\x93_\x92a\x06\xBCW[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17_U[\x80Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11a\x06\xA8Wa\x05\x84`\x01Ta\x0B\xB8V[`\x1F\x81\x11a\x06@W[P` \x91`\x1F\x82\x11`\x01\x14a\x05\xD5W\x91\x81\x92_\x92a\x05\xCAW[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17`\x01U[`\x06\x80T`\xFF\x19\x16`\x01\x17\x90U\0[\x01Q\x90P\x82\x80a\x05\xA6V[`\x1F\x19\x82\x16\x92`\x01_R_Q` a\x0EW_9_Q\x90_R\x91_[\x85\x81\x10a\x06(WP\x83`\x01\x95\x10a\x06\x10W[PPP\x81\x1B\x01`\x01Ua\x05\xBBV[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x82\x80\x80a\x06\x02V[\x91\x92` `\x01\x81\x92\x86\x85\x01Q\x81U\x01\x94\x01\x92\x01a\x05\xF0V[`\x01_R`\x1F\x82\x01`\x05\x1C_Q` a\x0EW_9_Q\x90_R\x01\x90` \x83\x10a\x06\x93W[`\x1F\x01`\x05\x1C_Q` a\x0EW_9_Q\x90_R\x01\x90[\x81\x81\x10a\x06\x88WPa\x05\x8DV[_\x81U`\x01\x01a\x06{V[_Q` a\x0EW_9_Q\x90_R\x91Pa\x06dV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[\x01Q\x90P\x83\x80a\x05TV[`\x1F\x19\x82\x16\x93_\x80R_Q` a\x0E7_9_Q\x90_R\x91_[\x86\x81\x10a\x07\x19WP\x83`\x01\x95\x96\x10a\x07\x01W[PPP\x81\x1B\x01_Ua\x05hV[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x83\x80\x80a\x06\xF4V[\x91\x92` `\x01\x81\x92\x86\x85\x01Q\x81U\x01\x94\x01\x92\x01a\x06\xE1V[_\x80R`\x1F\x82\x01`\x05\x1C_Q` a\x0E7_9_Q\x90_R\x01\x90` \x83\x10a\x07\x83W[`\x1F\x01`\x05\x1C_Q` a\x0E7_9_Q\x90_R\x01\x90[\x81\x81\x10a\x07xWPa\x05:V[_\x81U`\x01\x01a\x07kV[_Q` a\x0E7_9_Q\x90_R\x91Pa\x07TV[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x13`$\x82\x01Rr\x10S\x14\x91PQ\x16W\xD2S\x92U\x12PS\x12V\x91Q`j\x1B`D\x82\x01R`d\x90\xFD[a\x07\xDC6a\n\xF8V[a\x07\xE9\x81\x83\x85\x94\x95a\x0C-V[\x82;\x15\x91\x82\x15a\x07\xFDW[a\x01\xC4\x83a\r\xF7V[`@Qc\n\x85\xBD\x01`\xE1\x1B\x81R3`\x04\x82\x01R`\x01`\x01`\xA0\x1B\x03\x91\x82\x16`$\x82\x01R`D\x81\x01\x92\x90\x92R`\x80`d\x83\x01R_`\x84\x83\x01\x81\x90R\x91\x93` \x93P\x84\x92`\xA4\x92\x84\x92\x16Z\xF1\x80\x15a\x02xWa\x01\xC4\x91_\x91a\x08sW[P`\x01`\x01`\xE0\x1B\x03\x19\x16c\n\x85\xBD\x01`\xE1\x1B\x14\x82\x80a\x07\xF4V[a\x08\x8C\x91P` =` \x11a\x02qWa\x02c\x81\x83a\x0B2V[\x82a\x08XV[a\x01\xC4a\x08\x9E6a\n\xF8V[\x91a\x0C-V[`@6`\x03\x19\x01\x12a\x01\rWa\x08\xB8a\n\xCCV[`$5\x90\x81_R`\x02` R`\x01\x80`\xA0\x1B\x03`@_ T\x16\x90\x813\x14\x80\x15a\t8W[a\x08\xE5\x90a\x0B\xF0V[_\x83\x81R`\x04` R`@\x81 \x80T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x93\x90\x93\x16\x92\x83\x17\x90U\x90\x91\x90\x7F\x8C[\xE1\xE5\xEB\xEC}[\xD1OqB}\x1E\x84\xF3\xDD\x03\x14\xC0\xF7\xB2)\x1E[ \n\xC8\xC7\xC3\xB9%\x90\x80\xA4\0[P_\x82\x81R`\x05` \x90\x81R`@\x80\x83 3\x84R\x90\x91R\x90 T`\xFF\x16a\x08\xDCV[4a\x01\rW` 6`\x03\x19\x01\x12a\x01\rW`\x045_R`\x04` R` `\x01\x80`\xA0\x1B\x03`@_ T\x16`@Q\x90\x81R\xF3[4a\x01\rW_6`\x03\x19\x01\x12a\x01\rW`@Q__Ta\t\xAB\x81a\x0B\xB8V[\x80\x84R\x90`\x01\x81\x16\x90\x81\x15a\x03\xB7WP`\x01\x14a\t\xD2Wa\x03h\x83a\x03T\x81\x85\x03\x82a\x0B2V[_\x80\x80R_Q` a\x0E7_9_Q\x90_R\x93\x92P\x90[\x80\x82\x10a\n\x01WP\x90\x91P\x81\x01` \x01a\x03Ta\x03DV[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\t\xE9V[4a\x01\rW` 6`\x03\x19\x01\x12a\x01\rW`\x045\x90c\xFF\xFF\xFF\xFF`\xE0\x1B\x82\x16\x80\x92\x03a\x01\rW` \x91c\x01\xFF\xC9\xA7`\xE0\x1B\x81\x14\x90\x81\x15a\nuW[\x81\x15a\ndW[P\x15\x15\x81R\xF3[c[^\x13\x9F`\xE0\x1B\x14\x90P\x83a\n]V[c\x80\xACX\xCD`\xE0\x1B\x81\x14\x91Pa\nVV[_[\x83\x81\x10a\n\x97WPP_\x91\x01RV[\x81\x81\x01Q\x83\x82\x01R` \x01a\n\x88V[\x90` \x91a\n\xC0\x81Q\x80\x92\x81\x85R\x85\x80\x86\x01\x91\x01a\n\x86V[`\x1F\x01`\x1F\x19\x16\x01\x01\x90V[`\x045\x90`\x01`\x01`\xA0\x1B\x03\x82\x16\x82\x03a\x01\rWV[`$5\x90`\x01`\x01`\xA0\x1B\x03\x82\x16\x82\x03a\x01\rWV[``\x90`\x03\x19\x01\x12a\x01\rW`\x045`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x03a\x01\rW\x90`$5`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x03a\x01\rW\x90`D5\x90V[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x17a\x06\xA8W`@RV[\x92\x91\x92g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11a\x06\xA8W`@Q\x91a\x0B~`\x1F\x82\x01`\x1F\x19\x16` \x01\x84a\x0B2V[\x82\x94\x81\x84R\x81\x83\x01\x11a\x01\rW\x82\x81` \x93\x84_\x96\x017\x01\x01RV[\x90\x80`\x1F\x83\x01\x12\x15a\x01\rW\x81` a\x0B\xB5\x935\x91\x01a\x0BTV[\x90V[\x90`\x01\x82\x81\x1C\x92\x16\x80\x15a\x0B\xE6W[` \x83\x10\x14a\x0B\xD2WV[cNH{q`\xE0\x1B_R`\"`\x04R`$_\xFD[\x91`\x7F\x16\x91a\x0B\xC7V[\x15a\x0B\xF7WV[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x0E`$\x82\x01Rm\x13\x93\xD5\x17\xD0UU\x12\x13\xD4\x92V\x91Q`\x92\x1B`D\x82\x01R`d\x90\xFD[_\x83\x81R`\x02` R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x91\x82\x16\x92\x91\x16\x82\x03a\r\xA5W`\x01`\x01`\xA0\x1B\x03\x16\x90\x81\x15a\rlW\x803\x14\x80\x15a\rJW[\x80\x15a\r+W[a\x0Cy\x90a\x0B\xF0V[\x80_R`\x03` R`@_ \x80T\x80\x15a\r\x17W_\x19\x01\x90U\x81_R`\x03` R`@_ \x80T_\x19\x81\x14a\r\x17W`\x01\x01\x90U\x82_R`\x02` R`@_ \x82k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\xA0\x1B\x82T\x16\x17\x90U\x82_R`\x04` R`@_ k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\xA0\x1B\x81T\x16\x90U\x7F\xDD\xF2R\xAD\x1B\xE2\xC8\x9Bi\xC2\xB0h\xFC7\x8D\xAA\x95+\xA7\xF1c\xC4\xA1\x16(\xF5ZM\xF5#\xB3\xEF_\x80\xA4V[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[P_\x83\x81R`\x04` R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x163\x14a\x0CpV[P_\x81\x81R`\x05` \x90\x81R`@\x80\x83 3\x84R\x90\x91R\x90 T`\xFF\x16a\x0CiV[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x11`$\x82\x01Rp\x12S\x95\x90S\x12Q\x17\xD4\x91P\xD2T\x12QS\x95`z\x1B`D\x82\x01R`d\x90\xFD[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\n`$\x82\x01RiWRONG_FROM`\xB0\x1B`D\x82\x01R`d\x90\xFD[\x90\x81` \x91\x03\x12a\x01\rWQ`\x01`\x01`\xE0\x1B\x03\x19\x81\x16\x81\x03a\x01\rW\x90V[\x15a\r\xFEWV[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x10`$\x82\x01Ro\x15S\x94\xD0Q\x91W\xD4\x91P\xD2T\x12QS\x95`\x82\x1B`D\x82\x01R`d\x90\xFD\xFE)\r\xEC\xD9T\x8Bb\xA8\xD6\x03E\xA9\x888o\xC8K\xA6\xBC\x95H@\x08\xF66/\x93\x16\x0E\xF3\xE5c\xB1\x0E-Rv\x12\x07;&\xEE\xCD\xFDq~j2\x0C\xF4KJ\xFA\xC2\xB0s-\x9F\xCB\xE2\xB7\xFA\x0C\xF6\xA2dipfsX\"\x12 0[!\xF2\x14\xD5\x97p8\xB6+\xF3\xA6qj\x14\x98\xA1\x9F\x8Cr\xE0\xC7M\xEC\xFB\xB2$\x89\xF2\x0B\xD2dsolcC\0\x08\x1C\x003", - ); - /**Event with signature `Approval(address,address,uint256)` and selector `0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925`. - ```solidity - event Approval(address indexed _owner, address indexed _approved, uint256 indexed _tokenId); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Approval { - #[allow(missing_docs)] - pub _owner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _approved: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Approval { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - const SIGNATURE: &'static str = "Approval(address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 140u8, 91u8, 225u8, 229u8, 235u8, 236u8, 125u8, 91u8, 209u8, 79u8, 113u8, 66u8, - 125u8, 30u8, 132u8, 243u8, 221u8, 3u8, 20u8, 192u8, 247u8, 178u8, 41u8, 30u8, - 91u8, 32u8, 10u8, 200u8, 199u8, 195u8, 185u8, 37u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _owner: topics.1, _approved: topics.2, _tokenId: topics.3 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self._owner.clone(), - self._approved.clone(), - self._tokenId.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._owner, - ); - out[2usize] = ::encode_topic( - &self._approved, - ); - out[3usize] = as alloy_sol_types::EventTopic>::encode_topic(&self._tokenId); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Approval { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Approval> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Approval) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `ApprovalForAll(address,address,bool)` and selector `0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31`. - ```solidity - event ApprovalForAll(address indexed _owner, address indexed _operator, bool _approved); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct ApprovalForAll { - #[allow(missing_docs)] - pub _owner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _approved: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for ApprovalForAll { - type DataTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "ApprovalForAll(address,address,bool)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 23u8, 48u8, 126u8, 171u8, 57u8, 171u8, 97u8, 7u8, 232u8, 137u8, 152u8, 69u8, - 173u8, 61u8, 89u8, 189u8, 150u8, 83u8, 242u8, 0u8, 242u8, 32u8, 146u8, 4u8, - 137u8, 202u8, 43u8, 89u8, 55u8, 105u8, 108u8, 49u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _owner: topics.1, _operator: topics.2, _approved: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - (::tokenize( - &self._approved, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self._owner.clone(), self._operator.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._owner, - ); - out[2usize] = ::encode_topic( - &self._operator, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for ApprovalForAll { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&ApprovalForAll> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &ApprovalForAll) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `Transfer(address,address,uint256)` and selector `0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef`. - ```solidity - event Transfer(address indexed _from, address indexed _to, uint256 indexed _tokenId); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Transfer { - #[allow(missing_docs)] - pub _from: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _to: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub _tokenId: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Transfer { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - const SIGNATURE: &'static str = "Transfer(address,address,uint256)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 221u8, 242u8, 82u8, 173u8, 27u8, 226u8, 200u8, 155u8, 105u8, 194u8, 176u8, - 104u8, 252u8, 55u8, 141u8, 170u8, 149u8, 43u8, 167u8, 241u8, 99u8, 196u8, - 161u8, 22u8, 40u8, 245u8, 90u8, 77u8, 245u8, 35u8, 179u8, 239u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { _from: topics.1, _to: topics.2, _tokenId: topics.3 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - ( - Self::SIGNATURE_HASH.into(), - self._from.clone(), - self._to.clone(), - self._tokenId.clone(), - ) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self._from, - ); - out[2usize] = ::encode_topic( - &self._to, - ); - out[3usize] = as alloy_sol_types::EventTopic>::encode_topic(&self._tokenId); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Transfer { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Transfer> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Transfer) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Function with signature `approve(address,uint256)` and selector `0x095ea7b3`. - ```solidity - function approve(address spender, uint256 id) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct approveCall { - pub spender: alloy::sol_types::private::Address, - pub id: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`approve(address,uint256)`](approveCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct approveReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: approveCall) -> Self { - (value.spender, value.id) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for approveCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { spender: tuple.0, id: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: approveReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for approveReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for approveCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Uint<256>); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = approveReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "approve(address,uint256)"; - const SELECTOR: [u8; 4] = [9u8, 94u8, 167u8, 179u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.spender, - ), - as alloy_sol_types::SolType>::tokenize( - &self.id, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `balanceOf(address)` and selector `0x70a08231`. - ```solidity - function balanceOf(address owner) external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct balanceOfCall { - pub owner: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`balanceOf(address)`](balanceOfCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct balanceOfReturn { - pub _0: alloy::sol_types::private::primitives::aliases::U256, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: balanceOfCall) -> Self { - (value.owner,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for balanceOfCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { owner: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: balanceOfReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for balanceOfReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for balanceOfCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = balanceOfReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "balanceOf(address)"; - const SELECTOR: [u8; 4] = [112u8, 160u8, 130u8, 49u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.owner, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `getApproved(uint256)` and selector `0x081812fc`. - ```solidity - function getApproved(uint256 id) external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApprovedCall { - pub id: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`getApproved(uint256)`](getApprovedCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApprovedReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getApprovedCall) -> Self { - (value.id,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApprovedCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { id: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getApprovedReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApprovedReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getApprovedCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getApprovedReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getApproved(uint256)"; - const SELECTOR: [u8; 4] = [8u8, 24u8, 18u8, 252u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.id, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `initialize(string,string)` and selector `0x4cd88b76`. - ```solidity - function initialize(string memory name_, string memory symbol_) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct initializeCall { - pub name_: alloy::sol_types::private::String, - pub symbol_: alloy::sol_types::private::String, - } - ///Container type for the return parameters of the [`initialize(string,string)`](initializeCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct initializeReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::String, alloy::sol_types::sol_data::String); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::String, alloy::sol_types::private::String); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: initializeCall) -> Self { - (value.name_, value.symbol_) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for initializeCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { name_: tuple.0, symbol_: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: initializeReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for initializeReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for initializeCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::String, alloy::sol_types::sol_data::String); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = initializeReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "initialize(string,string)"; - const SELECTOR: [u8; 4] = [76u8, 216u8, 139u8, 118u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.name_, - ), - ::tokenize( - &self.symbol_, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `isApprovedForAll(address,address)` and selector `0xe985e9c5`. - ```solidity - function isApprovedForAll(address owner, address operator) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isApprovedForAllCall { - pub owner: alloy::sol_types::private::Address, - pub operator: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`isApprovedForAll(address,address)`](isApprovedForAllCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct isApprovedForAllReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = - (alloy::sol_types::private::Address, alloy::sol_types::private::Address); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isApprovedForAllCall) -> Self { - (value.owner, value.operator) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isApprovedForAllCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { owner: tuple.0, operator: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: isApprovedForAllReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for isApprovedForAllReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for isApprovedForAllCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Address); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = isApprovedForAllReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "isApprovedForAll(address,address)"; - const SELECTOR: [u8; 4] = [233u8, 133u8, 233u8, 197u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.owner, - ), - ::tokenize( - &self.operator, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `name()` and selector `0x06fdde03`. - ```solidity - function name() external view returns (string memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct nameCall {} - ///Container type for the return parameters of the [`name()`](nameCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct nameReturn { - pub _0: alloy::sol_types::private::String, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: nameCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for nameCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: nameReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for nameReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for nameCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = nameReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "name()"; - const SELECTOR: [u8; 4] = [6u8, 253u8, 222u8, 3u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `ownerOf(uint256)` and selector `0x6352211e`. - ```solidity - function ownerOf(uint256 id) external view returns (address owner); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ownerOfCall { - pub id: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`ownerOf(uint256)`](ownerOfCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ownerOfReturn { - pub owner: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: ownerOfCall) -> Self { - (value.id,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ownerOfCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { id: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: ownerOfReturn) -> Self { - (value.owner,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ownerOfReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { owner: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for ownerOfCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = ownerOfReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ownerOf(uint256)"; - const SELECTOR: [u8; 4] = [99u8, 82u8, 33u8, 30u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.id, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `safeTransferFrom(address,address,uint256)` and selector `0x42842e0e`. - ```solidity - function safeTransferFrom(address from, address to, uint256 id) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_0Call { - pub from: alloy::sol_types::private::Address, - pub to: alloy::sol_types::private::Address, - pub id: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`safeTransferFrom(address,address,uint256)`](safeTransferFrom_0Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_0Return {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_0Call) -> Self { - (value.from, value.to, value.id) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_0Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { from: tuple.0, to: tuple.1, id: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_0Return) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_0Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for safeTransferFrom_0Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = safeTransferFrom_0Return; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "safeTransferFrom(address,address,uint256)"; - const SELECTOR: [u8; 4] = [66u8, 132u8, 46u8, 14u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.from, - ), - ::tokenize( - &self.to, - ), - as alloy_sol_types::SolType>::tokenize( - &self.id, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `safeTransferFrom(address,address,uint256,bytes)` and selector `0xb88d4fde`. - ```solidity - function safeTransferFrom(address from, address to, uint256 id, bytes memory data) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_1Call { - pub from: alloy::sol_types::private::Address, - pub to: alloy::sol_types::private::Address, - pub id: alloy::sol_types::private::primitives::aliases::U256, - pub data: alloy::sol_types::private::Bytes, - } - ///Container type for the return parameters of the [`safeTransferFrom(address,address,uint256,bytes)`](safeTransferFrom_1Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct safeTransferFrom_1Return {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Bytes, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - alloy::sol_types::private::Bytes, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_1Call) -> Self { - (value.from, value.to, value.id, value.data) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_1Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { from: tuple.0, to: tuple.1, id: tuple.2, data: tuple.3 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: safeTransferFrom_1Return) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for safeTransferFrom_1Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for safeTransferFrom_1Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Bytes, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = safeTransferFrom_1Return; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "safeTransferFrom(address,address,uint256,bytes)"; - const SELECTOR: [u8; 4] = [184u8, 141u8, 79u8, 222u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.from, - ), - ::tokenize( - &self.to, - ), - as alloy_sol_types::SolType>::tokenize( - &self.id, - ), - ::tokenize( - &self.data, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `setApprovalForAll(address,bool)` and selector `0xa22cb465`. - ```solidity - function setApprovalForAll(address operator, bool approved) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setApprovalForAllCall { - pub operator: alloy::sol_types::private::Address, - pub approved: bool, - } - ///Container type for the return parameters of the [`setApprovalForAll(address,bool)`](setApprovalForAllCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setApprovalForAllReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Bool); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address, bool); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setApprovalForAllCall) -> Self { - (value.operator, value.approved) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setApprovalForAllCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0, approved: tuple.1 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setApprovalForAllReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setApprovalForAllReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setApprovalForAllCall { - type Parameters<'a> = - (alloy::sol_types::sol_data::Address, alloy::sol_types::sol_data::Bool); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setApprovalForAllReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setApprovalForAll(address,bool)"; - const SELECTOR: [u8; 4] = [162u8, 44u8, 180u8, 101u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - ::tokenize( - &self.approved, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `supportsInterface(bytes4)` and selector `0x01ffc9a7`. - ```solidity - function supportsInterface(bytes4 interfaceId) external view returns (bool); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct supportsInterfaceCall { - pub interfaceId: alloy::sol_types::private::FixedBytes<4>, - } - ///Container type for the return parameters of the [`supportsInterface(bytes4)`](supportsInterfaceCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct supportsInterfaceReturn { - pub _0: bool, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<4>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: supportsInterfaceCall) -> Self { - (value.interfaceId,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for supportsInterfaceCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { interfaceId: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: supportsInterfaceReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for supportsInterfaceReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for supportsInterfaceCall { - type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<4>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = supportsInterfaceReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "supportsInterface(bytes4)"; - const SELECTOR: [u8; 4] = [1u8, 255u8, 201u8, 167u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.interfaceId, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `symbol()` and selector `0x95d89b41`. - ```solidity - function symbol() external view returns (string memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct symbolCall {} - ///Container type for the return parameters of the [`symbol()`](symbolCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct symbolReturn { - pub _0: alloy::sol_types::private::String, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: symbolCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for symbolCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: symbolReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for symbolReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for symbolCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = symbolReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "symbol()"; - const SELECTOR: [u8; 4] = [149u8, 216u8, 155u8, 65u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `tokenURI(uint256)` and selector `0xc87b56dd`. - ```solidity - function tokenURI(uint256 id) external view returns (string memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct tokenURICall { - pub id: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`tokenURI(uint256)`](tokenURICall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct tokenURIReturn { - pub _0: alloy::sol_types::private::String, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: tokenURICall) -> Self { - (value.id,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for tokenURICall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { id: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: tokenURIReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for tokenURIReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for tokenURICall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = tokenURIReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "tokenURI(uint256)"; - const SELECTOR: [u8; 4] = [200u8, 123u8, 86u8, 221u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.id, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `transferFrom(address,address,uint256)` and selector `0x23b872dd`. - ```solidity - function transferFrom(address from, address to, uint256 id) external payable; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferFromCall { - pub from: alloy::sol_types::private::Address, - pub to: alloy::sol_types::private::Address, - pub id: alloy::sol_types::private::primitives::aliases::U256, - } - ///Container type for the return parameters of the [`transferFrom(address,address,uint256)`](transferFromCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferFromReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Address, - alloy::sol_types::private::primitives::aliases::U256, - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferFromCall) -> Self { - (value.from, value.to, value.id) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferFromCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { from: tuple.0, to: tuple.1, id: tuple.2 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferFromReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferFromReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for transferFromCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = transferFromReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "transferFrom(address,address,uint256)"; - const SELECTOR: [u8; 4] = [35u8, 184u8, 114u8, 221u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.from, - ), - ::tokenize( - &self.to, - ), - as alloy_sol_types::SolType>::tokenize( - &self.id, - ), - ) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`MockERC721`](self) function calls. - pub enum MockERC721Calls { - approve(approveCall), - balanceOf(balanceOfCall), - getApproved(getApprovedCall), - initialize(initializeCall), - isApprovedForAll(isApprovedForAllCall), - name(nameCall), - ownerOf(ownerOfCall), - safeTransferFrom_0(safeTransferFrom_0Call), - safeTransferFrom_1(safeTransferFrom_1Call), - setApprovalForAll(setApprovalForAllCall), - supportsInterface(supportsInterfaceCall), - symbol(symbolCall), - tokenURI(tokenURICall), - transferFrom(transferFromCall), - } - #[automatically_derived] - impl MockERC721Calls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [1u8, 255u8, 201u8, 167u8], - [6u8, 253u8, 222u8, 3u8], - [8u8, 24u8, 18u8, 252u8], - [9u8, 94u8, 167u8, 179u8], - [35u8, 184u8, 114u8, 221u8], - [66u8, 132u8, 46u8, 14u8], - [76u8, 216u8, 139u8, 118u8], - [99u8, 82u8, 33u8, 30u8], - [112u8, 160u8, 130u8, 49u8], - [149u8, 216u8, 155u8, 65u8], - [162u8, 44u8, 180u8, 101u8], - [184u8, 141u8, 79u8, 222u8], - [200u8, 123u8, 86u8, 221u8], - [233u8, 133u8, 233u8, 197u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for MockERC721Calls { - const NAME: &'static str = "MockERC721Calls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 14usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::approve(_) => ::SELECTOR, - Self::balanceOf(_) => ::SELECTOR, - Self::getApproved(_) => ::SELECTOR, - Self::initialize(_) => ::SELECTOR, - Self::isApprovedForAll(_) => { - ::SELECTOR - } - Self::name(_) => ::SELECTOR, - Self::ownerOf(_) => ::SELECTOR, - Self::safeTransferFrom_0(_) => { - ::SELECTOR - } - Self::safeTransferFrom_1(_) => { - ::SELECTOR - } - Self::setApprovalForAll(_) => { - ::SELECTOR - } - Self::supportsInterface(_) => { - ::SELECTOR - } - Self::symbol(_) => ::SELECTOR, - Self::tokenURI(_) => ::SELECTOR, - Self::transferFrom(_) => ::SELECTOR, - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn(&[u8], bool) -> alloy_sol_types::Result] = &[ - { - fn supportsInterface( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(MockERC721Calls::supportsInterface) - } - supportsInterface - }, - { - fn name( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC721Calls::name) - } - name - }, - { - fn getApproved( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(MockERC721Calls::getApproved) - } - getApproved - }, - { - fn approve( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC721Calls::approve) - } - approve - }, - { - fn transferFrom( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(MockERC721Calls::transferFrom) - } - transferFrom - }, - { - fn safeTransferFrom_0( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(MockERC721Calls::safeTransferFrom_0) - } - safeTransferFrom_0 - }, - { - fn initialize( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC721Calls::initialize) - } - initialize - }, - { - fn ownerOf( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC721Calls::ownerOf) - } - ownerOf - }, - { - fn balanceOf( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC721Calls::balanceOf) - } - balanceOf - }, - { - fn symbol( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC721Calls::symbol) - } - symbol - }, - { - fn setApprovalForAll( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(MockERC721Calls::setApprovalForAll) - } - setApprovalForAll - }, - { - fn safeTransferFrom_1( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(MockERC721Calls::safeTransferFrom_1) - } - safeTransferFrom_1 - }, - { - fn tokenURI( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(MockERC721Calls::tokenURI) - } - tokenURI - }, - { - fn isApprovedForAll( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(MockERC721Calls::isApprovedForAll) - } - isApprovedForAll - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::approve(inner) => { - ::abi_encoded_size(inner) - } - Self::balanceOf(inner) => { - ::abi_encoded_size(inner) - } - Self::getApproved(inner) => { - ::abi_encoded_size(inner) - } - Self::initialize(inner) => { - ::abi_encoded_size(inner) - } - Self::isApprovedForAll(inner) => { - ::abi_encoded_size(inner) - } - Self::name(inner) => { - ::abi_encoded_size(inner) - } - Self::ownerOf(inner) => { - ::abi_encoded_size(inner) - } - Self::safeTransferFrom_0(inner) => { - ::abi_encoded_size(inner) - } - Self::safeTransferFrom_1(inner) => { - ::abi_encoded_size(inner) - } - Self::setApprovalForAll(inner) => { - ::abi_encoded_size(inner) - } - Self::supportsInterface(inner) => { - ::abi_encoded_size(inner) - } - Self::symbol(inner) => { - ::abi_encoded_size(inner) - } - Self::tokenURI(inner) => { - ::abi_encoded_size(inner) - } - Self::transferFrom(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::approve(inner) => { - ::abi_encode_raw(inner, out) - } - Self::balanceOf(inner) => { - ::abi_encode_raw(inner, out) - } - Self::getApproved(inner) => { - ::abi_encode_raw(inner, out) - } - Self::initialize(inner) => { - ::abi_encode_raw(inner, out) - } - Self::isApprovedForAll(inner) => { - ::abi_encode_raw(inner, out) - } - Self::name(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ownerOf(inner) => { - ::abi_encode_raw(inner, out) - } - Self::safeTransferFrom_0(inner) => { - ::abi_encode_raw(inner, out) - } - Self::safeTransferFrom_1(inner) => { - ::abi_encode_raw(inner, out) - } - Self::setApprovalForAll(inner) => { - ::abi_encode_raw(inner, out) - } - Self::supportsInterface(inner) => { - ::abi_encode_raw(inner, out) - } - Self::symbol(inner) => { - ::abi_encode_raw(inner, out) - } - Self::tokenURI(inner) => { - ::abi_encode_raw(inner, out) - } - Self::transferFrom(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - ///Container for all the [`MockERC721`](self) events. - pub enum MockERC721Events { - Approval(Approval), - ApprovalForAll(ApprovalForAll), - Transfer(Transfer), - } - #[automatically_derived] - impl MockERC721Events { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[ - [ - 23u8, 48u8, 126u8, 171u8, 57u8, 171u8, 97u8, 7u8, 232u8, 137u8, 152u8, 69u8, 173u8, - 61u8, 89u8, 189u8, 150u8, 83u8, 242u8, 0u8, 242u8, 32u8, 146u8, 4u8, 137u8, 202u8, - 43u8, 89u8, 55u8, 105u8, 108u8, 49u8, - ], - [ - 140u8, 91u8, 225u8, 229u8, 235u8, 236u8, 125u8, 91u8, 209u8, 79u8, 113u8, 66u8, - 125u8, 30u8, 132u8, 243u8, 221u8, 3u8, 20u8, 192u8, 247u8, 178u8, 41u8, 30u8, 91u8, - 32u8, 10u8, 200u8, 199u8, 195u8, 185u8, 37u8, - ], - [ - 221u8, 242u8, 82u8, 173u8, 27u8, 226u8, 200u8, 155u8, 105u8, 194u8, 176u8, 104u8, - 252u8, 55u8, 141u8, 170u8, 149u8, 43u8, 167u8, 241u8, 99u8, 196u8, 161u8, 22u8, - 40u8, 245u8, 90u8, 77u8, 245u8, 35u8, 179u8, 239u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for MockERC721Events { - const NAME: &'static str = "MockERC721Events"; - const COUNT: usize = 3usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log(topics, data, validate) - .map(Self::Approval) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::ApprovalForAll) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log(topics, data, validate) - .map(Self::Transfer) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for MockERC721Events { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::Approval(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner), - Self::ApprovalForAll(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::Transfer(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner), - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::Approval(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::ApprovalForAll(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::Transfer(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`MockERC721`](self) contract instance. - - See the [wrapper's documentation](`MockERC721Instance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> MockERC721Instance { - MockERC721Instance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - MockERC721Instance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - MockERC721Instance::::deploy_builder(provider) - } - /**A [`MockERC721`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`MockERC721`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct MockERC721Instance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for MockERC721Instance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("MockERC721Instance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > MockERC721Instance - { - /**Creates a new wrapper around an on-chain [`MockERC721`](self) contract instance. - - See the [wrapper's documentation](`MockERC721Instance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy(provider: P) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl MockERC721Instance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> MockERC721Instance { - MockERC721Instance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > MockERC721Instance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`approve`] function. - pub fn approve( - &self, - spender: alloy::sol_types::private::Address, - id: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&approveCall { spender, id }) - } - ///Creates a new call builder for the [`balanceOf`] function. - pub fn balanceOf( - &self, - owner: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&balanceOfCall { owner }) - } - ///Creates a new call builder for the [`getApproved`] function. - pub fn getApproved( - &self, - id: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getApprovedCall { id }) - } - ///Creates a new call builder for the [`initialize`] function. - pub fn initialize( - &self, - name_: alloy::sol_types::private::String, - symbol_: alloy::sol_types::private::String, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&initializeCall { name_, symbol_ }) - } - ///Creates a new call builder for the [`isApprovedForAll`] function. - pub fn isApprovedForAll( - &self, - owner: alloy::sol_types::private::Address, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&isApprovedForAllCall { owner, operator }) - } - ///Creates a new call builder for the [`name`] function. - pub fn name(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&nameCall {}) - } - ///Creates a new call builder for the [`ownerOf`] function. - pub fn ownerOf( - &self, - id: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&ownerOfCall { id }) - } - ///Creates a new call builder for the [`safeTransferFrom_0`] function. - pub fn safeTransferFrom_0( - &self, - from: alloy::sol_types::private::Address, - to: alloy::sol_types::private::Address, - id: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&safeTransferFrom_0Call { from, to, id }) - } - ///Creates a new call builder for the [`safeTransferFrom_1`] function. - pub fn safeTransferFrom_1( - &self, - from: alloy::sol_types::private::Address, - to: alloy::sol_types::private::Address, - id: alloy::sol_types::private::primitives::aliases::U256, - data: alloy::sol_types::private::Bytes, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&safeTransferFrom_1Call { from, to, id, data }) - } - ///Creates a new call builder for the [`setApprovalForAll`] function. - pub fn setApprovalForAll( - &self, - operator: alloy::sol_types::private::Address, - approved: bool, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setApprovalForAllCall { operator, approved }) - } - ///Creates a new call builder for the [`supportsInterface`] function. - pub fn supportsInterface( - &self, - interfaceId: alloy::sol_types::private::FixedBytes<4>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&supportsInterfaceCall { interfaceId }) - } - ///Creates a new call builder for the [`symbol`] function. - pub fn symbol(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&symbolCall {}) - } - ///Creates a new call builder for the [`tokenURI`] function. - pub fn tokenURI( - &self, - id: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&tokenURICall { id }) - } - ///Creates a new call builder for the [`transferFrom`] function. - pub fn transferFrom( - &self, - from: alloy::sol_types::private::Address, - to: alloy::sol_types::private::Address, - id: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&transferFromCall { from, to, id }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > MockERC721Instance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`Approval`] event. - pub fn Approval_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`ApprovalForAll`] event. - pub fn ApprovalForAll_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`Transfer`] event. - pub fn Transfer_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/ownableupgradeable.rs b/crates/bindings/src/ownableupgradeable.rs deleted file mode 100644 index a9955275..00000000 --- a/crates/bindings/src/ownableupgradeable.rs +++ /dev/null @@ -1,1030 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface OwnableUpgradeable { - event Initialized(uint8 version); - event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); - - function owner() external view returns (address); - function renounceOwnership() external; - function transferOwnership(address newOwner) external; -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "owner", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "renounceOwnership", - "inputs": [], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "transferOwnership", - "inputs": [ - { - "name": "newOwner", - "type": "address", - "internalType": "address" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "event", - "name": "Initialized", - "inputs": [ - { - "name": "version", - "type": "uint8", - "indexed": false, - "internalType": "uint8" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OwnershipTransferred", - "inputs": [ - { - "name": "previousOwner", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "newOwner", - "type": "address", - "indexed": true, - "internalType": "address" - } - ], - "anonymous": false - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod OwnableUpgradeable { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"", - ); - /**Event with signature `Initialized(uint8)` and selector `0x7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498`. - ```solidity - event Initialized(uint8 version); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct Initialized { - #[allow(missing_docs)] - pub version: u8, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for Initialized { - type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<8>,); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "Initialized(uint8)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 127u8, 38u8, 184u8, 63u8, 249u8, 110u8, 31u8, 43u8, 106u8, 104u8, 47u8, 19u8, - 56u8, 82u8, 246u8, 121u8, 138u8, 9u8, 196u8, 101u8, 218u8, 149u8, 146u8, 20u8, - 96u8, 206u8, 251u8, 56u8, 71u8, 64u8, 36u8, 152u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { version: data.0 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - ( as alloy_sol_types::SolType>::tokenize( - &self.version, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(),) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for Initialized { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&Initialized> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &Initialized) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Event with signature `OwnershipTransferred(address,address)` and selector `0x8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0`. - ```solidity - event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - #[derive(Clone)] - pub struct OwnershipTransferred { - #[allow(missing_docs)] - pub previousOwner: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub newOwner: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - #[automatically_derived] - impl alloy_sol_types::SolEvent for OwnershipTransferred { - type DataTuple<'a> = (); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = ( - alloy_sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Address, - ); - const SIGNATURE: &'static str = "OwnershipTransferred(address,address)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8, 31u8, - 208u8, 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8, 218u8, - 175u8, 227u8, 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { previousOwner: topics.1, newOwner: topics.2 } - } - #[inline] - fn check_signature( - topics: &::RustType, - ) -> alloy_sol_types::Result<()> { - if topics.0 != Self::SIGNATURE_HASH { - return Err(alloy_sol_types::Error::invalid_event_signature_hash( - Self::SIGNATURE, - topics.0, - Self::SIGNATURE_HASH, - )); - } - Ok(()) - } - #[inline] - fn tokenize_body(&self) -> Self::DataToken<'_> { - () - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH.into(), self.previousOwner.clone(), self.newOwner.clone()) - } - #[inline] - fn encode_topics_raw( - &self, - out: &mut [alloy_sol_types::abi::token::WordToken], - ) -> alloy_sol_types::Result<()> { - if out.len() < ::COUNT { - return Err(alloy_sol_types::Error::Overrun); - } - out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH); - out[1usize] = ::encode_topic( - &self.previousOwner, - ); - out[2usize] = ::encode_topic( - &self.newOwner, - ); - Ok(()) - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OwnershipTransferred { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - From::from(self) - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - From::from(&self) - } - } - #[automatically_derived] - impl From<&OwnershipTransferred> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OwnershipTransferred) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Function with signature `owner()` and selector `0x8da5cb5b`. - ```solidity - function owner() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ownerCall {} - ///Container type for the return parameters of the [`owner()`](ownerCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ownerReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: ownerCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ownerCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: ownerReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ownerReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for ownerCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = ownerReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "owner()"; - const SELECTOR: [u8; 4] = [141u8, 165u8, 203u8, 91u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `renounceOwnership()` and selector `0x715018a6`. - ```solidity - function renounceOwnership() external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct renounceOwnershipCall {} - ///Container type for the return parameters of the [`renounceOwnership()`](renounceOwnershipCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct renounceOwnershipReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: renounceOwnershipCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for renounceOwnershipCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: renounceOwnershipReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for renounceOwnershipReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for renounceOwnershipCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = renounceOwnershipReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "renounceOwnership()"; - const SELECTOR: [u8; 4] = [113u8, 80u8, 24u8, 166u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - /**Function with signature `transferOwnership(address)` and selector `0xf2fde38b`. - ```solidity - function transferOwnership(address newOwner) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferOwnershipCall { - pub newOwner: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`transferOwnership(address)`](transferOwnershipCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct transferOwnershipReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferOwnershipCall) -> Self { - (value.newOwner,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferOwnershipCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { newOwner: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: transferOwnershipReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for transferOwnershipReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for transferOwnershipCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = transferOwnershipReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "transferOwnership(address)"; - const SELECTOR: [u8; 4] = [242u8, 253u8, 227u8, 139u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.newOwner, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`OwnableUpgradeable`](self) function calls. - pub enum OwnableUpgradeableCalls { - owner(ownerCall), - renounceOwnership(renounceOwnershipCall), - transferOwnership(transferOwnershipCall), - } - #[automatically_derived] - impl OwnableUpgradeableCalls { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [113u8, 80u8, 24u8, 166u8], - [141u8, 165u8, 203u8, 91u8], - [242u8, 253u8, 227u8, 139u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for OwnableUpgradeableCalls { - const NAME: &'static str = "OwnableUpgradeableCalls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 3usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::owner(_) => ::SELECTOR, - Self::renounceOwnership(_) => { - ::SELECTOR - } - Self::transferOwnership(_) => { - ::SELECTOR - } - } - } - #[inline] - fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { - Self::SELECTORS.get(i).copied() - } - #[inline] - fn valid_selector(selector: [u8; 4]) -> bool { - Self::SELECTORS.binary_search(&selector).is_ok() - } - #[inline] - #[allow(non_snake_case)] - fn abi_decode_raw( - selector: [u8; 4], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn( - &[u8], - bool, - ) - -> alloy_sol_types::Result] = &[ - { - fn renounceOwnership( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(OwnableUpgradeableCalls::renounceOwnership) - } - renounceOwnership - }, - { - fn owner( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(OwnableUpgradeableCalls::owner) - } - owner - }, - { - fn transferOwnership( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(OwnableUpgradeableCalls::transferOwnership) - } - transferOwnership - }, - ]; - let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { - return Err(alloy_sol_types::Error::unknown_selector( - ::NAME, - selector, - )); - }; - DECODE_SHIMS[idx](data, validate) - } - #[inline] - fn abi_encoded_size(&self) -> usize { - match self { - Self::owner(inner) => { - ::abi_encoded_size(inner) - } - Self::renounceOwnership(inner) => { - ::abi_encoded_size(inner) - } - Self::transferOwnership(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::owner(inner) => { - ::abi_encode_raw(inner, out) - } - Self::renounceOwnership(inner) => { - ::abi_encode_raw(inner, out) - } - Self::transferOwnership(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - ///Container for all the [`OwnableUpgradeable`](self) events. - pub enum OwnableUpgradeableEvents { - Initialized(Initialized), - OwnershipTransferred(OwnershipTransferred), - } - #[automatically_derived] - impl OwnableUpgradeableEvents { - /// All the selectors of this enum. - /// - /// Note that the selectors might not be in the same order as the variants. - /// No guarantees are made about the order of the selectors. - /// - /// Prefer using `SolInterface` methods instead. - pub const SELECTORS: &'static [[u8; 32usize]] = &[ - [ - 127u8, 38u8, 184u8, 63u8, 249u8, 110u8, 31u8, 43u8, 106u8, 104u8, 47u8, 19u8, 56u8, - 82u8, 246u8, 121u8, 138u8, 9u8, 196u8, 101u8, 218u8, 149u8, 146u8, 20u8, 96u8, - 206u8, 251u8, 56u8, 71u8, 64u8, 36u8, 152u8, - ], - [ - 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8, 31u8, 208u8, - 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8, 218u8, 175u8, 227u8, - 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for OwnableUpgradeableEvents { - const NAME: &'static str = "OwnableUpgradeableEvents"; - const COUNT: usize = 2usize; - fn decode_raw_log( - topics: &[alloy_sol_types::Word], - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - match topics.first().copied() { - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::Initialized) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OwnershipTransferred) - } - _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog { - name: ::NAME, - log: alloy_sol_types::private::Box::new( - alloy_sol_types::private::LogData::new_unchecked( - topics.to_vec(), - data.to_vec().into(), - ), - ), - }), - } - } - } - #[automatically_derived] - impl alloy_sol_types::private::IntoLogData for OwnableUpgradeableEvents { - fn to_log_data(&self) -> alloy_sol_types::private::LogData { - match self { - Self::Initialized(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OwnershipTransferred(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - } - } - fn into_log_data(self) -> alloy_sol_types::private::LogData { - match self { - Self::Initialized(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OwnershipTransferred(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`OwnableUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`OwnableUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> OwnableUpgradeableInstance { - OwnableUpgradeableInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - OwnableUpgradeableInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - OwnableUpgradeableInstance::::deploy_builder(provider) - } - /**A [`OwnableUpgradeable`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`OwnableUpgradeable`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct OwnableUpgradeableInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for OwnableUpgradeableInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("OwnableUpgradeableInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > OwnableUpgradeableInstance - { - /**Creates a new wrapper around an on-chain [`OwnableUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`OwnableUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl OwnableUpgradeableInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> OwnableUpgradeableInstance { - OwnableUpgradeableInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > OwnableUpgradeableInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - ///Creates a new call builder for the [`owner`] function. - pub fn owner(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&ownerCall {}) - } - ///Creates a new call builder for the [`renounceOwnership`] function. - pub fn renounceOwnership( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&renounceOwnershipCall {}) - } - ///Creates a new call builder for the [`transferOwnership`] function. - pub fn transferOwnership( - &self, - newOwner: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&transferOwnershipCall { newOwner }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > OwnableUpgradeableInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - ///Creates a new event filter for the [`Initialized`] event. - pub fn Initialized_filter(&self) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OwnershipTransferred`] event. - pub fn OwnershipTransferred_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/crates/bindings/src/ecdsaupgradeable.rs b/crates/bindings/src/panic.rs similarity index 77% rename from crates/bindings/src/ecdsaupgradeable.rs rename to crates/bindings/src/panic.rs index feab24ef..ed591618 100644 --- a/crates/bindings/src/ecdsaupgradeable.rs +++ b/crates/bindings/src/panic.rs @@ -2,7 +2,7 @@ Generated by the following Solidity interface... ```solidity -interface ECDSAUpgradeable {} +interface Panic {} ``` ...which was generated by the following JSON ABI: @@ -16,33 +16,33 @@ interface ECDSAUpgradeable {} clippy::style, clippy::empty_structs_with_brackets )] -pub mod ECDSAUpgradeable { +pub mod Panic { use super::*; use alloy::sol_types as alloy_sol_types; /// The creation / init bytecode of the contract. /// /// ```text - ///0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea26469706673582212204c410ed829a7243ff10887e6a1ebcf797a08d1eea9bd4462bfed820a0d1a73b864736f6c634300081c0033 + ///0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea264697066735822122051f0862ea370d7a95650bf5454a29556978590d73743888396112da2dbac5a0964736f6c634300081c0033 /// ``` #[rustfmt::skip] #[allow(clippy::all)] pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 LA\x0E\xD8)\xA7$?\xF1\x08\x87\xE6\xA1\xEB\xCFyz\x08\xD1\xEE\xA9\xBDDb\xBF\xED\x82\n\r\x1As\xB8dsolcC\0\x08\x1C\x003", + b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 Q\xF0\x86.\xA3p\xD7\xA9VP\xBFTT\xA2\x95V\x97\x85\x90\xD77C\x88\x83\x96\x11-\xA2\xDB\xACZ\tdsolcC\0\x08\x1C\x003", ); /// The runtime bytecode of the contract, as deployed on the network. /// /// ```text - ///0x5f80fdfea26469706673582212204c410ed829a7243ff10887e6a1ebcf797a08d1eea9bd4462bfed820a0d1a73b864736f6c634300081c0033 + ///0x5f80fdfea264697066735822122051f0862ea370d7a95650bf5454a29556978590d73743888396112da2dbac5a0964736f6c634300081c0033 /// ``` #[rustfmt::skip] #[allow(clippy::all)] pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"_\x80\xFD\xFE\xA2dipfsX\"\x12 LA\x0E\xD8)\xA7$?\xF1\x08\x87\xE6\xA1\xEB\xCFyz\x08\xD1\xEE\xA9\xBDDb\xBF\xED\x82\n\r\x1As\xB8dsolcC\0\x08\x1C\x003", + b"_\x80\xFD\xFE\xA2dipfsX\"\x12 Q\xF0\x86.\xA3p\xD7\xA9VP\xBFTT\xA2\x95V\x97\x85\x90\xD77C\x88\x83\x96\x11-\xA2\xDB\xACZ\tdsolcC\0\x08\x1C\x003", ); use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`ECDSAUpgradeable`](self) contract instance. + /**Creates a new wrapper around an on-chain [`Panic`](self) contract instance. - See the [wrapper's documentation](`ECDSAUpgradeableInstance`) for more details.*/ + See the [wrapper's documentation](`PanicInstance`) for more details.*/ #[inline] pub const fn new< T: alloy_contract::private::Transport + ::core::clone::Clone, @@ -51,8 +51,8 @@ pub mod ECDSAUpgradeable { >( address: alloy_sol_types::private::Address, provider: P, - ) -> ECDSAUpgradeableInstance { - ECDSAUpgradeableInstance::::new(address, provider) + ) -> PanicInstance { + PanicInstance::::new(address, provider) } /**Deploys this contract using the given `provider` and constructor arguments, if any. @@ -66,9 +66,8 @@ pub mod ECDSAUpgradeable { N: alloy_contract::private::Network, >( provider: P, - ) -> impl ::core::future::Future>> - { - ECDSAUpgradeableInstance::::deploy(provider) + ) -> impl ::core::future::Future>> { + PanicInstance::::deploy(provider) } /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` and constructor arguments, if any. @@ -83,12 +82,12 @@ pub mod ECDSAUpgradeable { >( provider: P, ) -> alloy_contract::RawCallBuilder { - ECDSAUpgradeableInstance::::deploy_builder(provider) + PanicInstance::::deploy_builder(provider) } - /**A [`ECDSAUpgradeable`](self) instance. + /**A [`Panic`](self) instance. Contains type-safe methods for interacting with an on-chain instance of the - [`ECDSAUpgradeable`](self) contract located at a given `address`, using a given + [`Panic`](self) contract located at a given `address`, using a given provider `P`. If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) @@ -97,16 +96,16 @@ pub mod ECDSAUpgradeable { See the [module-level documentation](self) for all the available methods.*/ #[derive(Clone)] - pub struct ECDSAUpgradeableInstance { + pub struct PanicInstance { address: alloy_sol_types::private::Address, provider: P, _network_transport: ::core::marker::PhantomData<(N, T)>, } #[automatically_derived] - impl ::core::fmt::Debug for ECDSAUpgradeableInstance { + impl ::core::fmt::Debug for PanicInstance { #[inline] fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("ECDSAUpgradeableInstance").field(&self.address).finish() + f.debug_tuple("PanicInstance").field(&self.address).finish() } } /// Instantiation and getters/setters. @@ -115,11 +114,11 @@ pub mod ECDSAUpgradeable { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > ECDSAUpgradeableInstance + > PanicInstance { - /**Creates a new wrapper around an on-chain [`ECDSAUpgradeable`](self) contract instance. + /**Creates a new wrapper around an on-chain [`Panic`](self) contract instance. - See the [wrapper's documentation](`ECDSAUpgradeableInstance`) for more details.*/ + See the [wrapper's documentation](`PanicInstance`) for more details.*/ #[inline] pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { Self { address, provider, _network_transport: ::core::marker::PhantomData } @@ -130,9 +129,7 @@ pub mod ECDSAUpgradeable { For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { + pub async fn deploy(provider: P) -> alloy_contract::Result> { let call_builder = Self::deploy_builder(provider); let contract_address = call_builder.deploy().await?; Ok(Self::new(contract_address, call_builder.provider)) @@ -170,11 +167,11 @@ pub mod ECDSAUpgradeable { &self.provider } } - impl ECDSAUpgradeableInstance { + impl PanicInstance { /// Clones the provider and returns a new instance with the cloned provider. #[inline] - pub fn with_cloned_provider(self) -> ECDSAUpgradeableInstance { - ECDSAUpgradeableInstance { + pub fn with_cloned_provider(self) -> PanicInstance { + PanicInstance { address: self.address, provider: ::core::clone::Clone::clone(&self.provider), _network_transport: ::core::marker::PhantomData, @@ -187,7 +184,7 @@ pub mod ECDSAUpgradeable { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > ECDSAUpgradeableInstance + > PanicInstance { /// Creates a new call builder using this contract instance's provider and address. /// @@ -206,7 +203,7 @@ pub mod ECDSAUpgradeable { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > ECDSAUpgradeableInstance + > PanicInstance { /// Creates a new event filter using this contract instance's provider and address. /// diff --git a/crates/bindings/src/safecast.rs b/crates/bindings/src/safecast.rs new file mode 100644 index 00000000..0374cd46 --- /dev/null +++ b/crates/bindings/src/safecast.rs @@ -0,0 +1,699 @@ +/** + +Generated by the following Solidity interface... +```solidity +interface SafeCast { + error SafeCastOverflowedIntDowncast(uint8 bits, int256 value); + error SafeCastOverflowedIntToUint(int256 value); + error SafeCastOverflowedUintDowncast(uint8 bits, uint256 value); + error SafeCastOverflowedUintToInt(uint256 value); +} +``` + +...which was generated by the following JSON ABI: +```json +[ + { + "type": "error", + "name": "SafeCastOverflowedIntDowncast", + "inputs": [ + { + "name": "bits", + "type": "uint8", + "internalType": "uint8" + }, + { + "name": "value", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "SafeCastOverflowedIntToUint", + "inputs": [ + { + "name": "value", + "type": "int256", + "internalType": "int256" + } + ] + }, + { + "type": "error", + "name": "SafeCastOverflowedUintDowncast", + "inputs": [ + { + "name": "bits", + "type": "uint8", + "internalType": "uint8" + }, + { + "name": "value", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "SafeCastOverflowedUintToInt", + "inputs": [ + { + "name": "value", + "type": "uint256", + "internalType": "uint256" + } + ] + } +] +```*/ +#[allow( + non_camel_case_types, + non_snake_case, + clippy::pub_underscore_fields, + clippy::style, + clippy::empty_structs_with_brackets +)] +pub mod SafeCast { + use super::*; + use alloy::sol_types as alloy_sol_types; + /// The creation / init bytecode of the contract. + /// + /// ```text + ///0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea2646970667358221220684448e2367cd50da4dd079a930b66082eaf29e724e5ae091b7198e14a315af664736f6c634300081c0033 + /// ``` + #[rustfmt::skip] + #[allow(clippy::all)] + pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( + b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 hDH\xE26|\xD5\r\xA4\xDD\x07\x9A\x93\x0Bf\x08.\xAF)\xE7$\xE5\xAE\t\x1Bq\x98\xE1J1Z\xF6dsolcC\0\x08\x1C\x003", + ); + /// The runtime bytecode of the contract, as deployed on the network. + /// + /// ```text + ///0x5f80fdfea2646970667358221220684448e2367cd50da4dd079a930b66082eaf29e724e5ae091b7198e14a315af664736f6c634300081c0033 + /// ``` + #[rustfmt::skip] + #[allow(clippy::all)] + pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( + b"_\x80\xFD\xFE\xA2dipfsX\"\x12 hDH\xE26|\xD5\r\xA4\xDD\x07\x9A\x93\x0Bf\x08.\xAF)\xE7$\xE5\xAE\t\x1Bq\x98\xE1J1Z\xF6dsolcC\0\x08\x1C\x003", + ); + /**Custom error with signature `SafeCastOverflowedIntDowncast(uint8,int256)` and selector `0x327269a7`. + ```solidity + error SafeCastOverflowedIntDowncast(uint8 bits, int256 value); + ```*/ + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] + #[derive(Clone)] + pub struct SafeCastOverflowedIntDowncast { + pub bits: u8, + pub value: alloy::sol_types::private::primitives::aliases::I256, + } + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] + const _: () = { + use alloy::sol_types as alloy_sol_types; + #[doc(hidden)] + type UnderlyingSolTuple<'a> = + (alloy::sol_types::sol_data::Uint<8>, alloy::sol_types::sol_data::Int<256>); + #[doc(hidden)] + type UnderlyingRustTuple<'a> = (u8, alloy::sol_types::private::primitives::aliases::I256); + #[cfg(test)] + #[allow(dead_code, unreachable_patterns)] + fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { + match _t { + alloy_sol_types::private::AssertTypeEq::< + ::RustType, + >(_) => {} + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: SafeCastOverflowedIntDowncast) -> Self { + (value.bits, value.value) + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From> for SafeCastOverflowedIntDowncast { + fn from(tuple: UnderlyingRustTuple<'_>) -> Self { + Self { bits: tuple.0, value: tuple.1 } + } + } + #[automatically_derived] + impl alloy_sol_types::SolError for SafeCastOverflowedIntDowncast { + type Parameters<'a> = UnderlyingSolTuple<'a>; + type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; + const SIGNATURE: &'static str = "SafeCastOverflowedIntDowncast(uint8,int256)"; + const SELECTOR: [u8; 4] = [50u8, 114u8, 105u8, 167u8]; + #[inline] + fn new<'a>( + tuple: as alloy_sol_types::SolType>::RustType, + ) -> Self { + tuple.into() + } + #[inline] + fn tokenize(&self) -> Self::Token<'_> { + ( + as alloy_sol_types::SolType>::tokenize( + &self.bits, + ), + as alloy_sol_types::SolType>::tokenize( + &self.value, + ), + ) + } + } + }; + /**Custom error with signature `SafeCastOverflowedIntToUint(int256)` and selector `0xa8ce4432`. + ```solidity + error SafeCastOverflowedIntToUint(int256 value); + ```*/ + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] + #[derive(Clone)] + pub struct SafeCastOverflowedIntToUint { + pub value: alloy::sol_types::private::primitives::aliases::I256, + } + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] + const _: () = { + use alloy::sol_types as alloy_sol_types; + #[doc(hidden)] + type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Int<256>,); + #[doc(hidden)] + type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::I256,); + #[cfg(test)] + #[allow(dead_code, unreachable_patterns)] + fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { + match _t { + alloy_sol_types::private::AssertTypeEq::< + ::RustType, + >(_) => {} + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: SafeCastOverflowedIntToUint) -> Self { + (value.value,) + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From> for SafeCastOverflowedIntToUint { + fn from(tuple: UnderlyingRustTuple<'_>) -> Self { + Self { value: tuple.0 } + } + } + #[automatically_derived] + impl alloy_sol_types::SolError for SafeCastOverflowedIntToUint { + type Parameters<'a> = UnderlyingSolTuple<'a>; + type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; + const SIGNATURE: &'static str = "SafeCastOverflowedIntToUint(int256)"; + const SELECTOR: [u8; 4] = [168u8, 206u8, 68u8, 50u8]; + #[inline] + fn new<'a>( + tuple: as alloy_sol_types::SolType>::RustType, + ) -> Self { + tuple.into() + } + #[inline] + fn tokenize(&self) -> Self::Token<'_> { + ( as alloy_sol_types::SolType>::tokenize( + &self.value, + ),) + } + } + }; + /**Custom error with signature `SafeCastOverflowedUintDowncast(uint8,uint256)` and selector `0x6dfcc650`. + ```solidity + error SafeCastOverflowedUintDowncast(uint8 bits, uint256 value); + ```*/ + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] + #[derive(Clone)] + pub struct SafeCastOverflowedUintDowncast { + pub bits: u8, + pub value: alloy::sol_types::private::primitives::aliases::U256, + } + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] + const _: () = { + use alloy::sol_types as alloy_sol_types; + #[doc(hidden)] + type UnderlyingSolTuple<'a> = + (alloy::sol_types::sol_data::Uint<8>, alloy::sol_types::sol_data::Uint<256>); + #[doc(hidden)] + type UnderlyingRustTuple<'a> = (u8, alloy::sol_types::private::primitives::aliases::U256); + #[cfg(test)] + #[allow(dead_code, unreachable_patterns)] + fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { + match _t { + alloy_sol_types::private::AssertTypeEq::< + ::RustType, + >(_) => {} + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: SafeCastOverflowedUintDowncast) -> Self { + (value.bits, value.value) + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From> for SafeCastOverflowedUintDowncast { + fn from(tuple: UnderlyingRustTuple<'_>) -> Self { + Self { bits: tuple.0, value: tuple.1 } + } + } + #[automatically_derived] + impl alloy_sol_types::SolError for SafeCastOverflowedUintDowncast { + type Parameters<'a> = UnderlyingSolTuple<'a>; + type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; + const SIGNATURE: &'static str = "SafeCastOverflowedUintDowncast(uint8,uint256)"; + const SELECTOR: [u8; 4] = [109u8, 252u8, 198u8, 80u8]; + #[inline] + fn new<'a>( + tuple: as alloy_sol_types::SolType>::RustType, + ) -> Self { + tuple.into() + } + #[inline] + fn tokenize(&self) -> Self::Token<'_> { + ( + as alloy_sol_types::SolType>::tokenize( + &self.bits, + ), + as alloy_sol_types::SolType>::tokenize( + &self.value, + ), + ) + } + } + }; + /**Custom error with signature `SafeCastOverflowedUintToInt(uint256)` and selector `0x24775e06`. + ```solidity + error SafeCastOverflowedUintToInt(uint256 value); + ```*/ + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] + #[derive(Clone)] + pub struct SafeCastOverflowedUintToInt { + pub value: alloy::sol_types::private::primitives::aliases::U256, + } + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] + const _: () = { + use alloy::sol_types as alloy_sol_types; + #[doc(hidden)] + type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); + #[doc(hidden)] + type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,); + #[cfg(test)] + #[allow(dead_code, unreachable_patterns)] + fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { + match _t { + alloy_sol_types::private::AssertTypeEq::< + ::RustType, + >(_) => {} + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: SafeCastOverflowedUintToInt) -> Self { + (value.value,) + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From> for SafeCastOverflowedUintToInt { + fn from(tuple: UnderlyingRustTuple<'_>) -> Self { + Self { value: tuple.0 } + } + } + #[automatically_derived] + impl alloy_sol_types::SolError for SafeCastOverflowedUintToInt { + type Parameters<'a> = UnderlyingSolTuple<'a>; + type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; + const SIGNATURE: &'static str = "SafeCastOverflowedUintToInt(uint256)"; + const SELECTOR: [u8; 4] = [36u8, 119u8, 94u8, 6u8]; + #[inline] + fn new<'a>( + tuple: as alloy_sol_types::SolType>::RustType, + ) -> Self { + tuple.into() + } + #[inline] + fn tokenize(&self) -> Self::Token<'_> { + ( as alloy_sol_types::SolType>::tokenize( + &self.value, + ),) + } + } + }; + ///Container for all the [`SafeCast`](self) custom errors. + pub enum SafeCastErrors { + SafeCastOverflowedIntDowncast(SafeCastOverflowedIntDowncast), + SafeCastOverflowedIntToUint(SafeCastOverflowedIntToUint), + SafeCastOverflowedUintDowncast(SafeCastOverflowedUintDowncast), + SafeCastOverflowedUintToInt(SafeCastOverflowedUintToInt), + } + #[automatically_derived] + impl SafeCastErrors { + /// All the selectors of this enum. + /// + /// Note that the selectors might not be in the same order as the variants. + /// No guarantees are made about the order of the selectors. + /// + /// Prefer using `SolInterface` methods instead. + pub const SELECTORS: &'static [[u8; 4usize]] = &[ + [36u8, 119u8, 94u8, 6u8], + [50u8, 114u8, 105u8, 167u8], + [109u8, 252u8, 198u8, 80u8], + [168u8, 206u8, 68u8, 50u8], + ]; + } + #[automatically_derived] + impl alloy_sol_types::SolInterface for SafeCastErrors { + const NAME: &'static str = "SafeCastErrors"; + const MIN_DATA_LENGTH: usize = 32usize; + const COUNT: usize = 4usize; + #[inline] + fn selector(&self) -> [u8; 4] { + match self { + Self::SafeCastOverflowedIntDowncast(_) => { + ::SELECTOR + } + Self::SafeCastOverflowedIntToUint(_) => { + ::SELECTOR + } + Self::SafeCastOverflowedUintDowncast(_) => { + ::SELECTOR + } + Self::SafeCastOverflowedUintToInt(_) => { + ::SELECTOR + } + } + } + #[inline] + fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { + Self::SELECTORS.get(i).copied() + } + #[inline] + fn valid_selector(selector: [u8; 4]) -> bool { + Self::SELECTORS.binary_search(&selector).is_ok() + } + #[inline] + #[allow(non_snake_case)] + fn abi_decode_raw( + selector: [u8; 4], + data: &[u8], + validate: bool, + ) -> alloy_sol_types::Result { + static DECODE_SHIMS: &[fn(&[u8], bool) -> alloy_sol_types::Result] = &[ + { + fn SafeCastOverflowedUintToInt( + data: &[u8], + validate: bool, + ) -> alloy_sol_types::Result { + ::abi_decode_raw( + data, validate, + ) + .map(SafeCastErrors::SafeCastOverflowedUintToInt) + } + SafeCastOverflowedUintToInt + }, + { + fn SafeCastOverflowedIntDowncast( + data: &[u8], + validate: bool, + ) -> alloy_sol_types::Result { + ::abi_decode_raw( + data, + validate, + ) + .map(SafeCastErrors::SafeCastOverflowedIntDowncast) + } + SafeCastOverflowedIntDowncast + }, + { + fn SafeCastOverflowedUintDowncast( + data: &[u8], + validate: bool, + ) -> alloy_sol_types::Result { + ::abi_decode_raw( + data, + validate, + ) + .map(SafeCastErrors::SafeCastOverflowedUintDowncast) + } + SafeCastOverflowedUintDowncast + }, + { + fn SafeCastOverflowedIntToUint( + data: &[u8], + validate: bool, + ) -> alloy_sol_types::Result { + ::abi_decode_raw( + data, validate, + ) + .map(SafeCastErrors::SafeCastOverflowedIntToUint) + } + SafeCastOverflowedIntToUint + }, + ]; + let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { + return Err(alloy_sol_types::Error::unknown_selector( + ::NAME, + selector, + )); + }; + DECODE_SHIMS[idx](data, validate) + } + #[inline] + fn abi_encoded_size(&self) -> usize { + match self { + Self::SafeCastOverflowedIntDowncast(inner) => { + ::abi_encoded_size( + inner, + ) + } + Self::SafeCastOverflowedIntToUint(inner) => { + ::abi_encoded_size( + inner, + ) + } + Self::SafeCastOverflowedUintDowncast(inner) => { + ::abi_encoded_size( + inner, + ) + } + Self::SafeCastOverflowedUintToInt(inner) => { + ::abi_encoded_size( + inner, + ) + } + } + } + #[inline] + fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { + match self { + Self::SafeCastOverflowedIntDowncast(inner) => { + ::abi_encode_raw( + inner, out, + ) + } + Self::SafeCastOverflowedIntToUint(inner) => { + ::abi_encode_raw( + inner, out, + ) + } + Self::SafeCastOverflowedUintDowncast(inner) => { + ::abi_encode_raw( + inner, out, + ) + } + Self::SafeCastOverflowedUintToInt(inner) => { + ::abi_encode_raw( + inner, out, + ) + } + } + } + } + use alloy::contract as alloy_contract; + /**Creates a new wrapper around an on-chain [`SafeCast`](self) contract instance. + + See the [wrapper's documentation](`SafeCastInstance`) for more details.*/ + #[inline] + pub const fn new< + T: alloy_contract::private::Transport + ::core::clone::Clone, + P: alloy_contract::private::Provider, + N: alloy_contract::private::Network, + >( + address: alloy_sol_types::private::Address, + provider: P, + ) -> SafeCastInstance { + SafeCastInstance::::new(address, provider) + } + /**Deploys this contract using the given `provider` and constructor arguments, if any. + + Returns a new instance of the contract, if the deployment was successful. + + For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ + #[inline] + pub fn deploy< + T: alloy_contract::private::Transport + ::core::clone::Clone, + P: alloy_contract::private::Provider, + N: alloy_contract::private::Network, + >( + provider: P, + ) -> impl ::core::future::Future>> + { + SafeCastInstance::::deploy(provider) + } + /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` + and constructor arguments, if any. + + This is a simple wrapper around creating a `RawCallBuilder` with the data set to + the bytecode concatenated with the constructor's ABI-encoded arguments.*/ + #[inline] + pub fn deploy_builder< + T: alloy_contract::private::Transport + ::core::clone::Clone, + P: alloy_contract::private::Provider, + N: alloy_contract::private::Network, + >( + provider: P, + ) -> alloy_contract::RawCallBuilder { + SafeCastInstance::::deploy_builder(provider) + } + /**A [`SafeCast`](self) instance. + + Contains type-safe methods for interacting with an on-chain instance of the + [`SafeCast`](self) contract located at a given `address`, using a given + provider `P`. + + If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) + documentation on how to provide it), the `deploy` and `deploy_builder` methods can + be used to deploy a new instance of the contract. + + See the [module-level documentation](self) for all the available methods.*/ + #[derive(Clone)] + pub struct SafeCastInstance { + address: alloy_sol_types::private::Address, + provider: P, + _network_transport: ::core::marker::PhantomData<(N, T)>, + } + #[automatically_derived] + impl ::core::fmt::Debug for SafeCastInstance { + #[inline] + fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { + f.debug_tuple("SafeCastInstance").field(&self.address).finish() + } + } + /// Instantiation and getters/setters. + #[automatically_derived] + impl< + T: alloy_contract::private::Transport + ::core::clone::Clone, + P: alloy_contract::private::Provider, + N: alloy_contract::private::Network, + > SafeCastInstance + { + /**Creates a new wrapper around an on-chain [`SafeCast`](self) contract instance. + + See the [wrapper's documentation](`SafeCastInstance`) for more details.*/ + #[inline] + pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { + Self { address, provider, _network_transport: ::core::marker::PhantomData } + } + /**Deploys this contract using the given `provider` and constructor arguments, if any. + + Returns a new instance of the contract, if the deployment was successful. + + For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ + #[inline] + pub async fn deploy(provider: P) -> alloy_contract::Result> { + let call_builder = Self::deploy_builder(provider); + let contract_address = call_builder.deploy().await?; + Ok(Self::new(contract_address, call_builder.provider)) + } + /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` + and constructor arguments, if any. + + This is a simple wrapper around creating a `RawCallBuilder` with the data set to + the bytecode concatenated with the constructor's ABI-encoded arguments.*/ + #[inline] + pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { + alloy_contract::RawCallBuilder::new_raw_deploy( + provider, + ::core::clone::Clone::clone(&BYTECODE), + ) + } + /// Returns a reference to the address. + #[inline] + pub const fn address(&self) -> &alloy_sol_types::private::Address { + &self.address + } + /// Sets the address. + #[inline] + pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { + self.address = address; + } + /// Sets the address and returns `self`. + pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { + self.set_address(address); + self + } + /// Returns a reference to the provider. + #[inline] + pub const fn provider(&self) -> &P { + &self.provider + } + } + impl SafeCastInstance { + /// Clones the provider and returns a new instance with the cloned provider. + #[inline] + pub fn with_cloned_provider(self) -> SafeCastInstance { + SafeCastInstance { + address: self.address, + provider: ::core::clone::Clone::clone(&self.provider), + _network_transport: ::core::marker::PhantomData, + } + } + } + /// Function calls. + #[automatically_derived] + impl< + T: alloy_contract::private::Transport + ::core::clone::Clone, + P: alloy_contract::private::Provider, + N: alloy_contract::private::Network, + > SafeCastInstance + { + /// Creates a new call builder using this contract instance's provider and address. + /// + /// Note that the call can be any function call, not just those defined in this + /// contract. Prefer using the other methods for building type-safe contract calls. + pub fn call_builder( + &self, + call: &C, + ) -> alloy_contract::SolCallBuilder { + alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) + } + } + /// Event filters. + #[automatically_derived] + impl< + T: alloy_contract::private::Transport + ::core::clone::Clone, + P: alloy_contract::private::Provider, + N: alloy_contract::private::Network, + > SafeCastInstance + { + /// Creates a new event filter using this contract instance's provider and address. + /// + /// Note that the type can be any event, not just those defined in this contract. + /// Prefer using the other methods for building type-safe event filters. + pub fn event_filter( + &self, + ) -> alloy_contract::Event { + alloy_contract::Event::new_sol(&self.provider, &self.address) + } + } +} diff --git a/crates/bindings/src/safecastupgradeable.rs b/crates/bindings/src/safecastupgradeable.rs deleted file mode 100644 index ff75a2fc..00000000 --- a/crates/bindings/src/safecastupgradeable.rs +++ /dev/null @@ -1,221 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface SafeCastUpgradeable {} -``` - -...which was generated by the following JSON ABI: -```json -[] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod SafeCastUpgradeable { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea2646970667358221220ecba14a4ec9414ff971dc5c06cfba3ff76b9347acd5e50e871367760799f2dc964736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 \xEC\xBA\x14\xA4\xEC\x94\x14\xFF\x97\x1D\xC5\xC0l\xFB\xA3\xFFv\xB94z\xCD^P\xE8q6w`y\x9F-\xC9dsolcC\0\x08\x1C\x003", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x5f80fdfea2646970667358221220ecba14a4ec9414ff971dc5c06cfba3ff76b9347acd5e50e871367760799f2dc964736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"_\x80\xFD\xFE\xA2dipfsX\"\x12 \xEC\xBA\x14\xA4\xEC\x94\x14\xFF\x97\x1D\xC5\xC0l\xFB\xA3\xFFv\xB94z\xCD^P\xE8q6w`y\x9F-\xC9dsolcC\0\x08\x1C\x003", - ); - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`SafeCastUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`SafeCastUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> SafeCastUpgradeableInstance { - SafeCastUpgradeableInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - SafeCastUpgradeableInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - SafeCastUpgradeableInstance::::deploy_builder(provider) - } - /**A [`SafeCastUpgradeable`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`SafeCastUpgradeable`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct SafeCastUpgradeableInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for SafeCastUpgradeableInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("SafeCastUpgradeableInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > SafeCastUpgradeableInstance - { - /**Creates a new wrapper around an on-chain [`SafeCastUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`SafeCastUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl SafeCastUpgradeableInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> SafeCastUpgradeableInstance { - SafeCastUpgradeableInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > SafeCastUpgradeableInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > SafeCastUpgradeableInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - } -} diff --git a/crates/bindings/src/signaturecheckerupgradeable.rs b/crates/bindings/src/signaturecheckerupgradeable.rs deleted file mode 100644 index de9322d0..00000000 --- a/crates/bindings/src/signaturecheckerupgradeable.rs +++ /dev/null @@ -1,222 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface SignatureCheckerUpgradeable {} -``` - -...which was generated by the following JSON ABI: -```json -[] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod SignatureCheckerUpgradeable { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea264697066735822122072a57d5a4e18a327c4352bb8174ab400b3c93a1abff68d2508ae23e0e9d8cd7164736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 r\xA5}ZN\x18\xA3'\xC45+\xB8\x17J\xB4\0\xB3\xC9:\x1A\xBF\xF6\x8D%\x08\xAE#\xE0\xE9\xD8\xCDqdsolcC\0\x08\x1C\x003", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x5f80fdfea264697066735822122072a57d5a4e18a327c4352bb8174ab400b3c93a1abff68d2508ae23e0e9d8cd7164736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"_\x80\xFD\xFE\xA2dipfsX\"\x12 r\xA5}ZN\x18\xA3'\xC45+\xB8\x17J\xB4\0\xB3\xC9:\x1A\xBF\xF6\x8D%\x08\xAE#\xE0\xE9\xD8\xCDqdsolcC\0\x08\x1C\x003", - ); - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`SignatureCheckerUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`SignatureCheckerUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> SignatureCheckerUpgradeableInstance { - SignatureCheckerUpgradeableInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future< - Output = alloy_contract::Result>, - > { - SignatureCheckerUpgradeableInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - SignatureCheckerUpgradeableInstance::::deploy_builder(provider) - } - /**A [`SignatureCheckerUpgradeable`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`SignatureCheckerUpgradeable`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct SignatureCheckerUpgradeableInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for SignatureCheckerUpgradeableInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("SignatureCheckerUpgradeableInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > SignatureCheckerUpgradeableInstance - { - /**Creates a new wrapper around an on-chain [`SignatureCheckerUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`SignatureCheckerUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl SignatureCheckerUpgradeableInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> SignatureCheckerUpgradeableInstance { - SignatureCheckerUpgradeableInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > SignatureCheckerUpgradeableInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > SignatureCheckerUpgradeableInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - } -} diff --git a/crates/bindings/src/mathupgradeable.rs b/crates/bindings/src/signedmath.rs similarity index 77% rename from crates/bindings/src/mathupgradeable.rs rename to crates/bindings/src/signedmath.rs index 5506edbf..5afa30b2 100644 --- a/crates/bindings/src/mathupgradeable.rs +++ b/crates/bindings/src/signedmath.rs @@ -2,7 +2,7 @@ Generated by the following Solidity interface... ```solidity -interface MathUpgradeable {} +interface SignedMath {} ``` ...which was generated by the following JSON ABI: @@ -16,33 +16,33 @@ interface MathUpgradeable {} clippy::style, clippy::empty_structs_with_brackets )] -pub mod MathUpgradeable { +pub mod SignedMath { use super::*; use alloy::sol_types as alloy_sol_types; /// The creation / init bytecode of the contract. /// /// ```text - ///0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea264697066735822122095bcd4b723b466ce8d2d0c8932aac60f5d3b9900890b216e5493cb785be5dd6364736f6c634300081c0033 + ///0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea26469706673582212200cd20ef822cee7c553921d92adc6d0a94c2e091dbc8b94eb2207a2d0b31659cb64736f6c634300081c0033 /// ``` #[rustfmt::skip] #[allow(clippy::all)] pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 \x95\xBC\xD4\xB7#\xB4f\xCE\x8D-\x0C\x892\xAA\xC6\x0F];\x99\0\x89\x0B!nT\x93\xCBx[\xE5\xDDcdsolcC\0\x08\x1C\x003", + b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 \x0C\xD2\x0E\xF8\"\xCE\xE7\xC5S\x92\x1D\x92\xAD\xC6\xD0\xA9L.\t\x1D\xBC\x8B\x94\xEB\"\x07\xA2\xD0\xB3\x16Y\xCBdsolcC\0\x08\x1C\x003", ); /// The runtime bytecode of the contract, as deployed on the network. /// /// ```text - ///0x5f80fdfea264697066735822122095bcd4b723b466ce8d2d0c8932aac60f5d3b9900890b216e5493cb785be5dd6364736f6c634300081c0033 + ///0x5f80fdfea26469706673582212200cd20ef822cee7c553921d92adc6d0a94c2e091dbc8b94eb2207a2d0b31659cb64736f6c634300081c0033 /// ``` #[rustfmt::skip] #[allow(clippy::all)] pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"_\x80\xFD\xFE\xA2dipfsX\"\x12 \x95\xBC\xD4\xB7#\xB4f\xCE\x8D-\x0C\x892\xAA\xC6\x0F];\x99\0\x89\x0B!nT\x93\xCBx[\xE5\xDDcdsolcC\0\x08\x1C\x003", + b"_\x80\xFD\xFE\xA2dipfsX\"\x12 \x0C\xD2\x0E\xF8\"\xCE\xE7\xC5S\x92\x1D\x92\xAD\xC6\xD0\xA9L.\t\x1D\xBC\x8B\x94\xEB\"\x07\xA2\xD0\xB3\x16Y\xCBdsolcC\0\x08\x1C\x003", ); use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`MathUpgradeable`](self) contract instance. + /**Creates a new wrapper around an on-chain [`SignedMath`](self) contract instance. - See the [wrapper's documentation](`MathUpgradeableInstance`) for more details.*/ + See the [wrapper's documentation](`SignedMathInstance`) for more details.*/ #[inline] pub const fn new< T: alloy_contract::private::Transport + ::core::clone::Clone, @@ -51,8 +51,8 @@ pub mod MathUpgradeable { >( address: alloy_sol_types::private::Address, provider: P, - ) -> MathUpgradeableInstance { - MathUpgradeableInstance::::new(address, provider) + ) -> SignedMathInstance { + SignedMathInstance::::new(address, provider) } /**Deploys this contract using the given `provider` and constructor arguments, if any. @@ -66,9 +66,9 @@ pub mod MathUpgradeable { N: alloy_contract::private::Network, >( provider: P, - ) -> impl ::core::future::Future>> + ) -> impl ::core::future::Future>> { - MathUpgradeableInstance::::deploy(provider) + SignedMathInstance::::deploy(provider) } /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` and constructor arguments, if any. @@ -83,12 +83,12 @@ pub mod MathUpgradeable { >( provider: P, ) -> alloy_contract::RawCallBuilder { - MathUpgradeableInstance::::deploy_builder(provider) + SignedMathInstance::::deploy_builder(provider) } - /**A [`MathUpgradeable`](self) instance. + /**A [`SignedMath`](self) instance. Contains type-safe methods for interacting with an on-chain instance of the - [`MathUpgradeable`](self) contract located at a given `address`, using a given + [`SignedMath`](self) contract located at a given `address`, using a given provider `P`. If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) @@ -97,16 +97,16 @@ pub mod MathUpgradeable { See the [module-level documentation](self) for all the available methods.*/ #[derive(Clone)] - pub struct MathUpgradeableInstance { + pub struct SignedMathInstance { address: alloy_sol_types::private::Address, provider: P, _network_transport: ::core::marker::PhantomData<(N, T)>, } #[automatically_derived] - impl ::core::fmt::Debug for MathUpgradeableInstance { + impl ::core::fmt::Debug for SignedMathInstance { #[inline] fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("MathUpgradeableInstance").field(&self.address).finish() + f.debug_tuple("SignedMathInstance").field(&self.address).finish() } } /// Instantiation and getters/setters. @@ -115,11 +115,11 @@ pub mod MathUpgradeable { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > MathUpgradeableInstance + > SignedMathInstance { - /**Creates a new wrapper around an on-chain [`MathUpgradeable`](self) contract instance. + /**Creates a new wrapper around an on-chain [`SignedMath`](self) contract instance. - See the [wrapper's documentation](`MathUpgradeableInstance`) for more details.*/ + See the [wrapper's documentation](`SignedMathInstance`) for more details.*/ #[inline] pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { Self { address, provider, _network_transport: ::core::marker::PhantomData } @@ -130,9 +130,7 @@ pub mod MathUpgradeable { For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { + pub async fn deploy(provider: P) -> alloy_contract::Result> { let call_builder = Self::deploy_builder(provider); let contract_address = call_builder.deploy().await?; Ok(Self::new(contract_address, call_builder.provider)) @@ -170,11 +168,11 @@ pub mod MathUpgradeable { &self.provider } } - impl MathUpgradeableInstance { + impl SignedMathInstance { /// Clones the provider and returns a new instance with the cloned provider. #[inline] - pub fn with_cloned_provider(self) -> MathUpgradeableInstance { - MathUpgradeableInstance { + pub fn with_cloned_provider(self) -> SignedMathInstance { + SignedMathInstance { address: self.address, provider: ::core::clone::Clone::clone(&self.provider), _network_transport: ::core::marker::PhantomData, @@ -187,7 +185,7 @@ pub mod MathUpgradeable { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > MathUpgradeableInstance + > SignedMathInstance { /// Creates a new call builder using this contract instance's provider and address. /// @@ -206,7 +204,7 @@ pub mod MathUpgradeable { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > MathUpgradeableInstance + > SignedMathInstance { /// Creates a new event filter using this contract instance's provider and address. /// diff --git a/crates/bindings/src/wavssubmit.rs b/crates/bindings/src/simplesubmit.rs similarity index 56% rename from crates/bindings/src/wavssubmit.rs rename to crates/bindings/src/simplesubmit.rs index 1fdd0a1c..04d01520 100644 --- a/crates/bindings/src/wavssubmit.rs +++ b/crates/bindings/src/simplesubmit.rs @@ -261,15 +261,13 @@ library ISimpleTrigger { type TriggerId is uint64; } -interface WavsSubmit { - constructor(); +interface SimpleSubmit { + constructor(address serviceManager); function getData(ISimpleTrigger.TriggerId triggerId) external view returns (bytes memory data); - function getServiceManager() external view returns (address); function getSignature(ISimpleTrigger.TriggerId triggerId) external view returns (bytes memory signature); - function handleAddPayload(bytes memory data, bytes memory signature) external; + function handleSignedData(bytes memory data, bytes memory signature) external; function isValidTriggerId(ISimpleTrigger.TriggerId triggerId) external view returns (bool); - function setServiceManager(address newServiceManager) external; } ``` @@ -278,7 +276,13 @@ interface WavsSubmit { [ { "type": "constructor", - "inputs": [], + "inputs": [ + { + "name": "serviceManager", + "type": "address", + "internalType": "contract ILayerServiceManager" + } + ], "stateMutability": "nonpayable" }, { @@ -300,19 +304,6 @@ interface WavsSubmit { ], "stateMutability": "view" }, - { - "type": "function", - "name": "getServiceManager", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, { "type": "function", "name": "getSignature", @@ -334,7 +325,7 @@ interface WavsSubmit { }, { "type": "function", - "name": "handleAddPayload", + "name": "handleSignedData", "inputs": [ { "name": "data", @@ -368,19 +359,6 @@ interface WavsSubmit { } ], "stateMutability": "view" - }, - { - "type": "function", - "name": "setServiceManager", - "inputs": [ - { - "name": "newServiceManager", - "type": "address", - "internalType": "address" - } - ], - "outputs": [], - "stateMutability": "nonpayable" } ] ```*/ @@ -391,43 +369,45 @@ interface WavsSubmit { clippy::style, clippy::empty_structs_with_brackets )] -pub mod WavsSubmit { +pub mod SimpleSubmit { use super::*; use alloy::sol_types as alloy_sol_types; /// The creation / init bytecode of the contract. /// /// ```text - ///0x608080604052346026575f80546001600160a01b031916331790556107d6908161002b8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816273e1d7146102f157508063489584421461024b5780634dda0b43146102235780639b41bf231461017c578063a127f1881461009e5763aa32d9f41461005d575f80fd5b3461009a57602036600319011261009a576001600160401b0361007e61069b565b165f526002602052602060ff60405f2054166040519015158152f35b5f80fd5b3461009a57602036600319011261009a576001600160401b036100bf61069b565b165f52600360205260405f20604051905f908054906100dd82610719565b80855291600181169081156101555750600114610115575b61011184610105818603826106f8565b604051918291826106b1565b0390f35b5f90815260208120939250905b80821061013b57509091508101602001610105826100f5565b919260018160209254838588010152019101909291610122565b60ff191660208087019190915292151560051b8501909201925061010591508390506100f5565b3461009a57602036600319011261009a576004356001600160a01b0381169081900361009a575f546001600160a01b031633036101cf576bffffffffffffffffffffffff60a01b60015416176001555f80f35b60405162461bcd60e51b815260206004820152602660248201527f4f6e6c7920746865206f776e65722063616e2063616c6c20746869732066756e60448201526531ba34b7b71760d11b6064820152608490fd5b3461009a575f36600319011261009a576001546040516001600160a01b039091168152602090f35b3461009a57602036600319011261009a576001600160401b0361026c61069b565b165f52600460205260405f20604051905f9080549061028a82610719565b808552916001811690811561015557506001146102b15761011184610105818603826106f8565b5f90815260208120939250905b8082106102d757509091508101602001610105826100f5565b9192600181602092548385880101520191019092916102be565b3461009a57604036600319011261009a576004356001600160401b03811161009a5761032190369060040161066e565b906024356001600160401b03811161009a5761034190369060040161066e565b60015491949093916001600160a01b03163303610613575081019060208183031261009a578035906001600160401b03821161009a57019160408383031261009a5760405192604084018481106001600160401b038211176105915760405280356001600160401b038116810361009a5784526020810135906001600160401b03821161009a570182601f8201121561009a578035906001600160401b03821161059157604051936103fd601f8401601f1916602001866106f8565b8285526020838301011161009a57815f9260208093018387013784010152602083019182526001600160401b038351165f52600460205260405f20906001600160401b0381116105915761045b816104558454610719565b84610751565b5f601f82116001146105b057819061048b939495965f926105a5575b50508160011b915f199060031b1c19161790565b90555b51906001600160401b038151165f52600360205260405f208251926001600160401b038411610591576104c5846104558454610719565b602090601f85116001146105265793806104fc926001600160401b03965f9261051b5750508160011b915f199060031b1c19161790565b90555b51165f908152600260205260409020805460ff19166001179055005b015190508680610477565b90601f19851691835f52815f20925f5b81811061057957509160019391876001600160401b03989410610561575b505050811b0190556104ff565b01515f1960f88460031b161c19169055858080610554565b92936020600181928786015181550195019301610536565b634e487b7160e01b5f52604160045260245ffd5b013590508680610477565b601f19821695835f5260205f20915f5b8881106105fb575083600195969798106105e2575b505050811b01905561048e565b01355f19600384901b60f8161c191690558580806105d5565b909260206001819286860135815501940191016105c0565b62461bcd60e51b815260206004820152603060248201527f4f6e6c79207468652073657276696365206d616e616765722063616e2063616c60448201526f36103a3434b990333ab731ba34b7b71760811b6064820152608490fd5b9181601f8401121561009a578235916001600160401b03831161009a576020838186019501011161009a57565b600435906001600160401b038216820361009a57565b9190916020815282518060208301525f5b8181106106e2575060409293505f838284010152601f8019910116010190565b80602080928701015160408286010152016106c2565b90601f801991011681019081106001600160401b0382111761059157604052565b90600182811c92168015610747575b602083101461073357565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610728565b601f821161075e57505050565b5f5260205f20906020601f840160051c83019310610796575b601f0160051c01905b81811061078b575050565b5f8155600101610780565b909150819061077756fea264697066735822122045872f62eee121972ae77d4e3637a87d5bb59afad38b7ebe942a0acd5e1e0d0264736f6c634300081c0033 + ///0x608034606f57601f6107f138819003918201601f19168301916001600160401b03831184841017607357808492602094604052833981010312606f57516001600160a01b03811690819003606f575f80546001600160a01b03191691909117905560405161076990816100888239f35b5f80fd5b634e487b7160e01b5f52604160045260245ffdfe6080806040526004361015610012575f80fd5b5f905f3560e01c908163489584421461052b57508063a127f1881461044d578063aa32d9f4146104105763ed0226481461004a575f80fd5b3461040c57604036600319011261040c576004356001600160401b03811161040c5761007a90369060040161062a565b91906024356001600160401b03811161040c5761009b90369060040161062a565b5f549094906001600160a01b0316803b1561040c575f6040518092632a3e7f3b60e01b82526040600483015281806100ed6100da60448301898c6106c4565b8281036003190160248401528c8a6106c4565b03915afa8015610401576103ec575b508201916020818403126103e8578035906001600160401b0382116103e45701936040858403126103e85760405194604086018681106001600160401b038211176103d05760405280356001600160401b03811681036103cc5786526020810135906001600160401b0382116103cc570183601f820112156103e4578035906001600160401b0382116103d057604051946101a1601f8401601f19166020018761068f565b828652602083830101116103cc5781869260208093018388013785010152602085019283526001600160401b038551168452600360205260408420916001600160401b0382116103b8576101ff826101f98554610657565b856106e4565b8490601f83116001146103555761022d929186918361034a575b50508160011b915f199060031b1c19161790565b90555b51916001600160401b03815116825260026020526040822083516001600160401b0381116103365761026c816102668454610657565b846106e4565b6020601f82116001146102cc5790806102a39286976001600160401b0397926102c15750508160011b915f199060031b1c19161790565b90555b51168152600160205260408120600160ff1982541617905580f35b015190505f80610219565b82855280852095601f198316865b81811061031e5750916001600160401b03969791846001959410610306575b505050811b0190556102a6565b01515f1960f88460031b161c191690555f80806102f9565b838301518955600190980197602093840193016102da565b634e487b7160e01b84526041600452602484fd5b013590505f80610219565b8386526020862091601f198416875b8181106103a05750908460019594939210610387575b505050811b019055610230565b01355f19600384901b60f8161c191690555f808061037a565b91936020600181928787013581550195019201610364565b634e487b7160e01b85526041600452602485fd5b8580fd5b634e487b7160e01b86526041600452602486fd5b8480fd5b8380fd5b6103f99194505f9061068f565b5f925f6100fc565b6040513d5f823e3d90fd5b5f80fd5b3461040c57602036600319011261040c576001600160401b036104316105cd565b165f526001602052602060ff60405f2054166040519015158152f35b3461040c57602036600319011261040c576001600160401b0361046e6105cd565b165f52600260205260405f20604051905f9080549061048c82610657565b808552916001811690811561050457506001146104c4575b6104c0846104b48186038261068f565b604051918291826105e3565b0390f35b5f90815260208120939250905b8082106104ea575090915081016020016104b4826104a4565b9192600181602092548385880101520191019092916104d1565b60ff191660208087019190915292151560051b850190920192506104b491508390506104a4565b3461040c57602036600319011261040c576001600160401b0361054c6105cd565b165f52600360205260405f205f9080549061056682610657565b8085529160018116908115610504575060011461058d576104c0846104b48186038261068f565b5f90815260208120939250905b8082106105b3575090915081016020016104b4826104a4565b91926001816020925483858801015201910190929161059a565b600435906001600160401b038216820361040c57565b9190916020815282518060208301525f5b818110610614575060409293505f838284010152601f8019910116010190565b80602080928701015160408286010152016105f4565b9181601f8401121561040c578235916001600160401b03831161040c576020838186019501011161040c57565b90600182811c92168015610685575b602083101461067157565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610666565b90601f801991011681019081106001600160401b038211176106b057604052565b634e487b7160e01b5f52604160045260245ffd5b908060209392818452848401375f828201840152601f01601f1916010190565b601f82116106f157505050565b5f5260205f20906020601f840160051c83019310610729575b601f0160051c01905b81811061071e575050565b5f8155600101610713565b909150819061070a56fea264697066735822122063e1a3d7cdb2f65b582452af2df8d2cf65da509f83a79a160b0a90d7fba364dd64736f6c634300081c0033 /// ``` #[rustfmt::skip] #[allow(clippy::all)] pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R4`&W_\x80T`\x01`\x01`\xA0\x1B\x03\x19\x163\x17\x90Ua\x07\xD6\x90\x81a\0+\x829\xF3[_\x80\xFD\xFE`\x80\x80`@R`\x046\x10\x15a\0\x12W_\x80\xFD[_5`\xE0\x1C\x90\x81bs\xE1\xD7\x14a\x02\xF1WP\x80cH\x95\x84B\x14a\x02KW\x80cM\xDA\x0BC\x14a\x02#W\x80c\x9BA\xBF#\x14a\x01|W\x80c\xA1'\xF1\x88\x14a\0\x9EWc\xAA2\xD9\xF4\x14a\0]W_\x80\xFD[4a\0\x9AW` 6`\x03\x19\x01\x12a\0\x9AW`\x01`\x01`@\x1B\x03a\0~a\x06\x9BV[\x16_R`\x02` R` `\xFF`@_ T\x16`@Q\x90\x15\x15\x81R\xF3[_\x80\xFD[4a\0\x9AW` 6`\x03\x19\x01\x12a\0\x9AW`\x01`\x01`@\x1B\x03a\0\xBFa\x06\x9BV[\x16_R`\x03` R`@_ `@Q\x90_\x90\x80T\x90a\0\xDD\x82a\x07\x19V[\x80\x85R\x91`\x01\x81\x16\x90\x81\x15a\x01UWP`\x01\x14a\x01\x15W[a\x01\x11\x84a\x01\x05\x81\x86\x03\x82a\x06\xF8V[`@Q\x91\x82\x91\x82a\x06\xB1V[\x03\x90\xF3[_\x90\x81R` \x81 \x93\x92P\x90[\x80\x82\x10a\x01;WP\x90\x91P\x81\x01` \x01a\x01\x05\x82a\0\xF5V[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\x01\"V[`\xFF\x19\x16` \x80\x87\x01\x91\x90\x91R\x92\x15\x15`\x05\x1B\x85\x01\x90\x92\x01\x92Pa\x01\x05\x91P\x83\x90Pa\0\xF5V[4a\0\x9AW` 6`\x03\x19\x01\x12a\0\x9AW`\x045`\x01`\x01`\xA0\x1B\x03\x81\x16\x90\x81\x90\x03a\0\x9AW_T`\x01`\x01`\xA0\x1B\x03\x163\x03a\x01\xCFWk\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\xA0\x1B`\x01T\x16\x17`\x01U_\x80\xF3[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FOnly the owner can call this fun`D\x82\x01Re1\xBA4\xB7\xB7\x17`\xD1\x1B`d\x82\x01R`\x84\x90\xFD[4a\0\x9AW_6`\x03\x19\x01\x12a\0\x9AW`\x01T`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x90\xF3[4a\0\x9AW` 6`\x03\x19\x01\x12a\0\x9AW`\x01`\x01`@\x1B\x03a\x02la\x06\x9BV[\x16_R`\x04` R`@_ `@Q\x90_\x90\x80T\x90a\x02\x8A\x82a\x07\x19V[\x80\x85R\x91`\x01\x81\x16\x90\x81\x15a\x01UWP`\x01\x14a\x02\xB1Wa\x01\x11\x84a\x01\x05\x81\x86\x03\x82a\x06\xF8V[_\x90\x81R` \x81 \x93\x92P\x90[\x80\x82\x10a\x02\xD7WP\x90\x91P\x81\x01` \x01a\x01\x05\x82a\0\xF5V[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\x02\xBEV[4a\0\x9AW`@6`\x03\x19\x01\x12a\0\x9AW`\x045`\x01`\x01`@\x1B\x03\x81\x11a\0\x9AWa\x03!\x906\x90`\x04\x01a\x06nV[\x90`$5`\x01`\x01`@\x1B\x03\x81\x11a\0\x9AWa\x03A\x906\x90`\x04\x01a\x06nV[`\x01T\x91\x94\x90\x93\x91`\x01`\x01`\xA0\x1B\x03\x163\x03a\x06\x13WP\x81\x01\x90` \x81\x83\x03\x12a\0\x9AW\x805\x90`\x01`\x01`@\x1B\x03\x82\x11a\0\x9AW\x01\x91`@\x83\x83\x03\x12a\0\x9AW`@Q\x92`@\x84\x01\x84\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x05\x91W`@R\x805`\x01`\x01`@\x1B\x03\x81\x16\x81\x03a\0\x9AW\x84R` \x81\x015\x90`\x01`\x01`@\x1B\x03\x82\x11a\0\x9AW\x01\x82`\x1F\x82\x01\x12\x15a\0\x9AW\x805\x90`\x01`\x01`@\x1B\x03\x82\x11a\x05\x91W`@Q\x93a\x03\xFD`\x1F\x84\x01`\x1F\x19\x16` \x01\x86a\x06\xF8V[\x82\x85R` \x83\x83\x01\x01\x11a\0\x9AW\x81_\x92` \x80\x93\x01\x83\x87\x017\x84\x01\x01R` \x83\x01\x91\x82R`\x01`\x01`@\x1B\x03\x83Q\x16_R`\x04` R`@_ \x90`\x01`\x01`@\x1B\x03\x81\x11a\x05\x91Wa\x04[\x81a\x04U\x84Ta\x07\x19V[\x84a\x07QV[_`\x1F\x82\x11`\x01\x14a\x05\xB0W\x81\x90a\x04\x8B\x93\x94\x95\x96_\x92a\x05\xA5W[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17\x90V[\x90U[Q\x90`\x01`\x01`@\x1B\x03\x81Q\x16_R`\x03` R`@_ \x82Q\x92`\x01`\x01`@\x1B\x03\x84\x11a\x05\x91Wa\x04\xC5\x84a\x04U\x84Ta\x07\x19V[` \x90`\x1F\x85\x11`\x01\x14a\x05&W\x93\x80a\x04\xFC\x92`\x01`\x01`@\x1B\x03\x96_\x92a\x05\x1BWPP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17\x90V[\x90U[Q\x16_\x90\x81R`\x02` R`@\x90 \x80T`\xFF\x19\x16`\x01\x17\x90U\0[\x01Q\x90P\x86\x80a\x04wV[\x90`\x1F\x19\x85\x16\x91\x83_R\x81_ \x92_[\x81\x81\x10a\x05yWP\x91`\x01\x93\x91\x87`\x01`\x01`@\x1B\x03\x98\x94\x10a\x05aW[PPP\x81\x1B\x01\x90Ua\x04\xFFV[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x85\x80\x80a\x05TV[\x92\x93` `\x01\x81\x92\x87\x86\x01Q\x81U\x01\x95\x01\x93\x01a\x056V[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[\x015\x90P\x86\x80a\x04wV[`\x1F\x19\x82\x16\x95\x83_R` _ \x91_[\x88\x81\x10a\x05\xFBWP\x83`\x01\x95\x96\x97\x98\x10a\x05\xE2W[PPP\x81\x1B\x01\x90Ua\x04\x8EV[\x015_\x19`\x03\x84\x90\x1B`\xF8\x16\x1C\x19\x16\x90U\x85\x80\x80a\x05\xD5V[\x90\x92` `\x01\x81\x92\x86\x86\x015\x81U\x01\x94\x01\x91\x01a\x05\xC0V[bF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`0`$\x82\x01R\x7FOnly the service manager can cal`D\x82\x01Ro6\x10:44\xB9\x903:\xB71\xBA4\xB7\xB7\x17`\x81\x1B`d\x82\x01R`\x84\x90\xFD[\x91\x81`\x1F\x84\x01\x12\x15a\0\x9AW\x825\x91`\x01`\x01`@\x1B\x03\x83\x11a\0\x9AW` \x83\x81\x86\x01\x95\x01\x01\x11a\0\x9AWV[`\x045\x90`\x01`\x01`@\x1B\x03\x82\x16\x82\x03a\0\x9AWV[\x91\x90\x91` \x81R\x82Q\x80` \x83\x01R_[\x81\x81\x10a\x06\xE2WP`@\x92\x93P_\x83\x82\x84\x01\x01R`\x1F\x80\x19\x91\x01\x16\x01\x01\x90V[\x80` \x80\x92\x87\x01\x01Q`@\x82\x86\x01\x01R\x01a\x06\xC2V[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x05\x91W`@RV[\x90`\x01\x82\x81\x1C\x92\x16\x80\x15a\x07GW[` \x83\x10\x14a\x073WV[cNH{q`\xE0\x1B_R`\"`\x04R`$_\xFD[\x91`\x7F\x16\x91a\x07(V[`\x1F\x82\x11a\x07^WPPPV[_R` _ \x90` `\x1F\x84\x01`\x05\x1C\x83\x01\x93\x10a\x07\x96W[`\x1F\x01`\x05\x1C\x01\x90[\x81\x81\x10a\x07\x8BWPPV[_\x81U`\x01\x01a\x07\x80V[\x90\x91P\x81\x90a\x07wV\xFE\xA2dipfsX\"\x12 E\x87/b\xEE\xE1!\x97*\xE7}N67\xA8}[\xB5\x9A\xFA\xD3\x8B~\xBE\x94*\n\xCD^\x1E\r\x02dsolcC\0\x08\x1C\x003", + b"`\x804`oW`\x1Fa\x07\xF18\x81\x90\x03\x91\x82\x01`\x1F\x19\x16\x83\x01\x91`\x01`\x01`@\x1B\x03\x83\x11\x84\x84\x10\x17`sW\x80\x84\x92` \x94`@R\x839\x81\x01\x03\x12`oWQ`\x01`\x01`\xA0\x1B\x03\x81\x16\x90\x81\x90\x03`oW_\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16\x91\x90\x91\x17\x90U`@Qa\x07i\x90\x81a\0\x88\x829\xF3[_\x80\xFD[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD\xFE`\x80\x80`@R`\x046\x10\x15a\0\x12W_\x80\xFD[_\x90_5`\xE0\x1C\x90\x81cH\x95\x84B\x14a\x05+WP\x80c\xA1'\xF1\x88\x14a\x04MW\x80c\xAA2\xD9\xF4\x14a\x04\x10Wc\xED\x02&H\x14a\0JW_\x80\xFD[4a\x04\x0CW`@6`\x03\x19\x01\x12a\x04\x0CW`\x045`\x01`\x01`@\x1B\x03\x81\x11a\x04\x0CWa\0z\x906\x90`\x04\x01a\x06*V[\x91\x90`$5`\x01`\x01`@\x1B\x03\x81\x11a\x04\x0CWa\0\x9B\x906\x90`\x04\x01a\x06*V[_T\x90\x94\x90`\x01`\x01`\xA0\x1B\x03\x16\x80;\x15a\x04\x0CW_`@Q\x80\x92c*>\x7F;`\xE0\x1B\x82R`@`\x04\x83\x01R\x81\x80a\0\xEDa\0\xDA`D\x83\x01\x89\x8Ca\x06\xC4V[\x82\x81\x03`\x03\x19\x01`$\x84\x01R\x8C\x8Aa\x06\xC4V[\x03\x91Z\xFA\x80\x15a\x04\x01Wa\x03\xECW[P\x82\x01\x91` \x81\x84\x03\x12a\x03\xE8W\x805\x90`\x01`\x01`@\x1B\x03\x82\x11a\x03\xE4W\x01\x93`@\x85\x84\x03\x12a\x03\xE8W`@Q\x94`@\x86\x01\x86\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\xD0W`@R\x805`\x01`\x01`@\x1B\x03\x81\x16\x81\x03a\x03\xCCW\x86R` \x81\x015\x90`\x01`\x01`@\x1B\x03\x82\x11a\x03\xCCW\x01\x83`\x1F\x82\x01\x12\x15a\x03\xE4W\x805\x90`\x01`\x01`@\x1B\x03\x82\x11a\x03\xD0W`@Q\x94a\x01\xA1`\x1F\x84\x01`\x1F\x19\x16` \x01\x87a\x06\x8FV[\x82\x86R` \x83\x83\x01\x01\x11a\x03\xCCW\x81\x86\x92` \x80\x93\x01\x83\x88\x017\x85\x01\x01R` \x85\x01\x92\x83R`\x01`\x01`@\x1B\x03\x85Q\x16\x84R`\x03` R`@\x84 \x91`\x01`\x01`@\x1B\x03\x82\x11a\x03\xB8Wa\x01\xFF\x82a\x01\xF9\x85Ta\x06WV[\x85a\x06\xE4V[\x84\x90`\x1F\x83\x11`\x01\x14a\x03UWa\x02-\x92\x91\x86\x91\x83a\x03JW[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17\x90V[\x90U[Q\x91`\x01`\x01`@\x1B\x03\x81Q\x16\x82R`\x02` R`@\x82 \x83Q`\x01`\x01`@\x1B\x03\x81\x11a\x036Wa\x02l\x81a\x02f\x84Ta\x06WV[\x84a\x06\xE4V[` `\x1F\x82\x11`\x01\x14a\x02\xCCW\x90\x80a\x02\xA3\x92\x86\x97`\x01`\x01`@\x1B\x03\x97\x92a\x02\xC1WPP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17\x90V[\x90U[Q\x16\x81R`\x01` R`@\x81 `\x01`\xFF\x19\x82T\x16\x17\x90U\x80\xF3[\x01Q\x90P_\x80a\x02\x19V[\x82\x85R\x80\x85 \x95`\x1F\x19\x83\x16\x86[\x81\x81\x10a\x03\x1EWP\x91`\x01`\x01`@\x1B\x03\x96\x97\x91\x84`\x01\x95\x94\x10a\x03\x06W[PPP\x81\x1B\x01\x90Ua\x02\xA6V[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U_\x80\x80a\x02\xF9V[\x83\x83\x01Q\x89U`\x01\x90\x98\x01\x97` \x93\x84\x01\x93\x01a\x02\xDAV[cNH{q`\xE0\x1B\x84R`A`\x04R`$\x84\xFD[\x015\x90P_\x80a\x02\x19V[\x83\x86R` \x86 \x91`\x1F\x19\x84\x16\x87[\x81\x81\x10a\x03\xA0WP\x90\x84`\x01\x95\x94\x93\x92\x10a\x03\x87W[PPP\x81\x1B\x01\x90Ua\x020V[\x015_\x19`\x03\x84\x90\x1B`\xF8\x16\x1C\x19\x16\x90U_\x80\x80a\x03zV[\x91\x93` `\x01\x81\x92\x87\x87\x015\x81U\x01\x95\x01\x92\x01a\x03dV[cNH{q`\xE0\x1B\x85R`A`\x04R`$\x85\xFD[\x85\x80\xFD[cNH{q`\xE0\x1B\x86R`A`\x04R`$\x86\xFD[\x84\x80\xFD[\x83\x80\xFD[a\x03\xF9\x91\x94P_\x90a\x06\x8FV[_\x92_a\0\xFCV[`@Q=_\x82>=\x90\xFD[_\x80\xFD[4a\x04\x0CW` 6`\x03\x19\x01\x12a\x04\x0CW`\x01`\x01`@\x1B\x03a\x041a\x05\xCDV[\x16_R`\x01` R` `\xFF`@_ T\x16`@Q\x90\x15\x15\x81R\xF3[4a\x04\x0CW` 6`\x03\x19\x01\x12a\x04\x0CW`\x01`\x01`@\x1B\x03a\x04na\x05\xCDV[\x16_R`\x02` R`@_ `@Q\x90_\x90\x80T\x90a\x04\x8C\x82a\x06WV[\x80\x85R\x91`\x01\x81\x16\x90\x81\x15a\x05\x04WP`\x01\x14a\x04\xC4W[a\x04\xC0\x84a\x04\xB4\x81\x86\x03\x82a\x06\x8FV[`@Q\x91\x82\x91\x82a\x05\xE3V[\x03\x90\xF3[_\x90\x81R` \x81 \x93\x92P\x90[\x80\x82\x10a\x04\xEAWP\x90\x91P\x81\x01` \x01a\x04\xB4\x82a\x04\xA4V[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\x04\xD1V[`\xFF\x19\x16` \x80\x87\x01\x91\x90\x91R\x92\x15\x15`\x05\x1B\x85\x01\x90\x92\x01\x92Pa\x04\xB4\x91P\x83\x90Pa\x04\xA4V[4a\x04\x0CW` 6`\x03\x19\x01\x12a\x04\x0CW`\x01`\x01`@\x1B\x03a\x05La\x05\xCDV[\x16_R`\x03` R`@_ _\x90\x80T\x90a\x05f\x82a\x06WV[\x80\x85R\x91`\x01\x81\x16\x90\x81\x15a\x05\x04WP`\x01\x14a\x05\x8DWa\x04\xC0\x84a\x04\xB4\x81\x86\x03\x82a\x06\x8FV[_\x90\x81R` \x81 \x93\x92P\x90[\x80\x82\x10a\x05\xB3WP\x90\x91P\x81\x01` \x01a\x04\xB4\x82a\x04\xA4V[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\x05\x9AV[`\x045\x90`\x01`\x01`@\x1B\x03\x82\x16\x82\x03a\x04\x0CWV[\x91\x90\x91` \x81R\x82Q\x80` \x83\x01R_[\x81\x81\x10a\x06\x14WP`@\x92\x93P_\x83\x82\x84\x01\x01R`\x1F\x80\x19\x91\x01\x16\x01\x01\x90V[\x80` \x80\x92\x87\x01\x01Q`@\x82\x86\x01\x01R\x01a\x05\xF4V[\x91\x81`\x1F\x84\x01\x12\x15a\x04\x0CW\x825\x91`\x01`\x01`@\x1B\x03\x83\x11a\x04\x0CW` \x83\x81\x86\x01\x95\x01\x01\x11a\x04\x0CWV[\x90`\x01\x82\x81\x1C\x92\x16\x80\x15a\x06\x85W[` \x83\x10\x14a\x06qWV[cNH{q`\xE0\x1B_R`\"`\x04R`$_\xFD[\x91`\x7F\x16\x91a\x06fV[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x06\xB0W`@RV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[\x90\x80` \x93\x92\x81\x84R\x84\x84\x017_\x82\x82\x01\x84\x01R`\x1F\x01`\x1F\x19\x16\x01\x01\x90V[`\x1F\x82\x11a\x06\xF1WPPPV[_R` _ \x90` `\x1F\x84\x01`\x05\x1C\x83\x01\x93\x10a\x07)W[`\x1F\x01`\x05\x1C\x01\x90[\x81\x81\x10a\x07\x1EWPPV[_\x81U`\x01\x01a\x07\x13V[\x90\x91P\x81\x90a\x07\nV\xFE\xA2dipfsX\"\x12 c\xE1\xA3\xD7\xCD\xB2\xF6[X$R\xAF-\xF8\xD2\xCFe\xDAP\x9F\x83\xA7\x9A\x16\x0B\n\x90\xD7\xFB\xA3d\xDDdsolcC\0\x08\x1C\x003", ); /// The runtime bytecode of the contract, as deployed on the network. /// /// ```text - ///0x6080806040526004361015610012575f80fd5b5f3560e01c90816273e1d7146102f157508063489584421461024b5780634dda0b43146102235780639b41bf231461017c578063a127f1881461009e5763aa32d9f41461005d575f80fd5b3461009a57602036600319011261009a576001600160401b0361007e61069b565b165f526002602052602060ff60405f2054166040519015158152f35b5f80fd5b3461009a57602036600319011261009a576001600160401b036100bf61069b565b165f52600360205260405f20604051905f908054906100dd82610719565b80855291600181169081156101555750600114610115575b61011184610105818603826106f8565b604051918291826106b1565b0390f35b5f90815260208120939250905b80821061013b57509091508101602001610105826100f5565b919260018160209254838588010152019101909291610122565b60ff191660208087019190915292151560051b8501909201925061010591508390506100f5565b3461009a57602036600319011261009a576004356001600160a01b0381169081900361009a575f546001600160a01b031633036101cf576bffffffffffffffffffffffff60a01b60015416176001555f80f35b60405162461bcd60e51b815260206004820152602660248201527f4f6e6c7920746865206f776e65722063616e2063616c6c20746869732066756e60448201526531ba34b7b71760d11b6064820152608490fd5b3461009a575f36600319011261009a576001546040516001600160a01b039091168152602090f35b3461009a57602036600319011261009a576001600160401b0361026c61069b565b165f52600460205260405f20604051905f9080549061028a82610719565b808552916001811690811561015557506001146102b15761011184610105818603826106f8565b5f90815260208120939250905b8082106102d757509091508101602001610105826100f5565b9192600181602092548385880101520191019092916102be565b3461009a57604036600319011261009a576004356001600160401b03811161009a5761032190369060040161066e565b906024356001600160401b03811161009a5761034190369060040161066e565b60015491949093916001600160a01b03163303610613575081019060208183031261009a578035906001600160401b03821161009a57019160408383031261009a5760405192604084018481106001600160401b038211176105915760405280356001600160401b038116810361009a5784526020810135906001600160401b03821161009a570182601f8201121561009a578035906001600160401b03821161059157604051936103fd601f8401601f1916602001866106f8565b8285526020838301011161009a57815f9260208093018387013784010152602083019182526001600160401b038351165f52600460205260405f20906001600160401b0381116105915761045b816104558454610719565b84610751565b5f601f82116001146105b057819061048b939495965f926105a5575b50508160011b915f199060031b1c19161790565b90555b51906001600160401b038151165f52600360205260405f208251926001600160401b038411610591576104c5846104558454610719565b602090601f85116001146105265793806104fc926001600160401b03965f9261051b5750508160011b915f199060031b1c19161790565b90555b51165f908152600260205260409020805460ff19166001179055005b015190508680610477565b90601f19851691835f52815f20925f5b81811061057957509160019391876001600160401b03989410610561575b505050811b0190556104ff565b01515f1960f88460031b161c19169055858080610554565b92936020600181928786015181550195019301610536565b634e487b7160e01b5f52604160045260245ffd5b013590508680610477565b601f19821695835f5260205f20915f5b8881106105fb575083600195969798106105e2575b505050811b01905561048e565b01355f19600384901b60f8161c191690558580806105d5565b909260206001819286860135815501940191016105c0565b62461bcd60e51b815260206004820152603060248201527f4f6e6c79207468652073657276696365206d616e616765722063616e2063616c60448201526f36103a3434b990333ab731ba34b7b71760811b6064820152608490fd5b9181601f8401121561009a578235916001600160401b03831161009a576020838186019501011161009a57565b600435906001600160401b038216820361009a57565b9190916020815282518060208301525f5b8181106106e2575060409293505f838284010152601f8019910116010190565b80602080928701015160408286010152016106c2565b90601f801991011681019081106001600160401b0382111761059157604052565b90600182811c92168015610747575b602083101461073357565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610728565b601f821161075e57505050565b5f5260205f20906020601f840160051c83019310610796575b601f0160051c01905b81811061078b575050565b5f8155600101610780565b909150819061077756fea264697066735822122045872f62eee121972ae77d4e3637a87d5bb59afad38b7ebe942a0acd5e1e0d0264736f6c634300081c0033 + ///0x6080806040526004361015610012575f80fd5b5f905f3560e01c908163489584421461052b57508063a127f1881461044d578063aa32d9f4146104105763ed0226481461004a575f80fd5b3461040c57604036600319011261040c576004356001600160401b03811161040c5761007a90369060040161062a565b91906024356001600160401b03811161040c5761009b90369060040161062a565b5f549094906001600160a01b0316803b1561040c575f6040518092632a3e7f3b60e01b82526040600483015281806100ed6100da60448301898c6106c4565b8281036003190160248401528c8a6106c4565b03915afa8015610401576103ec575b508201916020818403126103e8578035906001600160401b0382116103e45701936040858403126103e85760405194604086018681106001600160401b038211176103d05760405280356001600160401b03811681036103cc5786526020810135906001600160401b0382116103cc570183601f820112156103e4578035906001600160401b0382116103d057604051946101a1601f8401601f19166020018761068f565b828652602083830101116103cc5781869260208093018388013785010152602085019283526001600160401b038551168452600360205260408420916001600160401b0382116103b8576101ff826101f98554610657565b856106e4565b8490601f83116001146103555761022d929186918361034a575b50508160011b915f199060031b1c19161790565b90555b51916001600160401b03815116825260026020526040822083516001600160401b0381116103365761026c816102668454610657565b846106e4565b6020601f82116001146102cc5790806102a39286976001600160401b0397926102c15750508160011b915f199060031b1c19161790565b90555b51168152600160205260408120600160ff1982541617905580f35b015190505f80610219565b82855280852095601f198316865b81811061031e5750916001600160401b03969791846001959410610306575b505050811b0190556102a6565b01515f1960f88460031b161c191690555f80806102f9565b838301518955600190980197602093840193016102da565b634e487b7160e01b84526041600452602484fd5b013590505f80610219565b8386526020862091601f198416875b8181106103a05750908460019594939210610387575b505050811b019055610230565b01355f19600384901b60f8161c191690555f808061037a565b91936020600181928787013581550195019201610364565b634e487b7160e01b85526041600452602485fd5b8580fd5b634e487b7160e01b86526041600452602486fd5b8480fd5b8380fd5b6103f99194505f9061068f565b5f925f6100fc565b6040513d5f823e3d90fd5b5f80fd5b3461040c57602036600319011261040c576001600160401b036104316105cd565b165f526001602052602060ff60405f2054166040519015158152f35b3461040c57602036600319011261040c576001600160401b0361046e6105cd565b165f52600260205260405f20604051905f9080549061048c82610657565b808552916001811690811561050457506001146104c4575b6104c0846104b48186038261068f565b604051918291826105e3565b0390f35b5f90815260208120939250905b8082106104ea575090915081016020016104b4826104a4565b9192600181602092548385880101520191019092916104d1565b60ff191660208087019190915292151560051b850190920192506104b491508390506104a4565b3461040c57602036600319011261040c576001600160401b0361054c6105cd565b165f52600360205260405f205f9080549061056682610657565b8085529160018116908115610504575060011461058d576104c0846104b48186038261068f565b5f90815260208120939250905b8082106105b3575090915081016020016104b4826104a4565b91926001816020925483858801015201910190929161059a565b600435906001600160401b038216820361040c57565b9190916020815282518060208301525f5b818110610614575060409293505f838284010152601f8019910116010190565b80602080928701015160408286010152016105f4565b9181601f8401121561040c578235916001600160401b03831161040c576020838186019501011161040c57565b90600182811c92168015610685575b602083101461067157565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610666565b90601f801991011681019081106001600160401b038211176106b057604052565b634e487b7160e01b5f52604160045260245ffd5b908060209392818452848401375f828201840152601f01601f1916010190565b601f82116106f157505050565b5f5260205f20906020601f840160051c83019310610729575b601f0160051c01905b81811061071e575050565b5f8155600101610713565b909150819061070a56fea264697066735822122063e1a3d7cdb2f65b582452af2df8d2cf65da509f83a79a160b0a90d7fba364dd64736f6c634300081c0033 /// ``` #[rustfmt::skip] #[allow(clippy::all)] pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R`\x046\x10\x15a\0\x12W_\x80\xFD[_5`\xE0\x1C\x90\x81bs\xE1\xD7\x14a\x02\xF1WP\x80cH\x95\x84B\x14a\x02KW\x80cM\xDA\x0BC\x14a\x02#W\x80c\x9BA\xBF#\x14a\x01|W\x80c\xA1'\xF1\x88\x14a\0\x9EWc\xAA2\xD9\xF4\x14a\0]W_\x80\xFD[4a\0\x9AW` 6`\x03\x19\x01\x12a\0\x9AW`\x01`\x01`@\x1B\x03a\0~a\x06\x9BV[\x16_R`\x02` R` `\xFF`@_ T\x16`@Q\x90\x15\x15\x81R\xF3[_\x80\xFD[4a\0\x9AW` 6`\x03\x19\x01\x12a\0\x9AW`\x01`\x01`@\x1B\x03a\0\xBFa\x06\x9BV[\x16_R`\x03` R`@_ `@Q\x90_\x90\x80T\x90a\0\xDD\x82a\x07\x19V[\x80\x85R\x91`\x01\x81\x16\x90\x81\x15a\x01UWP`\x01\x14a\x01\x15W[a\x01\x11\x84a\x01\x05\x81\x86\x03\x82a\x06\xF8V[`@Q\x91\x82\x91\x82a\x06\xB1V[\x03\x90\xF3[_\x90\x81R` \x81 \x93\x92P\x90[\x80\x82\x10a\x01;WP\x90\x91P\x81\x01` \x01a\x01\x05\x82a\0\xF5V[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\x01\"V[`\xFF\x19\x16` \x80\x87\x01\x91\x90\x91R\x92\x15\x15`\x05\x1B\x85\x01\x90\x92\x01\x92Pa\x01\x05\x91P\x83\x90Pa\0\xF5V[4a\0\x9AW` 6`\x03\x19\x01\x12a\0\x9AW`\x045`\x01`\x01`\xA0\x1B\x03\x81\x16\x90\x81\x90\x03a\0\x9AW_T`\x01`\x01`\xA0\x1B\x03\x163\x03a\x01\xCFWk\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\xA0\x1B`\x01T\x16\x17`\x01U_\x80\xF3[`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`&`$\x82\x01R\x7FOnly the owner can call this fun`D\x82\x01Re1\xBA4\xB7\xB7\x17`\xD1\x1B`d\x82\x01R`\x84\x90\xFD[4a\0\x9AW_6`\x03\x19\x01\x12a\0\x9AW`\x01T`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x90\xF3[4a\0\x9AW` 6`\x03\x19\x01\x12a\0\x9AW`\x01`\x01`@\x1B\x03a\x02la\x06\x9BV[\x16_R`\x04` R`@_ `@Q\x90_\x90\x80T\x90a\x02\x8A\x82a\x07\x19V[\x80\x85R\x91`\x01\x81\x16\x90\x81\x15a\x01UWP`\x01\x14a\x02\xB1Wa\x01\x11\x84a\x01\x05\x81\x86\x03\x82a\x06\xF8V[_\x90\x81R` \x81 \x93\x92P\x90[\x80\x82\x10a\x02\xD7WP\x90\x91P\x81\x01` \x01a\x01\x05\x82a\0\xF5V[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\x02\xBEV[4a\0\x9AW`@6`\x03\x19\x01\x12a\0\x9AW`\x045`\x01`\x01`@\x1B\x03\x81\x11a\0\x9AWa\x03!\x906\x90`\x04\x01a\x06nV[\x90`$5`\x01`\x01`@\x1B\x03\x81\x11a\0\x9AWa\x03A\x906\x90`\x04\x01a\x06nV[`\x01T\x91\x94\x90\x93\x91`\x01`\x01`\xA0\x1B\x03\x163\x03a\x06\x13WP\x81\x01\x90` \x81\x83\x03\x12a\0\x9AW\x805\x90`\x01`\x01`@\x1B\x03\x82\x11a\0\x9AW\x01\x91`@\x83\x83\x03\x12a\0\x9AW`@Q\x92`@\x84\x01\x84\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x05\x91W`@R\x805`\x01`\x01`@\x1B\x03\x81\x16\x81\x03a\0\x9AW\x84R` \x81\x015\x90`\x01`\x01`@\x1B\x03\x82\x11a\0\x9AW\x01\x82`\x1F\x82\x01\x12\x15a\0\x9AW\x805\x90`\x01`\x01`@\x1B\x03\x82\x11a\x05\x91W`@Q\x93a\x03\xFD`\x1F\x84\x01`\x1F\x19\x16` \x01\x86a\x06\xF8V[\x82\x85R` \x83\x83\x01\x01\x11a\0\x9AW\x81_\x92` \x80\x93\x01\x83\x87\x017\x84\x01\x01R` \x83\x01\x91\x82R`\x01`\x01`@\x1B\x03\x83Q\x16_R`\x04` R`@_ \x90`\x01`\x01`@\x1B\x03\x81\x11a\x05\x91Wa\x04[\x81a\x04U\x84Ta\x07\x19V[\x84a\x07QV[_`\x1F\x82\x11`\x01\x14a\x05\xB0W\x81\x90a\x04\x8B\x93\x94\x95\x96_\x92a\x05\xA5W[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17\x90V[\x90U[Q\x90`\x01`\x01`@\x1B\x03\x81Q\x16_R`\x03` R`@_ \x82Q\x92`\x01`\x01`@\x1B\x03\x84\x11a\x05\x91Wa\x04\xC5\x84a\x04U\x84Ta\x07\x19V[` \x90`\x1F\x85\x11`\x01\x14a\x05&W\x93\x80a\x04\xFC\x92`\x01`\x01`@\x1B\x03\x96_\x92a\x05\x1BWPP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17\x90V[\x90U[Q\x16_\x90\x81R`\x02` R`@\x90 \x80T`\xFF\x19\x16`\x01\x17\x90U\0[\x01Q\x90P\x86\x80a\x04wV[\x90`\x1F\x19\x85\x16\x91\x83_R\x81_ \x92_[\x81\x81\x10a\x05yWP\x91`\x01\x93\x91\x87`\x01`\x01`@\x1B\x03\x98\x94\x10a\x05aW[PPP\x81\x1B\x01\x90Ua\x04\xFFV[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x85\x80\x80a\x05TV[\x92\x93` `\x01\x81\x92\x87\x86\x01Q\x81U\x01\x95\x01\x93\x01a\x056V[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[\x015\x90P\x86\x80a\x04wV[`\x1F\x19\x82\x16\x95\x83_R` _ \x91_[\x88\x81\x10a\x05\xFBWP\x83`\x01\x95\x96\x97\x98\x10a\x05\xE2W[PPP\x81\x1B\x01\x90Ua\x04\x8EV[\x015_\x19`\x03\x84\x90\x1B`\xF8\x16\x1C\x19\x16\x90U\x85\x80\x80a\x05\xD5V[\x90\x92` `\x01\x81\x92\x86\x86\x015\x81U\x01\x94\x01\x91\x01a\x05\xC0V[bF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`0`$\x82\x01R\x7FOnly the service manager can cal`D\x82\x01Ro6\x10:44\xB9\x903:\xB71\xBA4\xB7\xB7\x17`\x81\x1B`d\x82\x01R`\x84\x90\xFD[\x91\x81`\x1F\x84\x01\x12\x15a\0\x9AW\x825\x91`\x01`\x01`@\x1B\x03\x83\x11a\0\x9AW` \x83\x81\x86\x01\x95\x01\x01\x11a\0\x9AWV[`\x045\x90`\x01`\x01`@\x1B\x03\x82\x16\x82\x03a\0\x9AWV[\x91\x90\x91` \x81R\x82Q\x80` \x83\x01R_[\x81\x81\x10a\x06\xE2WP`@\x92\x93P_\x83\x82\x84\x01\x01R`\x1F\x80\x19\x91\x01\x16\x01\x01\x90V[\x80` \x80\x92\x87\x01\x01Q`@\x82\x86\x01\x01R\x01a\x06\xC2V[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x05\x91W`@RV[\x90`\x01\x82\x81\x1C\x92\x16\x80\x15a\x07GW[` \x83\x10\x14a\x073WV[cNH{q`\xE0\x1B_R`\"`\x04R`$_\xFD[\x91`\x7F\x16\x91a\x07(V[`\x1F\x82\x11a\x07^WPPPV[_R` _ \x90` `\x1F\x84\x01`\x05\x1C\x83\x01\x93\x10a\x07\x96W[`\x1F\x01`\x05\x1C\x01\x90[\x81\x81\x10a\x07\x8BWPPV[_\x81U`\x01\x01a\x07\x80V[\x90\x91P\x81\x90a\x07wV\xFE\xA2dipfsX\"\x12 E\x87/b\xEE\xE1!\x97*\xE7}N67\xA8}[\xB5\x9A\xFA\xD3\x8B~\xBE\x94*\n\xCD^\x1E\r\x02dsolcC\0\x08\x1C\x003", + b"`\x80\x80`@R`\x046\x10\x15a\0\x12W_\x80\xFD[_\x90_5`\xE0\x1C\x90\x81cH\x95\x84B\x14a\x05+WP\x80c\xA1'\xF1\x88\x14a\x04MW\x80c\xAA2\xD9\xF4\x14a\x04\x10Wc\xED\x02&H\x14a\0JW_\x80\xFD[4a\x04\x0CW`@6`\x03\x19\x01\x12a\x04\x0CW`\x045`\x01`\x01`@\x1B\x03\x81\x11a\x04\x0CWa\0z\x906\x90`\x04\x01a\x06*V[\x91\x90`$5`\x01`\x01`@\x1B\x03\x81\x11a\x04\x0CWa\0\x9B\x906\x90`\x04\x01a\x06*V[_T\x90\x94\x90`\x01`\x01`\xA0\x1B\x03\x16\x80;\x15a\x04\x0CW_`@Q\x80\x92c*>\x7F;`\xE0\x1B\x82R`@`\x04\x83\x01R\x81\x80a\0\xEDa\0\xDA`D\x83\x01\x89\x8Ca\x06\xC4V[\x82\x81\x03`\x03\x19\x01`$\x84\x01R\x8C\x8Aa\x06\xC4V[\x03\x91Z\xFA\x80\x15a\x04\x01Wa\x03\xECW[P\x82\x01\x91` \x81\x84\x03\x12a\x03\xE8W\x805\x90`\x01`\x01`@\x1B\x03\x82\x11a\x03\xE4W\x01\x93`@\x85\x84\x03\x12a\x03\xE8W`@Q\x94`@\x86\x01\x86\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\xD0W`@R\x805`\x01`\x01`@\x1B\x03\x81\x16\x81\x03a\x03\xCCW\x86R` \x81\x015\x90`\x01`\x01`@\x1B\x03\x82\x11a\x03\xCCW\x01\x83`\x1F\x82\x01\x12\x15a\x03\xE4W\x805\x90`\x01`\x01`@\x1B\x03\x82\x11a\x03\xD0W`@Q\x94a\x01\xA1`\x1F\x84\x01`\x1F\x19\x16` \x01\x87a\x06\x8FV[\x82\x86R` \x83\x83\x01\x01\x11a\x03\xCCW\x81\x86\x92` \x80\x93\x01\x83\x88\x017\x85\x01\x01R` \x85\x01\x92\x83R`\x01`\x01`@\x1B\x03\x85Q\x16\x84R`\x03` R`@\x84 \x91`\x01`\x01`@\x1B\x03\x82\x11a\x03\xB8Wa\x01\xFF\x82a\x01\xF9\x85Ta\x06WV[\x85a\x06\xE4V[\x84\x90`\x1F\x83\x11`\x01\x14a\x03UWa\x02-\x92\x91\x86\x91\x83a\x03JW[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17\x90V[\x90U[Q\x91`\x01`\x01`@\x1B\x03\x81Q\x16\x82R`\x02` R`@\x82 \x83Q`\x01`\x01`@\x1B\x03\x81\x11a\x036Wa\x02l\x81a\x02f\x84Ta\x06WV[\x84a\x06\xE4V[` `\x1F\x82\x11`\x01\x14a\x02\xCCW\x90\x80a\x02\xA3\x92\x86\x97`\x01`\x01`@\x1B\x03\x97\x92a\x02\xC1WPP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17\x90V[\x90U[Q\x16\x81R`\x01` R`@\x81 `\x01`\xFF\x19\x82T\x16\x17\x90U\x80\xF3[\x01Q\x90P_\x80a\x02\x19V[\x82\x85R\x80\x85 \x95`\x1F\x19\x83\x16\x86[\x81\x81\x10a\x03\x1EWP\x91`\x01`\x01`@\x1B\x03\x96\x97\x91\x84`\x01\x95\x94\x10a\x03\x06W[PPP\x81\x1B\x01\x90Ua\x02\xA6V[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U_\x80\x80a\x02\xF9V[\x83\x83\x01Q\x89U`\x01\x90\x98\x01\x97` \x93\x84\x01\x93\x01a\x02\xDAV[cNH{q`\xE0\x1B\x84R`A`\x04R`$\x84\xFD[\x015\x90P_\x80a\x02\x19V[\x83\x86R` \x86 \x91`\x1F\x19\x84\x16\x87[\x81\x81\x10a\x03\xA0WP\x90\x84`\x01\x95\x94\x93\x92\x10a\x03\x87W[PPP\x81\x1B\x01\x90Ua\x020V[\x015_\x19`\x03\x84\x90\x1B`\xF8\x16\x1C\x19\x16\x90U_\x80\x80a\x03zV[\x91\x93` `\x01\x81\x92\x87\x87\x015\x81U\x01\x95\x01\x92\x01a\x03dV[cNH{q`\xE0\x1B\x85R`A`\x04R`$\x85\xFD[\x85\x80\xFD[cNH{q`\xE0\x1B\x86R`A`\x04R`$\x86\xFD[\x84\x80\xFD[\x83\x80\xFD[a\x03\xF9\x91\x94P_\x90a\x06\x8FV[_\x92_a\0\xFCV[`@Q=_\x82>=\x90\xFD[_\x80\xFD[4a\x04\x0CW` 6`\x03\x19\x01\x12a\x04\x0CW`\x01`\x01`@\x1B\x03a\x041a\x05\xCDV[\x16_R`\x01` R` `\xFF`@_ T\x16`@Q\x90\x15\x15\x81R\xF3[4a\x04\x0CW` 6`\x03\x19\x01\x12a\x04\x0CW`\x01`\x01`@\x1B\x03a\x04na\x05\xCDV[\x16_R`\x02` R`@_ `@Q\x90_\x90\x80T\x90a\x04\x8C\x82a\x06WV[\x80\x85R\x91`\x01\x81\x16\x90\x81\x15a\x05\x04WP`\x01\x14a\x04\xC4W[a\x04\xC0\x84a\x04\xB4\x81\x86\x03\x82a\x06\x8FV[`@Q\x91\x82\x91\x82a\x05\xE3V[\x03\x90\xF3[_\x90\x81R` \x81 \x93\x92P\x90[\x80\x82\x10a\x04\xEAWP\x90\x91P\x81\x01` \x01a\x04\xB4\x82a\x04\xA4V[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\x04\xD1V[`\xFF\x19\x16` \x80\x87\x01\x91\x90\x91R\x92\x15\x15`\x05\x1B\x85\x01\x90\x92\x01\x92Pa\x04\xB4\x91P\x83\x90Pa\x04\xA4V[4a\x04\x0CW` 6`\x03\x19\x01\x12a\x04\x0CW`\x01`\x01`@\x1B\x03a\x05La\x05\xCDV[\x16_R`\x03` R`@_ _\x90\x80T\x90a\x05f\x82a\x06WV[\x80\x85R\x91`\x01\x81\x16\x90\x81\x15a\x05\x04WP`\x01\x14a\x05\x8DWa\x04\xC0\x84a\x04\xB4\x81\x86\x03\x82a\x06\x8FV[_\x90\x81R` \x81 \x93\x92P\x90[\x80\x82\x10a\x05\xB3WP\x90\x91P\x81\x01` \x01a\x04\xB4\x82a\x04\xA4V[\x91\x92`\x01\x81` \x92T\x83\x85\x88\x01\x01R\x01\x91\x01\x90\x92\x91a\x05\x9AV[`\x045\x90`\x01`\x01`@\x1B\x03\x82\x16\x82\x03a\x04\x0CWV[\x91\x90\x91` \x81R\x82Q\x80` \x83\x01R_[\x81\x81\x10a\x06\x14WP`@\x92\x93P_\x83\x82\x84\x01\x01R`\x1F\x80\x19\x91\x01\x16\x01\x01\x90V[\x80` \x80\x92\x87\x01\x01Q`@\x82\x86\x01\x01R\x01a\x05\xF4V[\x91\x81`\x1F\x84\x01\x12\x15a\x04\x0CW\x825\x91`\x01`\x01`@\x1B\x03\x83\x11a\x04\x0CW` \x83\x81\x86\x01\x95\x01\x01\x11a\x04\x0CWV[\x90`\x01\x82\x81\x1C\x92\x16\x80\x15a\x06\x85W[` \x83\x10\x14a\x06qWV[cNH{q`\xE0\x1B_R`\"`\x04R`$_\xFD[\x91`\x7F\x16\x91a\x06fV[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x06\xB0W`@RV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[\x90\x80` \x93\x92\x81\x84R\x84\x84\x017_\x82\x82\x01\x84\x01R`\x1F\x01`\x1F\x19\x16\x01\x01\x90V[`\x1F\x82\x11a\x06\xF1WPPPV[_R` _ \x90` `\x1F\x84\x01`\x05\x1C\x83\x01\x93\x10a\x07)W[`\x1F\x01`\x05\x1C\x01\x90[\x81\x81\x10a\x07\x1EWPPV[_\x81U`\x01\x01a\x07\x13V[\x90\x91P\x81\x90a\x07\nV\xFE\xA2dipfsX\"\x12 c\xE1\xA3\xD7\xCD\xB2\xF6[X$R\xAF-\xF8\xD2\xCFe\xDAP\x9F\x83\xA7\x9A\x16\x0B\n\x90\xD7\xFB\xA3d\xDDdsolcC\0\x08\x1C\x003", ); /**Constructor`. ```solidity - constructor(); + constructor(address serviceManager); ```*/ #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] #[derive(Clone)] - pub struct constructorCall {} + pub struct constructorCall { + pub serviceManager: alloy::sol_types::private::Address, + } const _: () = { use alloy::sol_types as alloy_sol_types; { #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); + type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); + type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); #[cfg(test)] #[allow(dead_code, unreachable_patterns)] fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { @@ -441,20 +421,20 @@ pub mod WavsSubmit { #[doc(hidden)] impl ::core::convert::From for UnderlyingRustTuple<'_> { fn from(value: constructorCall) -> Self { - () + (value.serviceManager,) } } #[automatically_derived] #[doc(hidden)] impl ::core::convert::From> for constructorCall { fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} + Self { serviceManager: tuple.0 } } } } #[automatically_derived] impl alloy_sol_types::SolConstructor for constructorCall { - type Parameters<'a> = (); + type Parameters<'a> = (alloy::sol_types::sol_data::Address,); type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; #[inline] fn new<'a>( @@ -464,7 +444,9 @@ pub mod WavsSubmit { } #[inline] fn tokenize(&self) -> Self::Token<'_> { - () + (::tokenize( + &self.serviceManager, + ),) } } }; @@ -576,111 +558,6 @@ pub mod WavsSubmit { } } }; - /**Function with signature `getServiceManager()` and selector `0x4dda0b43`. - ```solidity - function getServiceManager() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getServiceManagerCall {} - ///Container type for the return parameters of the [`getServiceManager()`](getServiceManagerCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getServiceManagerReturn { - pub _0: alloy::sol_types::private::Address, - } - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getServiceManagerCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getServiceManagerCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getServiceManagerReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getServiceManagerReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getServiceManagerCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getServiceManagerReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getServiceManager()"; - const SELECTOR: [u8; 4] = [77u8, 218u8, 11u8, 67u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; /**Function with signature `getSignature(uint64)` and selector `0x48958442`. ```solidity function getSignature(ISimpleTrigger.TriggerId triggerId) external view returns (bytes memory signature); @@ -789,20 +666,20 @@ pub mod WavsSubmit { } } }; - /**Function with signature `handleAddPayload(bytes,bytes)` and selector `0x0073e1d7`. + /**Function with signature `handleSignedData(bytes,bytes)` and selector `0xed022648`. ```solidity - function handleAddPayload(bytes memory data, bytes memory signature) external; + function handleSignedData(bytes memory data, bytes memory signature) external; ```*/ #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] #[derive(Clone)] - pub struct handleAddPayloadCall { + pub struct handleSignedDataCall { pub data: alloy::sol_types::private::Bytes, pub signature: alloy::sol_types::private::Bytes, } - ///Container type for the return parameters of the [`handleAddPayload(bytes,bytes)`](handleAddPayloadCall) function. + ///Container type for the return parameters of the [`handleSignedData(bytes,bytes)`](handleSignedDataCall) function. #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] #[derive(Clone)] - pub struct handleAddPayloadReturn {} + pub struct handleSignedDataReturn {} #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] const _: () = { use alloy::sol_types as alloy_sol_types; @@ -824,14 +701,14 @@ pub mod WavsSubmit { } #[automatically_derived] #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: handleAddPayloadCall) -> Self { + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: handleSignedDataCall) -> Self { (value.data, value.signature) } } #[automatically_derived] #[doc(hidden)] - impl ::core::convert::From> for handleAddPayloadCall { + impl ::core::convert::From> for handleSignedDataCall { fn from(tuple: UnderlyingRustTuple<'_>) -> Self { Self { data: tuple.0, signature: tuple.1 } } @@ -853,29 +730,29 @@ pub mod WavsSubmit { } #[automatically_derived] #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: handleAddPayloadReturn) -> Self { + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: handleSignedDataReturn) -> Self { () } } #[automatically_derived] #[doc(hidden)] - impl ::core::convert::From> for handleAddPayloadReturn { + impl ::core::convert::From> for handleSignedDataReturn { fn from(tuple: UnderlyingRustTuple<'_>) -> Self { Self {} } } } #[automatically_derived] - impl alloy_sol_types::SolCall for handleAddPayloadCall { + impl alloy_sol_types::SolCall for handleSignedDataCall { type Parameters<'a> = (alloy::sol_types::sol_data::Bytes, alloy::sol_types::sol_data::Bytes); type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = handleAddPayloadReturn; + type Return = handleSignedDataReturn; type ReturnTuple<'a> = (); type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "handleAddPayload(bytes,bytes)"; - const SELECTOR: [u8; 4] = [0u8, 115u8, 225u8, 215u8]; + const SIGNATURE: &'static str = "handleSignedData(bytes,bytes)"; + const SELECTOR: [u8; 4] = [237u8, 2u8, 38u8, 72u8]; #[inline] fn new<'a>( tuple: as alloy_sol_types::SolType>::RustType, @@ -1013,124 +890,15 @@ pub mod WavsSubmit { } } }; - /**Function with signature `setServiceManager(address)` and selector `0x9b41bf23`. - ```solidity - function setServiceManager(address newServiceManager) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setServiceManagerCall { - pub newServiceManager: alloy::sol_types::private::Address, - } - ///Container type for the return parameters of the [`setServiceManager(address)`](setServiceManagerCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct setServiceManagerReturn {} - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] - const _: () = { - use alloy::sol_types as alloy_sol_types; - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setServiceManagerCall) -> Self { - (value.newServiceManager,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setServiceManagerCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { newServiceManager: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: setServiceManagerReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for setServiceManagerReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for setServiceManagerCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = setServiceManagerReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "setServiceManager(address)"; - const SELECTOR: [u8; 4] = [155u8, 65u8, 191u8, 35u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - (::tokenize( - &self.newServiceManager, - ),) - } - #[inline] - fn abi_decode_returns( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - as alloy_sol_types::SolType>::abi_decode_sequence( - data, validate, - ) - .map(Into::into) - } - } - }; - ///Container for all the [`WavsSubmit`](self) function calls. - pub enum WavsSubmitCalls { + ///Container for all the [`SimpleSubmit`](self) function calls. + pub enum SimpleSubmitCalls { getData(getDataCall), - getServiceManager(getServiceManagerCall), getSignature(getSignatureCall), - handleAddPayload(handleAddPayloadCall), + handleSignedData(handleSignedDataCall), isValidTriggerId(isValidTriggerIdCall), - setServiceManager(setServiceManagerCall), } #[automatically_derived] - impl WavsSubmitCalls { + impl SimpleSubmitCalls { /// All the selectors of this enum. /// /// Note that the selectors might not be in the same order as the variants. @@ -1138,36 +906,28 @@ pub mod WavsSubmit { /// /// Prefer using `SolInterface` methods instead. pub const SELECTORS: &'static [[u8; 4usize]] = &[ - [0u8, 115u8, 225u8, 215u8], [72u8, 149u8, 132u8, 66u8], - [77u8, 218u8, 11u8, 67u8], - [155u8, 65u8, 191u8, 35u8], [161u8, 39u8, 241u8, 136u8], [170u8, 50u8, 217u8, 244u8], + [237u8, 2u8, 38u8, 72u8], ]; } #[automatically_derived] - impl alloy_sol_types::SolInterface for WavsSubmitCalls { - const NAME: &'static str = "WavsSubmitCalls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 6usize; + impl alloy_sol_types::SolInterface for SimpleSubmitCalls { + const NAME: &'static str = "SimpleSubmitCalls"; + const MIN_DATA_LENGTH: usize = 32usize; + const COUNT: usize = 4usize; #[inline] fn selector(&self) -> [u8; 4] { match self { Self::getData(_) => ::SELECTOR, - Self::getServiceManager(_) => { - ::SELECTOR - } Self::getSignature(_) => ::SELECTOR, - Self::handleAddPayload(_) => { - ::SELECTOR + Self::handleSignedData(_) => { + ::SELECTOR } Self::isValidTriggerId(_) => { ::SELECTOR } - Self::setServiceManager(_) => { - ::SELECTOR - } } } #[inline] @@ -1185,76 +945,56 @@ pub mod WavsSubmit { data: &[u8], validate: bool, ) -> alloy_sol_types::Result { - static DECODE_SHIMS: &[fn(&[u8], bool) -> alloy_sol_types::Result] = &[ - { - fn handleAddPayload( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(WavsSubmitCalls::handleAddPayload) - } - handleAddPayload - }, + static DECODE_SHIMS: &[fn( + &[u8], + bool, + ) + -> alloy_sol_types::Result] = &[ { fn getSignature( data: &[u8], validate: bool, - ) -> alloy_sol_types::Result { + ) -> alloy_sol_types::Result { ::abi_decode_raw( data, validate, ) - .map(WavsSubmitCalls::getSignature) + .map(SimpleSubmitCalls::getSignature) } getSignature }, { - fn getServiceManager( + fn getData( data: &[u8], validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(WavsSubmitCalls::getServiceManager) + ) -> alloy_sol_types::Result { + ::abi_decode_raw(data, validate) + .map(SimpleSubmitCalls::getData) } - getServiceManager + getData }, { - fn setServiceManager( + fn isValidTriggerId( data: &[u8], validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( + ) -> alloy_sol_types::Result { + ::abi_decode_raw( data, validate, ) - .map(WavsSubmitCalls::setServiceManager) - } - setServiceManager - }, - { - fn getData( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(WavsSubmitCalls::getData) + .map(SimpleSubmitCalls::isValidTriggerId) } - getData + isValidTriggerId }, { - fn isValidTriggerId( + fn handleSignedData( data: &[u8], validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( + ) -> alloy_sol_types::Result { + ::abi_decode_raw( data, validate, ) - .map(WavsSubmitCalls::isValidTriggerId) + .map(SimpleSubmitCalls::handleSignedData) } - isValidTriggerId + handleSignedData }, ]; let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { @@ -1271,21 +1011,15 @@ pub mod WavsSubmit { Self::getData(inner) => { ::abi_encoded_size(inner) } - Self::getServiceManager(inner) => { - ::abi_encoded_size(inner) - } Self::getSignature(inner) => { ::abi_encoded_size(inner) } - Self::handleAddPayload(inner) => { - ::abi_encoded_size(inner) + Self::handleSignedData(inner) => { + ::abi_encoded_size(inner) } Self::isValidTriggerId(inner) => { ::abi_encoded_size(inner) } - Self::setServiceManager(inner) => { - ::abi_encoded_size(inner) - } } } #[inline] @@ -1294,28 +1028,22 @@ pub mod WavsSubmit { Self::getData(inner) => { ::abi_encode_raw(inner, out) } - Self::getServiceManager(inner) => { - ::abi_encode_raw(inner, out) - } Self::getSignature(inner) => { ::abi_encode_raw(inner, out) } - Self::handleAddPayload(inner) => { - ::abi_encode_raw(inner, out) + Self::handleSignedData(inner) => { + ::abi_encode_raw(inner, out) } Self::isValidTriggerId(inner) => { ::abi_encode_raw(inner, out) } - Self::setServiceManager(inner) => { - ::abi_encode_raw(inner, out) - } } } } use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`WavsSubmit`](self) contract instance. + /**Creates a new wrapper around an on-chain [`SimpleSubmit`](self) contract instance. - See the [wrapper's documentation](`WavsSubmitInstance`) for more details.*/ + See the [wrapper's documentation](`SimpleSubmitInstance`) for more details.*/ #[inline] pub const fn new< T: alloy_contract::private::Transport + ::core::clone::Clone, @@ -1324,8 +1052,8 @@ pub mod WavsSubmit { >( address: alloy_sol_types::private::Address, provider: P, - ) -> WavsSubmitInstance { - WavsSubmitInstance::::new(address, provider) + ) -> SimpleSubmitInstance { + SimpleSubmitInstance::::new(address, provider) } /**Deploys this contract using the given `provider` and constructor arguments, if any. @@ -1339,9 +1067,10 @@ pub mod WavsSubmit { N: alloy_contract::private::Network, >( provider: P, - ) -> impl ::core::future::Future>> + serviceManager: alloy::sol_types::private::Address, + ) -> impl ::core::future::Future>> { - WavsSubmitInstance::::deploy(provider) + SimpleSubmitInstance::::deploy(provider, serviceManager) } /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` and constructor arguments, if any. @@ -1355,13 +1084,14 @@ pub mod WavsSubmit { N: alloy_contract::private::Network, >( provider: P, + serviceManager: alloy::sol_types::private::Address, ) -> alloy_contract::RawCallBuilder { - WavsSubmitInstance::::deploy_builder(provider) + SimpleSubmitInstance::::deploy_builder(provider, serviceManager) } - /**A [`WavsSubmit`](self) instance. + /**A [`SimpleSubmit`](self) instance. Contains type-safe methods for interacting with an on-chain instance of the - [`WavsSubmit`](self) contract located at a given `address`, using a given + [`SimpleSubmit`](self) contract located at a given `address`, using a given provider `P`. If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) @@ -1370,16 +1100,16 @@ pub mod WavsSubmit { See the [module-level documentation](self) for all the available methods.*/ #[derive(Clone)] - pub struct WavsSubmitInstance { + pub struct SimpleSubmitInstance { address: alloy_sol_types::private::Address, provider: P, _network_transport: ::core::marker::PhantomData<(N, T)>, } #[automatically_derived] - impl ::core::fmt::Debug for WavsSubmitInstance { + impl ::core::fmt::Debug for SimpleSubmitInstance { #[inline] fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("WavsSubmitInstance").field(&self.address).finish() + f.debug_tuple("SimpleSubmitInstance").field(&self.address).finish() } } /// Instantiation and getters/setters. @@ -1388,11 +1118,11 @@ pub mod WavsSubmit { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > WavsSubmitInstance + > SimpleSubmitInstance { - /**Creates a new wrapper around an on-chain [`WavsSubmit`](self) contract instance. + /**Creates a new wrapper around an on-chain [`SimpleSubmit`](self) contract instance. - See the [wrapper's documentation](`WavsSubmitInstance`) for more details.*/ + See the [wrapper's documentation](`SimpleSubmitInstance`) for more details.*/ #[inline] pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { Self { address, provider, _network_transport: ::core::marker::PhantomData } @@ -1403,8 +1133,11 @@ pub mod WavsSubmit { For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ #[inline] - pub async fn deploy(provider: P) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); + pub async fn deploy( + provider: P, + serviceManager: alloy::sol_types::private::Address, + ) -> alloy_contract::Result> { + let call_builder = Self::deploy_builder(provider, serviceManager); let contract_address = call_builder.deploy().await?; Ok(Self::new(contract_address, call_builder.provider)) } @@ -1414,10 +1147,20 @@ pub mod WavsSubmit { This is a simple wrapper around creating a `RawCallBuilder` with the data set to the bytecode concatenated with the constructor's ABI-encoded arguments.*/ #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { + pub fn deploy_builder( + provider: P, + serviceManager: alloy::sol_types::private::Address, + ) -> alloy_contract::RawCallBuilder { alloy_contract::RawCallBuilder::new_raw_deploy( provider, - ::core::clone::Clone::clone(&BYTECODE), + [ + &BYTECODE[..], + &alloy_sol_types::SolConstructor::abi_encode(&constructorCall { + serviceManager, + })[..], + ] + .concat() + .into(), ) } /// Returns a reference to the address. @@ -1441,11 +1184,11 @@ pub mod WavsSubmit { &self.provider } } - impl WavsSubmitInstance { + impl SimpleSubmitInstance { /// Clones the provider and returns a new instance with the cloned provider. #[inline] - pub fn with_cloned_provider(self) -> WavsSubmitInstance { - WavsSubmitInstance { + pub fn with_cloned_provider(self) -> SimpleSubmitInstance { + SimpleSubmitInstance { address: self.address, provider: ::core::clone::Clone::clone(&self.provider), _network_transport: ::core::marker::PhantomData, @@ -1458,7 +1201,7 @@ pub mod WavsSubmit { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > WavsSubmitInstance + > SimpleSubmitInstance { /// Creates a new call builder using this contract instance's provider and address. /// @@ -1477,12 +1220,6 @@ pub mod WavsSubmit { ) -> alloy_contract::SolCallBuilder { self.call_builder(&getDataCall { triggerId }) } - ///Creates a new call builder for the [`getServiceManager`] function. - pub fn getServiceManager( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getServiceManagerCall {}) - } ///Creates a new call builder for the [`getSignature`] function. pub fn getSignature( &self, @@ -1490,13 +1227,13 @@ pub mod WavsSubmit { ) -> alloy_contract::SolCallBuilder { self.call_builder(&getSignatureCall { triggerId }) } - ///Creates a new call builder for the [`handleAddPayload`] function. - pub fn handleAddPayload( + ///Creates a new call builder for the [`handleSignedData`] function. + pub fn handleSignedData( &self, data: alloy::sol_types::private::Bytes, signature: alloy::sol_types::private::Bytes, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&handleAddPayloadCall { data, signature }) + ) -> alloy_contract::SolCallBuilder { + self.call_builder(&handleSignedDataCall { data, signature }) } ///Creates a new call builder for the [`isValidTriggerId`] function. pub fn isValidTriggerId( @@ -1505,13 +1242,6 @@ pub mod WavsSubmit { ) -> alloy_contract::SolCallBuilder { self.call_builder(&isValidTriggerIdCall { triggerId }) } - ///Creates a new call builder for the [`setServiceManager`] function. - pub fn setServiceManager( - &self, - newServiceManager: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&setServiceManagerCall { newServiceManager }) - } } /// Event filters. #[automatically_derived] @@ -1519,7 +1249,7 @@ pub mod WavsSubmit { T: alloy_contract::private::Transport + ::core::clone::Clone, P: alloy_contract::private::Provider, N: alloy_contract::private::Network, - > WavsSubmitInstance + > SimpleSubmitInstance { /// Creates a new event filter using this contract instance's provider and address. /// diff --git a/crates/bindings/src/simpletrigger.rs b/crates/bindings/src/simpletrigger.rs index f9b983ca..016964e0 100644 --- a/crates/bindings/src/simpletrigger.rs +++ b/crates/bindings/src/simpletrigger.rs @@ -614,22 +614,22 @@ pub mod SimpleTrigger { /// The creation / init bytecode of the contract. /// /// ```text - ///0x608080604052346015576106d4908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816342227fa4146104b357508063913b1fbf14610450578063ce289612146103ef578063e31e0788146100e25763e328ed7714610053575f80fd5b346100de5760203660031901126100de576004356001600160401b0381168091036100de576100da9060606040805161008b81610543565b5f81525f60208201520152805f525f6020526100c9600160405f20818060a01b03815416604051946100bc86610543565b855260208501520161057f565b60408201526040519182918261065e565b0390f35b5f80fd5b346100de5760203660031901126100de576004356001600160401b0381116100de57366023820112156100de5780600401356001600160401b038111610309576040519161013a601f8301601f19166020018461055e565b81835236602483830101116100de57815f92602460209301838601378301015260025460016001600160401b038216016001600160401b0381116103db576001600160401b031680916001600160401b0319161760025560405190604082018281106001600160401b038211176103095760405233825260208201928352805f525f602052600160405f20818060a01b038451166bffffffffffffffffffffffff60a01b8254161781550183518051906001600160401b038211610309578190610204845461050b565b601f811161038b575b50602090601f8311600114610328575f9261031d575b50508160011b915f199060031b1c19161790555b335f52600160205260405f209081549068010000000000000000821015610309577f86eacd23610d81706516de1ed0476c87772fdf939c7c771fbbd7f0230d619e689461030494610294846102e29660016102f0970181556104d6565b81549060031b906001600160401b0386831b921b191617905560018060a01b03905116905190604051926102c784610543565b8352602083015260408201526040519283916020830161065e565b03601f19810183528261055e565b60405191829160208352602083019061061f565b0390a1005b634e487b7160e01b5f52604160045260245ffd5b015190508680610223565b5f8581528281209350601f198516905b818110610373575090846001959493921061035b575b505050811b019055610237565b01515f1960f88460031b161c1916905586808061034e565b92936020600181928786015181550195019301610338565b909150835f5260205f20601f840160051c810191602085106103d1575b90601f859493920160051c01905b8181106103c3575061020d565b5f81558493506001016103b6565b90915081906103a8565b634e487b7160e01b5f52601160045260245ffd5b346100de5760203660031901126100de576004356001600160401b0381168091036100de575f525f60205260405f206104336001808060a01b03835416920161057f565b906100da604051928392835260406020840152604083019061061f565b346100de5760403660031901126100de576004356001600160a01b038116908190036100de57602435905f52600160205260405f209081548110156100de576104a36001600160401b03916020936104d6565b90549060031b1c16604051908152f35b346100de575f3660031901126100de576020906001600160401b03600254168152f35b91909180548310156104f7575f52601860205f208360021c019260031b1690565b634e487b7160e01b5f52603260045260245ffd5b90600182811c92168015610539575b602083101461052557565b634e487b7160e01b5f52602260045260245ffd5b91607f169161051a565b606081019081106001600160401b0382111761030957604052565b90601f801991011681019081106001600160401b0382111761030957604052565b9060405191825f8254926105928461050b565b80845293600181169081156105fd57506001146105b9575b506105b79250038361055e565b565b90505f9291925260205f20905f915b8183106105e15750509060206105b7928201015f6105aa565b60209193508060019154838589010152019101909184926105c8565b9050602092506105b794915060ff191682840152151560051b8201015f6105aa565b91908251928382525f5b848110610649575050825f602080949584010152601f8019910116010190565b80602080928401015182828601015201610629565b6080604061069b93602084526001600160401b03815116602085015260018060a01b0360208201511682850152015191606080820152019061061f565b9056fea2646970667358221220819d307e8988fa475816f424311b37b78e6127e466c32db9ab78e41154769beb64736f6c634300081c0033 + ///0x608080604052346015576106d4908161001a8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816342227fa4146104b357508063913b1fbf14610450578063ce289612146103ef578063e31e0788146100e25763e328ed7714610053575f80fd5b346100de5760203660031901126100de576004356001600160401b0381168091036100de576100da9060606040805161008b81610543565b5f81525f60208201520152805f525f6020526100c9600160405f20818060a01b03815416604051946100bc86610543565b855260208501520161057f565b60408201526040519182918261065e565b0390f35b5f80fd5b346100de5760203660031901126100de576004356001600160401b0381116100de57366023820112156100de5780600401356001600160401b038111610309576040519161013a601f8301601f19166020018461055e565b81835236602483830101116100de57815f92602460209301838601378301015260025460016001600160401b038216016001600160401b0381116103db576001600160401b031680916001600160401b0319161760025560405190604082018281106001600160401b038211176103095760405233825260208201928352805f525f602052600160405f20818060a01b038451166bffffffffffffffffffffffff60a01b8254161781550183518051906001600160401b038211610309578190610204845461050b565b601f811161038b575b50602090601f8311600114610328575f9261031d575b50508160011b915f199060031b1c19161790555b335f52600160205260405f209081549068010000000000000000821015610309577f86eacd23610d81706516de1ed0476c87772fdf939c7c771fbbd7f0230d619e689461030494610294846102e29660016102f0970181556104d6565b81549060031b906001600160401b0386831b921b191617905560018060a01b03905116905190604051926102c784610543565b8352602083015260408201526040519283916020830161065e565b03601f19810183528261055e565b60405191829160208352602083019061061f565b0390a1005b634e487b7160e01b5f52604160045260245ffd5b015190508680610223565b5f8581528281209350601f198516905b818110610373575090846001959493921061035b575b505050811b019055610237565b01515f1960f88460031b161c1916905586808061034e565b92936020600181928786015181550195019301610338565b909150835f5260205f20601f840160051c810191602085106103d1575b90601f859493920160051c01905b8181106103c3575061020d565b5f81558493506001016103b6565b90915081906103a8565b634e487b7160e01b5f52601160045260245ffd5b346100de5760203660031901126100de576004356001600160401b0381168091036100de575f525f60205260405f206104336001808060a01b03835416920161057f565b906100da604051928392835260406020840152604083019061061f565b346100de5760403660031901126100de576004356001600160a01b038116908190036100de57602435905f52600160205260405f209081548110156100de576104a36001600160401b03916020936104d6565b90549060031b1c16604051908152f35b346100de575f3660031901126100de576020906001600160401b03600254168152f35b91909180548310156104f7575f52601860205f208360021c019260031b1690565b634e487b7160e01b5f52603260045260245ffd5b90600182811c92168015610539575b602083101461052557565b634e487b7160e01b5f52602260045260245ffd5b91607f169161051a565b606081019081106001600160401b0382111761030957604052565b90601f801991011681019081106001600160401b0382111761030957604052565b9060405191825f8254926105928461050b565b80845293600181169081156105fd57506001146105b9575b506105b79250038361055e565b565b90505f9291925260205f20905f915b8183106105e15750509060206105b7928201015f6105aa565b60209193508060019154838589010152019101909184926105c8565b9050602092506105b794915060ff191682840152151560051b8201015f6105aa565b91908251928382525f5b848110610649575050825f602080949584010152601f8019910116010190565b80602080928401015182828601015201610629565b6080604061069b93602084526001600160401b03815116602085015260018060a01b0360208201511682850152015191606080820152019061061f565b9056fea2646970667358221220f226d212c2af8f1e9fad4d0e187d029e8e2323e98bf54cc0950cbed6bfd177ec64736f6c634300081c0033 /// ``` #[rustfmt::skip] #[allow(clippy::all)] pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R4`\x15Wa\x06\xD4\x90\x81a\0\x1A\x829\xF3[_\x80\xFD\xFE`\x80\x80`@R`\x046\x10\x15a\0\x12W_\x80\xFD[_5`\xE0\x1C\x90\x81cB\"\x7F\xA4\x14a\x04\xB3WP\x80c\x91;\x1F\xBF\x14a\x04PW\x80c\xCE(\x96\x12\x14a\x03\xEFW\x80c\xE3\x1E\x07\x88\x14a\0\xE2Wc\xE3(\xEDw\x14a\0SW_\x80\xFD[4a\0\xDEW` 6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`@\x1B\x03\x81\x16\x80\x91\x03a\0\xDEWa\0\xDA\x90```@\x80Qa\0\x8B\x81a\x05CV[_\x81R_` \x82\x01R\x01R\x80_R_` Ra\0\xC9`\x01`@_ \x81\x80`\xA0\x1B\x03\x81T\x16`@Q\x94a\0\xBC\x86a\x05CV[\x85R` \x85\x01R\x01a\x05\x7FV[`@\x82\x01R`@Q\x91\x82\x91\x82a\x06^V[\x03\x90\xF3[_\x80\xFD[4a\0\xDEW` 6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`@\x1B\x03\x81\x11a\0\xDEW6`#\x82\x01\x12\x15a\0\xDEW\x80`\x04\x015`\x01`\x01`@\x1B\x03\x81\x11a\x03\tW`@Q\x91a\x01:`\x1F\x83\x01`\x1F\x19\x16` \x01\x84a\x05^V[\x81\x83R6`$\x83\x83\x01\x01\x11a\0\xDEW\x81_\x92`$` \x93\x01\x83\x86\x017\x83\x01\x01R`\x02T`\x01`\x01`\x01`@\x1B\x03\x82\x16\x01`\x01`\x01`@\x1B\x03\x81\x11a\x03\xDBW`\x01`\x01`@\x1B\x03\x16\x80\x91`\x01`\x01`@\x1B\x03\x19\x16\x17`\x02U`@Q\x90`@\x82\x01\x82\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\tW`@R3\x82R` \x82\x01\x92\x83R\x80_R_` R`\x01`@_ \x81\x80`\xA0\x1B\x03\x84Q\x16k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\xA0\x1B\x82T\x16\x17\x81U\x01\x83Q\x80Q\x90`\x01`\x01`@\x1B\x03\x82\x11a\x03\tW\x81\x90a\x02\x04\x84Ta\x05\x0BV[`\x1F\x81\x11a\x03\x8BW[P` \x90`\x1F\x83\x11`\x01\x14a\x03(W_\x92a\x03\x1DW[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17\x90U[3_R`\x01` R`@_ \x90\x81T\x90h\x01\0\0\0\0\0\0\0\0\x82\x10\x15a\x03\tW\x7F\x86\xEA\xCD#a\r\x81pe\x16\xDE\x1E\xD0Gl\x87w/\xDF\x93\x9C|w\x1F\xBB\xD7\xF0#\ra\x9Eh\x94a\x03\x04\x94a\x02\x94\x84a\x02\xE2\x96`\x01a\x02\xF0\x97\x01\x81Ua\x04\xD6V[\x81T\x90`\x03\x1B\x90`\x01`\x01`@\x1B\x03\x86\x83\x1B\x92\x1B\x19\x16\x17\x90U`\x01\x80`\xA0\x1B\x03\x90Q\x16\x90Q\x90`@Q\x92a\x02\xC7\x84a\x05CV[\x83R` \x83\x01R`@\x82\x01R`@Q\x92\x83\x91` \x83\x01a\x06^V[\x03`\x1F\x19\x81\x01\x83R\x82a\x05^V[`@Q\x91\x82\x91` \x83R` \x83\x01\x90a\x06\x1FV[\x03\x90\xA1\0[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[\x01Q\x90P\x86\x80a\x02#V[_\x85\x81R\x82\x81 \x93P`\x1F\x19\x85\x16\x90[\x81\x81\x10a\x03sWP\x90\x84`\x01\x95\x94\x93\x92\x10a\x03[W[PPP\x81\x1B\x01\x90Ua\x027V[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x86\x80\x80a\x03NV[\x92\x93` `\x01\x81\x92\x87\x86\x01Q\x81U\x01\x95\x01\x93\x01a\x038V[\x90\x91P\x83_R` _ `\x1F\x84\x01`\x05\x1C\x81\x01\x91` \x85\x10a\x03\xD1W[\x90`\x1F\x85\x94\x93\x92\x01`\x05\x1C\x01\x90[\x81\x81\x10a\x03\xC3WPa\x02\rV[_\x81U\x84\x93P`\x01\x01a\x03\xB6V[\x90\x91P\x81\x90a\x03\xA8V[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[4a\0\xDEW` 6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`@\x1B\x03\x81\x16\x80\x91\x03a\0\xDEW_R_` R`@_ a\x043`\x01\x80\x80`\xA0\x1B\x03\x83T\x16\x92\x01a\x05\x7FV[\x90a\0\xDA`@Q\x92\x83\x92\x83R`@` \x84\x01R`@\x83\x01\x90a\x06\x1FV[4a\0\xDEW`@6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`\xA0\x1B\x03\x81\x16\x90\x81\x90\x03a\0\xDEW`$5\x90_R`\x01` R`@_ \x90\x81T\x81\x10\x15a\0\xDEWa\x04\xA3`\x01`\x01`@\x1B\x03\x91` \x93a\x04\xD6V[\x90T\x90`\x03\x1B\x1C\x16`@Q\x90\x81R\xF3[4a\0\xDEW_6`\x03\x19\x01\x12a\0\xDEW` \x90`\x01`\x01`@\x1B\x03`\x02T\x16\x81R\xF3[\x91\x90\x91\x80T\x83\x10\x15a\x04\xF7W_R`\x18` _ \x83`\x02\x1C\x01\x92`\x03\x1B\x16\x90V[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[\x90`\x01\x82\x81\x1C\x92\x16\x80\x15a\x059W[` \x83\x10\x14a\x05%WV[cNH{q`\xE0\x1B_R`\"`\x04R`$_\xFD[\x91`\x7F\x16\x91a\x05\x1AV[``\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\tW`@RV[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\tW`@RV[\x90`@Q\x91\x82_\x82T\x92a\x05\x92\x84a\x05\x0BV[\x80\x84R\x93`\x01\x81\x16\x90\x81\x15a\x05\xFDWP`\x01\x14a\x05\xB9W[Pa\x05\xB7\x92P\x03\x83a\x05^V[V[\x90P_\x92\x91\x92R` _ \x90_\x91[\x81\x83\x10a\x05\xE1WPP\x90` a\x05\xB7\x92\x82\x01\x01_a\x05\xAAV[` \x91\x93P\x80`\x01\x91T\x83\x85\x89\x01\x01R\x01\x91\x01\x90\x91\x84\x92a\x05\xC8V[\x90P` \x92Pa\x05\xB7\x94\x91P`\xFF\x19\x16\x82\x84\x01R\x15\x15`\x05\x1B\x82\x01\x01_a\x05\xAAV[\x91\x90\x82Q\x92\x83\x82R_[\x84\x81\x10a\x06IWPP\x82_` \x80\x94\x95\x84\x01\x01R`\x1F\x80\x19\x91\x01\x16\x01\x01\x90V[\x80` \x80\x92\x84\x01\x01Q\x82\x82\x86\x01\x01R\x01a\x06)V[`\x80`@a\x06\x9B\x93` \x84R`\x01`\x01`@\x1B\x03\x81Q\x16` \x85\x01R`\x01\x80`\xA0\x1B\x03` \x82\x01Q\x16\x82\x85\x01R\x01Q\x91``\x80\x82\x01R\x01\x90a\x06\x1FV[\x90V\xFE\xA2dipfsX\"\x12 \x81\x9D0~\x89\x88\xFAGX\x16\xF4$1\x1B7\xB7\x8Ea'\xE4f\xC3-\xB9\xABx\xE4\x11Tv\x9B\xEBdsolcC\0\x08\x1C\x003", + b"`\x80\x80`@R4`\x15Wa\x06\xD4\x90\x81a\0\x1A\x829\xF3[_\x80\xFD\xFE`\x80\x80`@R`\x046\x10\x15a\0\x12W_\x80\xFD[_5`\xE0\x1C\x90\x81cB\"\x7F\xA4\x14a\x04\xB3WP\x80c\x91;\x1F\xBF\x14a\x04PW\x80c\xCE(\x96\x12\x14a\x03\xEFW\x80c\xE3\x1E\x07\x88\x14a\0\xE2Wc\xE3(\xEDw\x14a\0SW_\x80\xFD[4a\0\xDEW` 6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`@\x1B\x03\x81\x16\x80\x91\x03a\0\xDEWa\0\xDA\x90```@\x80Qa\0\x8B\x81a\x05CV[_\x81R_` \x82\x01R\x01R\x80_R_` Ra\0\xC9`\x01`@_ \x81\x80`\xA0\x1B\x03\x81T\x16`@Q\x94a\0\xBC\x86a\x05CV[\x85R` \x85\x01R\x01a\x05\x7FV[`@\x82\x01R`@Q\x91\x82\x91\x82a\x06^V[\x03\x90\xF3[_\x80\xFD[4a\0\xDEW` 6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`@\x1B\x03\x81\x11a\0\xDEW6`#\x82\x01\x12\x15a\0\xDEW\x80`\x04\x015`\x01`\x01`@\x1B\x03\x81\x11a\x03\tW`@Q\x91a\x01:`\x1F\x83\x01`\x1F\x19\x16` \x01\x84a\x05^V[\x81\x83R6`$\x83\x83\x01\x01\x11a\0\xDEW\x81_\x92`$` \x93\x01\x83\x86\x017\x83\x01\x01R`\x02T`\x01`\x01`\x01`@\x1B\x03\x82\x16\x01`\x01`\x01`@\x1B\x03\x81\x11a\x03\xDBW`\x01`\x01`@\x1B\x03\x16\x80\x91`\x01`\x01`@\x1B\x03\x19\x16\x17`\x02U`@Q\x90`@\x82\x01\x82\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\tW`@R3\x82R` \x82\x01\x92\x83R\x80_R_` R`\x01`@_ \x81\x80`\xA0\x1B\x03\x84Q\x16k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\xA0\x1B\x82T\x16\x17\x81U\x01\x83Q\x80Q\x90`\x01`\x01`@\x1B\x03\x82\x11a\x03\tW\x81\x90a\x02\x04\x84Ta\x05\x0BV[`\x1F\x81\x11a\x03\x8BW[P` \x90`\x1F\x83\x11`\x01\x14a\x03(W_\x92a\x03\x1DW[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17\x90U[3_R`\x01` R`@_ \x90\x81T\x90h\x01\0\0\0\0\0\0\0\0\x82\x10\x15a\x03\tW\x7F\x86\xEA\xCD#a\r\x81pe\x16\xDE\x1E\xD0Gl\x87w/\xDF\x93\x9C|w\x1F\xBB\xD7\xF0#\ra\x9Eh\x94a\x03\x04\x94a\x02\x94\x84a\x02\xE2\x96`\x01a\x02\xF0\x97\x01\x81Ua\x04\xD6V[\x81T\x90`\x03\x1B\x90`\x01`\x01`@\x1B\x03\x86\x83\x1B\x92\x1B\x19\x16\x17\x90U`\x01\x80`\xA0\x1B\x03\x90Q\x16\x90Q\x90`@Q\x92a\x02\xC7\x84a\x05CV[\x83R` \x83\x01R`@\x82\x01R`@Q\x92\x83\x91` \x83\x01a\x06^V[\x03`\x1F\x19\x81\x01\x83R\x82a\x05^V[`@Q\x91\x82\x91` \x83R` \x83\x01\x90a\x06\x1FV[\x03\x90\xA1\0[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[\x01Q\x90P\x86\x80a\x02#V[_\x85\x81R\x82\x81 \x93P`\x1F\x19\x85\x16\x90[\x81\x81\x10a\x03sWP\x90\x84`\x01\x95\x94\x93\x92\x10a\x03[W[PPP\x81\x1B\x01\x90Ua\x027V[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x86\x80\x80a\x03NV[\x92\x93` `\x01\x81\x92\x87\x86\x01Q\x81U\x01\x95\x01\x93\x01a\x038V[\x90\x91P\x83_R` _ `\x1F\x84\x01`\x05\x1C\x81\x01\x91` \x85\x10a\x03\xD1W[\x90`\x1F\x85\x94\x93\x92\x01`\x05\x1C\x01\x90[\x81\x81\x10a\x03\xC3WPa\x02\rV[_\x81U\x84\x93P`\x01\x01a\x03\xB6V[\x90\x91P\x81\x90a\x03\xA8V[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[4a\0\xDEW` 6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`@\x1B\x03\x81\x16\x80\x91\x03a\0\xDEW_R_` R`@_ a\x043`\x01\x80\x80`\xA0\x1B\x03\x83T\x16\x92\x01a\x05\x7FV[\x90a\0\xDA`@Q\x92\x83\x92\x83R`@` \x84\x01R`@\x83\x01\x90a\x06\x1FV[4a\0\xDEW`@6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`\xA0\x1B\x03\x81\x16\x90\x81\x90\x03a\0\xDEW`$5\x90_R`\x01` R`@_ \x90\x81T\x81\x10\x15a\0\xDEWa\x04\xA3`\x01`\x01`@\x1B\x03\x91` \x93a\x04\xD6V[\x90T\x90`\x03\x1B\x1C\x16`@Q\x90\x81R\xF3[4a\0\xDEW_6`\x03\x19\x01\x12a\0\xDEW` \x90`\x01`\x01`@\x1B\x03`\x02T\x16\x81R\xF3[\x91\x90\x91\x80T\x83\x10\x15a\x04\xF7W_R`\x18` _ \x83`\x02\x1C\x01\x92`\x03\x1B\x16\x90V[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[\x90`\x01\x82\x81\x1C\x92\x16\x80\x15a\x059W[` \x83\x10\x14a\x05%WV[cNH{q`\xE0\x1B_R`\"`\x04R`$_\xFD[\x91`\x7F\x16\x91a\x05\x1AV[``\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\tW`@RV[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\tW`@RV[\x90`@Q\x91\x82_\x82T\x92a\x05\x92\x84a\x05\x0BV[\x80\x84R\x93`\x01\x81\x16\x90\x81\x15a\x05\xFDWP`\x01\x14a\x05\xB9W[Pa\x05\xB7\x92P\x03\x83a\x05^V[V[\x90P_\x92\x91\x92R` _ \x90_\x91[\x81\x83\x10a\x05\xE1WPP\x90` a\x05\xB7\x92\x82\x01\x01_a\x05\xAAV[` \x91\x93P\x80`\x01\x91T\x83\x85\x89\x01\x01R\x01\x91\x01\x90\x91\x84\x92a\x05\xC8V[\x90P` \x92Pa\x05\xB7\x94\x91P`\xFF\x19\x16\x82\x84\x01R\x15\x15`\x05\x1B\x82\x01\x01_a\x05\xAAV[\x91\x90\x82Q\x92\x83\x82R_[\x84\x81\x10a\x06IWPP\x82_` \x80\x94\x95\x84\x01\x01R`\x1F\x80\x19\x91\x01\x16\x01\x01\x90V[\x80` \x80\x92\x84\x01\x01Q\x82\x82\x86\x01\x01R\x01a\x06)V[`\x80`@a\x06\x9B\x93` \x84R`\x01`\x01`@\x1B\x03\x81Q\x16` \x85\x01R`\x01\x80`\xA0\x1B\x03` \x82\x01Q\x16\x82\x85\x01R\x01Q\x91``\x80\x82\x01R\x01\x90a\x06\x1FV[\x90V\xFE\xA2dipfsX\"\x12 \xF2&\xD2\x12\xC2\xAF\x8F\x1E\x9F\xADM\x0E\x18}\x02\x9E\x8E##\xE9\x8B\xF5L\xC0\x95\x0C\xBE\xD6\xBF\xD1w\xECdsolcC\0\x08\x1C\x003", ); /// The runtime bytecode of the contract, as deployed on the network. /// /// ```text - ///0x6080806040526004361015610012575f80fd5b5f3560e01c90816342227fa4146104b357508063913b1fbf14610450578063ce289612146103ef578063e31e0788146100e25763e328ed7714610053575f80fd5b346100de5760203660031901126100de576004356001600160401b0381168091036100de576100da9060606040805161008b81610543565b5f81525f60208201520152805f525f6020526100c9600160405f20818060a01b03815416604051946100bc86610543565b855260208501520161057f565b60408201526040519182918261065e565b0390f35b5f80fd5b346100de5760203660031901126100de576004356001600160401b0381116100de57366023820112156100de5780600401356001600160401b038111610309576040519161013a601f8301601f19166020018461055e565b81835236602483830101116100de57815f92602460209301838601378301015260025460016001600160401b038216016001600160401b0381116103db576001600160401b031680916001600160401b0319161760025560405190604082018281106001600160401b038211176103095760405233825260208201928352805f525f602052600160405f20818060a01b038451166bffffffffffffffffffffffff60a01b8254161781550183518051906001600160401b038211610309578190610204845461050b565b601f811161038b575b50602090601f8311600114610328575f9261031d575b50508160011b915f199060031b1c19161790555b335f52600160205260405f209081549068010000000000000000821015610309577f86eacd23610d81706516de1ed0476c87772fdf939c7c771fbbd7f0230d619e689461030494610294846102e29660016102f0970181556104d6565b81549060031b906001600160401b0386831b921b191617905560018060a01b03905116905190604051926102c784610543565b8352602083015260408201526040519283916020830161065e565b03601f19810183528261055e565b60405191829160208352602083019061061f565b0390a1005b634e487b7160e01b5f52604160045260245ffd5b015190508680610223565b5f8581528281209350601f198516905b818110610373575090846001959493921061035b575b505050811b019055610237565b01515f1960f88460031b161c1916905586808061034e565b92936020600181928786015181550195019301610338565b909150835f5260205f20601f840160051c810191602085106103d1575b90601f859493920160051c01905b8181106103c3575061020d565b5f81558493506001016103b6565b90915081906103a8565b634e487b7160e01b5f52601160045260245ffd5b346100de5760203660031901126100de576004356001600160401b0381168091036100de575f525f60205260405f206104336001808060a01b03835416920161057f565b906100da604051928392835260406020840152604083019061061f565b346100de5760403660031901126100de576004356001600160a01b038116908190036100de57602435905f52600160205260405f209081548110156100de576104a36001600160401b03916020936104d6565b90549060031b1c16604051908152f35b346100de575f3660031901126100de576020906001600160401b03600254168152f35b91909180548310156104f7575f52601860205f208360021c019260031b1690565b634e487b7160e01b5f52603260045260245ffd5b90600182811c92168015610539575b602083101461052557565b634e487b7160e01b5f52602260045260245ffd5b91607f169161051a565b606081019081106001600160401b0382111761030957604052565b90601f801991011681019081106001600160401b0382111761030957604052565b9060405191825f8254926105928461050b565b80845293600181169081156105fd57506001146105b9575b506105b79250038361055e565b565b90505f9291925260205f20905f915b8183106105e15750509060206105b7928201015f6105aa565b60209193508060019154838589010152019101909184926105c8565b9050602092506105b794915060ff191682840152151560051b8201015f6105aa565b91908251928382525f5b848110610649575050825f602080949584010152601f8019910116010190565b80602080928401015182828601015201610629565b6080604061069b93602084526001600160401b03815116602085015260018060a01b0360208201511682850152015191606080820152019061061f565b9056fea2646970667358221220819d307e8988fa475816f424311b37b78e6127e466c32db9ab78e41154769beb64736f6c634300081c0033 + ///0x6080806040526004361015610012575f80fd5b5f3560e01c90816342227fa4146104b357508063913b1fbf14610450578063ce289612146103ef578063e31e0788146100e25763e328ed7714610053575f80fd5b346100de5760203660031901126100de576004356001600160401b0381168091036100de576100da9060606040805161008b81610543565b5f81525f60208201520152805f525f6020526100c9600160405f20818060a01b03815416604051946100bc86610543565b855260208501520161057f565b60408201526040519182918261065e565b0390f35b5f80fd5b346100de5760203660031901126100de576004356001600160401b0381116100de57366023820112156100de5780600401356001600160401b038111610309576040519161013a601f8301601f19166020018461055e565b81835236602483830101116100de57815f92602460209301838601378301015260025460016001600160401b038216016001600160401b0381116103db576001600160401b031680916001600160401b0319161760025560405190604082018281106001600160401b038211176103095760405233825260208201928352805f525f602052600160405f20818060a01b038451166bffffffffffffffffffffffff60a01b8254161781550183518051906001600160401b038211610309578190610204845461050b565b601f811161038b575b50602090601f8311600114610328575f9261031d575b50508160011b915f199060031b1c19161790555b335f52600160205260405f209081549068010000000000000000821015610309577f86eacd23610d81706516de1ed0476c87772fdf939c7c771fbbd7f0230d619e689461030494610294846102e29660016102f0970181556104d6565b81549060031b906001600160401b0386831b921b191617905560018060a01b03905116905190604051926102c784610543565b8352602083015260408201526040519283916020830161065e565b03601f19810183528261055e565b60405191829160208352602083019061061f565b0390a1005b634e487b7160e01b5f52604160045260245ffd5b015190508680610223565b5f8581528281209350601f198516905b818110610373575090846001959493921061035b575b505050811b019055610237565b01515f1960f88460031b161c1916905586808061034e565b92936020600181928786015181550195019301610338565b909150835f5260205f20601f840160051c810191602085106103d1575b90601f859493920160051c01905b8181106103c3575061020d565b5f81558493506001016103b6565b90915081906103a8565b634e487b7160e01b5f52601160045260245ffd5b346100de5760203660031901126100de576004356001600160401b0381168091036100de575f525f60205260405f206104336001808060a01b03835416920161057f565b906100da604051928392835260406020840152604083019061061f565b346100de5760403660031901126100de576004356001600160a01b038116908190036100de57602435905f52600160205260405f209081548110156100de576104a36001600160401b03916020936104d6565b90549060031b1c16604051908152f35b346100de575f3660031901126100de576020906001600160401b03600254168152f35b91909180548310156104f7575f52601860205f208360021c019260031b1690565b634e487b7160e01b5f52603260045260245ffd5b90600182811c92168015610539575b602083101461052557565b634e487b7160e01b5f52602260045260245ffd5b91607f169161051a565b606081019081106001600160401b0382111761030957604052565b90601f801991011681019081106001600160401b0382111761030957604052565b9060405191825f8254926105928461050b565b80845293600181169081156105fd57506001146105b9575b506105b79250038361055e565b565b90505f9291925260205f20905f915b8183106105e15750509060206105b7928201015f6105aa565b60209193508060019154838589010152019101909184926105c8565b9050602092506105b794915060ff191682840152151560051b8201015f6105aa565b91908251928382525f5b848110610649575050825f602080949584010152601f8019910116010190565b80602080928401015182828601015201610629565b6080604061069b93602084526001600160401b03815116602085015260018060a01b0360208201511682850152015191606080820152019061061f565b9056fea2646970667358221220f226d212c2af8f1e9fad4d0e187d029e8e2323e98bf54cc0950cbed6bfd177ec64736f6c634300081c0033 /// ``` #[rustfmt::skip] #[allow(clippy::all)] pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R`\x046\x10\x15a\0\x12W_\x80\xFD[_5`\xE0\x1C\x90\x81cB\"\x7F\xA4\x14a\x04\xB3WP\x80c\x91;\x1F\xBF\x14a\x04PW\x80c\xCE(\x96\x12\x14a\x03\xEFW\x80c\xE3\x1E\x07\x88\x14a\0\xE2Wc\xE3(\xEDw\x14a\0SW_\x80\xFD[4a\0\xDEW` 6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`@\x1B\x03\x81\x16\x80\x91\x03a\0\xDEWa\0\xDA\x90```@\x80Qa\0\x8B\x81a\x05CV[_\x81R_` \x82\x01R\x01R\x80_R_` Ra\0\xC9`\x01`@_ \x81\x80`\xA0\x1B\x03\x81T\x16`@Q\x94a\0\xBC\x86a\x05CV[\x85R` \x85\x01R\x01a\x05\x7FV[`@\x82\x01R`@Q\x91\x82\x91\x82a\x06^V[\x03\x90\xF3[_\x80\xFD[4a\0\xDEW` 6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`@\x1B\x03\x81\x11a\0\xDEW6`#\x82\x01\x12\x15a\0\xDEW\x80`\x04\x015`\x01`\x01`@\x1B\x03\x81\x11a\x03\tW`@Q\x91a\x01:`\x1F\x83\x01`\x1F\x19\x16` \x01\x84a\x05^V[\x81\x83R6`$\x83\x83\x01\x01\x11a\0\xDEW\x81_\x92`$` \x93\x01\x83\x86\x017\x83\x01\x01R`\x02T`\x01`\x01`\x01`@\x1B\x03\x82\x16\x01`\x01`\x01`@\x1B\x03\x81\x11a\x03\xDBW`\x01`\x01`@\x1B\x03\x16\x80\x91`\x01`\x01`@\x1B\x03\x19\x16\x17`\x02U`@Q\x90`@\x82\x01\x82\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\tW`@R3\x82R` \x82\x01\x92\x83R\x80_R_` R`\x01`@_ \x81\x80`\xA0\x1B\x03\x84Q\x16k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\xA0\x1B\x82T\x16\x17\x81U\x01\x83Q\x80Q\x90`\x01`\x01`@\x1B\x03\x82\x11a\x03\tW\x81\x90a\x02\x04\x84Ta\x05\x0BV[`\x1F\x81\x11a\x03\x8BW[P` \x90`\x1F\x83\x11`\x01\x14a\x03(W_\x92a\x03\x1DW[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17\x90U[3_R`\x01` R`@_ \x90\x81T\x90h\x01\0\0\0\0\0\0\0\0\x82\x10\x15a\x03\tW\x7F\x86\xEA\xCD#a\r\x81pe\x16\xDE\x1E\xD0Gl\x87w/\xDF\x93\x9C|w\x1F\xBB\xD7\xF0#\ra\x9Eh\x94a\x03\x04\x94a\x02\x94\x84a\x02\xE2\x96`\x01a\x02\xF0\x97\x01\x81Ua\x04\xD6V[\x81T\x90`\x03\x1B\x90`\x01`\x01`@\x1B\x03\x86\x83\x1B\x92\x1B\x19\x16\x17\x90U`\x01\x80`\xA0\x1B\x03\x90Q\x16\x90Q\x90`@Q\x92a\x02\xC7\x84a\x05CV[\x83R` \x83\x01R`@\x82\x01R`@Q\x92\x83\x91` \x83\x01a\x06^V[\x03`\x1F\x19\x81\x01\x83R\x82a\x05^V[`@Q\x91\x82\x91` \x83R` \x83\x01\x90a\x06\x1FV[\x03\x90\xA1\0[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[\x01Q\x90P\x86\x80a\x02#V[_\x85\x81R\x82\x81 \x93P`\x1F\x19\x85\x16\x90[\x81\x81\x10a\x03sWP\x90\x84`\x01\x95\x94\x93\x92\x10a\x03[W[PPP\x81\x1B\x01\x90Ua\x027V[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x86\x80\x80a\x03NV[\x92\x93` `\x01\x81\x92\x87\x86\x01Q\x81U\x01\x95\x01\x93\x01a\x038V[\x90\x91P\x83_R` _ `\x1F\x84\x01`\x05\x1C\x81\x01\x91` \x85\x10a\x03\xD1W[\x90`\x1F\x85\x94\x93\x92\x01`\x05\x1C\x01\x90[\x81\x81\x10a\x03\xC3WPa\x02\rV[_\x81U\x84\x93P`\x01\x01a\x03\xB6V[\x90\x91P\x81\x90a\x03\xA8V[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[4a\0\xDEW` 6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`@\x1B\x03\x81\x16\x80\x91\x03a\0\xDEW_R_` R`@_ a\x043`\x01\x80\x80`\xA0\x1B\x03\x83T\x16\x92\x01a\x05\x7FV[\x90a\0\xDA`@Q\x92\x83\x92\x83R`@` \x84\x01R`@\x83\x01\x90a\x06\x1FV[4a\0\xDEW`@6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`\xA0\x1B\x03\x81\x16\x90\x81\x90\x03a\0\xDEW`$5\x90_R`\x01` R`@_ \x90\x81T\x81\x10\x15a\0\xDEWa\x04\xA3`\x01`\x01`@\x1B\x03\x91` \x93a\x04\xD6V[\x90T\x90`\x03\x1B\x1C\x16`@Q\x90\x81R\xF3[4a\0\xDEW_6`\x03\x19\x01\x12a\0\xDEW` \x90`\x01`\x01`@\x1B\x03`\x02T\x16\x81R\xF3[\x91\x90\x91\x80T\x83\x10\x15a\x04\xF7W_R`\x18` _ \x83`\x02\x1C\x01\x92`\x03\x1B\x16\x90V[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[\x90`\x01\x82\x81\x1C\x92\x16\x80\x15a\x059W[` \x83\x10\x14a\x05%WV[cNH{q`\xE0\x1B_R`\"`\x04R`$_\xFD[\x91`\x7F\x16\x91a\x05\x1AV[``\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\tW`@RV[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\tW`@RV[\x90`@Q\x91\x82_\x82T\x92a\x05\x92\x84a\x05\x0BV[\x80\x84R\x93`\x01\x81\x16\x90\x81\x15a\x05\xFDWP`\x01\x14a\x05\xB9W[Pa\x05\xB7\x92P\x03\x83a\x05^V[V[\x90P_\x92\x91\x92R` _ \x90_\x91[\x81\x83\x10a\x05\xE1WPP\x90` a\x05\xB7\x92\x82\x01\x01_a\x05\xAAV[` \x91\x93P\x80`\x01\x91T\x83\x85\x89\x01\x01R\x01\x91\x01\x90\x91\x84\x92a\x05\xC8V[\x90P` \x92Pa\x05\xB7\x94\x91P`\xFF\x19\x16\x82\x84\x01R\x15\x15`\x05\x1B\x82\x01\x01_a\x05\xAAV[\x91\x90\x82Q\x92\x83\x82R_[\x84\x81\x10a\x06IWPP\x82_` \x80\x94\x95\x84\x01\x01R`\x1F\x80\x19\x91\x01\x16\x01\x01\x90V[\x80` \x80\x92\x84\x01\x01Q\x82\x82\x86\x01\x01R\x01a\x06)V[`\x80`@a\x06\x9B\x93` \x84R`\x01`\x01`@\x1B\x03\x81Q\x16` \x85\x01R`\x01\x80`\xA0\x1B\x03` \x82\x01Q\x16\x82\x85\x01R\x01Q\x91``\x80\x82\x01R\x01\x90a\x06\x1FV[\x90V\xFE\xA2dipfsX\"\x12 \x81\x9D0~\x89\x88\xFAGX\x16\xF4$1\x1B7\xB7\x8Ea'\xE4f\xC3-\xB9\xABx\xE4\x11Tv\x9B\xEBdsolcC\0\x08\x1C\x003", + b"`\x80\x80`@R`\x046\x10\x15a\0\x12W_\x80\xFD[_5`\xE0\x1C\x90\x81cB\"\x7F\xA4\x14a\x04\xB3WP\x80c\x91;\x1F\xBF\x14a\x04PW\x80c\xCE(\x96\x12\x14a\x03\xEFW\x80c\xE3\x1E\x07\x88\x14a\0\xE2Wc\xE3(\xEDw\x14a\0SW_\x80\xFD[4a\0\xDEW` 6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`@\x1B\x03\x81\x16\x80\x91\x03a\0\xDEWa\0\xDA\x90```@\x80Qa\0\x8B\x81a\x05CV[_\x81R_` \x82\x01R\x01R\x80_R_` Ra\0\xC9`\x01`@_ \x81\x80`\xA0\x1B\x03\x81T\x16`@Q\x94a\0\xBC\x86a\x05CV[\x85R` \x85\x01R\x01a\x05\x7FV[`@\x82\x01R`@Q\x91\x82\x91\x82a\x06^V[\x03\x90\xF3[_\x80\xFD[4a\0\xDEW` 6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`@\x1B\x03\x81\x11a\0\xDEW6`#\x82\x01\x12\x15a\0\xDEW\x80`\x04\x015`\x01`\x01`@\x1B\x03\x81\x11a\x03\tW`@Q\x91a\x01:`\x1F\x83\x01`\x1F\x19\x16` \x01\x84a\x05^V[\x81\x83R6`$\x83\x83\x01\x01\x11a\0\xDEW\x81_\x92`$` \x93\x01\x83\x86\x017\x83\x01\x01R`\x02T`\x01`\x01`\x01`@\x1B\x03\x82\x16\x01`\x01`\x01`@\x1B\x03\x81\x11a\x03\xDBW`\x01`\x01`@\x1B\x03\x16\x80\x91`\x01`\x01`@\x1B\x03\x19\x16\x17`\x02U`@Q\x90`@\x82\x01\x82\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\tW`@R3\x82R` \x82\x01\x92\x83R\x80_R_` R`\x01`@_ \x81\x80`\xA0\x1B\x03\x84Q\x16k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF`\xA0\x1B\x82T\x16\x17\x81U\x01\x83Q\x80Q\x90`\x01`\x01`@\x1B\x03\x82\x11a\x03\tW\x81\x90a\x02\x04\x84Ta\x05\x0BV[`\x1F\x81\x11a\x03\x8BW[P` \x90`\x1F\x83\x11`\x01\x14a\x03(W_\x92a\x03\x1DW[PP\x81`\x01\x1B\x91_\x19\x90`\x03\x1B\x1C\x19\x16\x17\x90U[3_R`\x01` R`@_ \x90\x81T\x90h\x01\0\0\0\0\0\0\0\0\x82\x10\x15a\x03\tW\x7F\x86\xEA\xCD#a\r\x81pe\x16\xDE\x1E\xD0Gl\x87w/\xDF\x93\x9C|w\x1F\xBB\xD7\xF0#\ra\x9Eh\x94a\x03\x04\x94a\x02\x94\x84a\x02\xE2\x96`\x01a\x02\xF0\x97\x01\x81Ua\x04\xD6V[\x81T\x90`\x03\x1B\x90`\x01`\x01`@\x1B\x03\x86\x83\x1B\x92\x1B\x19\x16\x17\x90U`\x01\x80`\xA0\x1B\x03\x90Q\x16\x90Q\x90`@Q\x92a\x02\xC7\x84a\x05CV[\x83R` \x83\x01R`@\x82\x01R`@Q\x92\x83\x91` \x83\x01a\x06^V[\x03`\x1F\x19\x81\x01\x83R\x82a\x05^V[`@Q\x91\x82\x91` \x83R` \x83\x01\x90a\x06\x1FV[\x03\x90\xA1\0[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[\x01Q\x90P\x86\x80a\x02#V[_\x85\x81R\x82\x81 \x93P`\x1F\x19\x85\x16\x90[\x81\x81\x10a\x03sWP\x90\x84`\x01\x95\x94\x93\x92\x10a\x03[W[PPP\x81\x1B\x01\x90Ua\x027V[\x01Q_\x19`\xF8\x84`\x03\x1B\x16\x1C\x19\x16\x90U\x86\x80\x80a\x03NV[\x92\x93` `\x01\x81\x92\x87\x86\x01Q\x81U\x01\x95\x01\x93\x01a\x038V[\x90\x91P\x83_R` _ `\x1F\x84\x01`\x05\x1C\x81\x01\x91` \x85\x10a\x03\xD1W[\x90`\x1F\x85\x94\x93\x92\x01`\x05\x1C\x01\x90[\x81\x81\x10a\x03\xC3WPa\x02\rV[_\x81U\x84\x93P`\x01\x01a\x03\xB6V[\x90\x91P\x81\x90a\x03\xA8V[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[4a\0\xDEW` 6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`@\x1B\x03\x81\x16\x80\x91\x03a\0\xDEW_R_` R`@_ a\x043`\x01\x80\x80`\xA0\x1B\x03\x83T\x16\x92\x01a\x05\x7FV[\x90a\0\xDA`@Q\x92\x83\x92\x83R`@` \x84\x01R`@\x83\x01\x90a\x06\x1FV[4a\0\xDEW`@6`\x03\x19\x01\x12a\0\xDEW`\x045`\x01`\x01`\xA0\x1B\x03\x81\x16\x90\x81\x90\x03a\0\xDEW`$5\x90_R`\x01` R`@_ \x90\x81T\x81\x10\x15a\0\xDEWa\x04\xA3`\x01`\x01`@\x1B\x03\x91` \x93a\x04\xD6V[\x90T\x90`\x03\x1B\x1C\x16`@Q\x90\x81R\xF3[4a\0\xDEW_6`\x03\x19\x01\x12a\0\xDEW` \x90`\x01`\x01`@\x1B\x03`\x02T\x16\x81R\xF3[\x91\x90\x91\x80T\x83\x10\x15a\x04\xF7W_R`\x18` _ \x83`\x02\x1C\x01\x92`\x03\x1B\x16\x90V[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[\x90`\x01\x82\x81\x1C\x92\x16\x80\x15a\x059W[` \x83\x10\x14a\x05%WV[cNH{q`\xE0\x1B_R`\"`\x04R`$_\xFD[\x91`\x7F\x16\x91a\x05\x1AV[``\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\tW`@RV[\x90`\x1F\x80\x19\x91\x01\x16\x81\x01\x90\x81\x10`\x01`\x01`@\x1B\x03\x82\x11\x17a\x03\tW`@RV[\x90`@Q\x91\x82_\x82T\x92a\x05\x92\x84a\x05\x0BV[\x80\x84R\x93`\x01\x81\x16\x90\x81\x15a\x05\xFDWP`\x01\x14a\x05\xB9W[Pa\x05\xB7\x92P\x03\x83a\x05^V[V[\x90P_\x92\x91\x92R` _ \x90_\x91[\x81\x83\x10a\x05\xE1WPP\x90` a\x05\xB7\x92\x82\x01\x01_a\x05\xAAV[` \x91\x93P\x80`\x01\x91T\x83\x85\x89\x01\x01R\x01\x91\x01\x90\x91\x84\x92a\x05\xC8V[\x90P` \x92Pa\x05\xB7\x94\x91P`\xFF\x19\x16\x82\x84\x01R\x15\x15`\x05\x1B\x82\x01\x01_a\x05\xAAV[\x91\x90\x82Q\x92\x83\x82R_[\x84\x81\x10a\x06IWPP\x82_` \x80\x94\x95\x84\x01\x01R`\x1F\x80\x19\x91\x01\x16\x01\x01\x90V[\x80` \x80\x92\x84\x01\x01Q\x82\x82\x86\x01\x01R\x01a\x06)V[`\x80`@a\x06\x9B\x93` \x84R`\x01`\x01`@\x1B\x03\x81Q\x16` \x85\x01R`\x01\x80`\xA0\x1B\x03` \x82\x01Q\x16\x82\x85\x01R\x01Q\x91``\x80\x82\x01R\x01\x90a\x06\x1FV[\x90V\xFE\xA2dipfsX\"\x12 \xF2&\xD2\x12\xC2\xAF\x8F\x1E\x9F\xADM\x0E\x18}\x02\x9E\x8E##\xE9\x8B\xF5L\xC0\x95\x0C\xBE\xD6\xBF\xD1w\xECdsolcC\0\x08\x1C\x003", ); /**Event with signature `NewTrigger(bytes)` and selector `0x86eacd23610d81706516de1ed0476c87772fdf939c7c771fbbd7f0230d619e68`. ```solidity diff --git a/crates/bindings/src/strings.rs b/crates/bindings/src/strings.rs index 37d7e893..91be8f05 100644 --- a/crates/bindings/src/strings.rs +++ b/crates/bindings/src/strings.rs @@ -2,12 +2,43 @@ Generated by the following Solidity interface... ```solidity -interface Strings {} +interface Strings { + error StringsInsufficientHexLength(uint256 value, uint256 length); + error StringsInvalidAddressFormat(); + error StringsInvalidChar(); +} ``` ...which was generated by the following JSON ABI: ```json -[] +[ + { + "type": "error", + "name": "StringsInsufficientHexLength", + "inputs": [ + { + "name": "value", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "length", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "StringsInvalidAddressFormat", + "inputs": [] + }, + { + "type": "error", + "name": "StringsInvalidChar", + "inputs": [] + } +] ```*/ #[allow( non_camel_case_types, @@ -22,23 +53,336 @@ pub mod Strings { /// The creation / init bytecode of the contract. /// /// ```text - ///0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea264697066735822122022a4bdc4def4222321a35ac99823b84229714e69b48a8bed8c110d951230fc8964736f6c634300081c0033 + ///0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea26469706673582212201624940cfac90c165899e9f2bd293a99ad58647938455748c4e0bd54260d540564736f6c634300081c0033 /// ``` #[rustfmt::skip] #[allow(clippy::all)] pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 \"\xA4\xBD\xC4\xDE\xF4\"#!\xA3Z\xC9\x98#\xB8B)qNi\xB4\x8A\x8B\xED\x8C\x11\r\x95\x120\xFC\x89dsolcC\0\x08\x1C\x003", + b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 \x16$\x94\x0C\xFA\xC9\x0C\x16X\x99\xE9\xF2\xBD):\x99\xADXdy8EWH\xC4\xE0\xBDT&\rT\x05dsolcC\0\x08\x1C\x003", ); /// The runtime bytecode of the contract, as deployed on the network. /// /// ```text - ///0x5f80fdfea264697066735822122022a4bdc4def4222321a35ac99823b84229714e69b48a8bed8c110d951230fc8964736f6c634300081c0033 + ///0x5f80fdfea26469706673582212201624940cfac90c165899e9f2bd293a99ad58647938455748c4e0bd54260d540564736f6c634300081c0033 /// ``` #[rustfmt::skip] #[allow(clippy::all)] pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"_\x80\xFD\xFE\xA2dipfsX\"\x12 \"\xA4\xBD\xC4\xDE\xF4\"#!\xA3Z\xC9\x98#\xB8B)qNi\xB4\x8A\x8B\xED\x8C\x11\r\x95\x120\xFC\x89dsolcC\0\x08\x1C\x003", + b"_\x80\xFD\xFE\xA2dipfsX\"\x12 \x16$\x94\x0C\xFA\xC9\x0C\x16X\x99\xE9\xF2\xBD):\x99\xADXdy8EWH\xC4\xE0\xBDT&\rT\x05dsolcC\0\x08\x1C\x003", ); + /**Custom error with signature `StringsInsufficientHexLength(uint256,uint256)` and selector `0xe22e27eb`. + ```solidity + error StringsInsufficientHexLength(uint256 value, uint256 length); + ```*/ + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] + #[derive(Clone)] + pub struct StringsInsufficientHexLength { + pub value: alloy::sol_types::private::primitives::aliases::U256, + pub length: alloy::sol_types::private::primitives::aliases::U256, + } + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] + const _: () = { + use alloy::sol_types as alloy_sol_types; + #[doc(hidden)] + type UnderlyingSolTuple<'a> = + (alloy::sol_types::sol_data::Uint<256>, alloy::sol_types::sol_data::Uint<256>); + #[doc(hidden)] + type UnderlyingRustTuple<'a> = ( + alloy::sol_types::private::primitives::aliases::U256, + alloy::sol_types::private::primitives::aliases::U256, + ); + #[cfg(test)] + #[allow(dead_code, unreachable_patterns)] + fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { + match _t { + alloy_sol_types::private::AssertTypeEq::< + ::RustType, + >(_) => {} + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: StringsInsufficientHexLength) -> Self { + (value.value, value.length) + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From> for StringsInsufficientHexLength { + fn from(tuple: UnderlyingRustTuple<'_>) -> Self { + Self { value: tuple.0, length: tuple.1 } + } + } + #[automatically_derived] + impl alloy_sol_types::SolError for StringsInsufficientHexLength { + type Parameters<'a> = UnderlyingSolTuple<'a>; + type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; + const SIGNATURE: &'static str = "StringsInsufficientHexLength(uint256,uint256)"; + const SELECTOR: [u8; 4] = [226u8, 46u8, 39u8, 235u8]; + #[inline] + fn new<'a>( + tuple: as alloy_sol_types::SolType>::RustType, + ) -> Self { + tuple.into() + } + #[inline] + fn tokenize(&self) -> Self::Token<'_> { + ( + as alloy_sol_types::SolType>::tokenize( + &self.value, + ), + as alloy_sol_types::SolType>::tokenize( + &self.length, + ), + ) + } + } + }; + /**Custom error with signature `StringsInvalidAddressFormat()` and selector `0x1d15ae44`. + ```solidity + error StringsInvalidAddressFormat(); + ```*/ + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] + #[derive(Clone)] + pub struct StringsInvalidAddressFormat {} + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] + const _: () = { + use alloy::sol_types as alloy_sol_types; + #[doc(hidden)] + type UnderlyingSolTuple<'a> = (); + #[doc(hidden)] + type UnderlyingRustTuple<'a> = (); + #[cfg(test)] + #[allow(dead_code, unreachable_patterns)] + fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { + match _t { + alloy_sol_types::private::AssertTypeEq::< + ::RustType, + >(_) => {} + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: StringsInvalidAddressFormat) -> Self { + () + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From> for StringsInvalidAddressFormat { + fn from(tuple: UnderlyingRustTuple<'_>) -> Self { + Self {} + } + } + #[automatically_derived] + impl alloy_sol_types::SolError for StringsInvalidAddressFormat { + type Parameters<'a> = UnderlyingSolTuple<'a>; + type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; + const SIGNATURE: &'static str = "StringsInvalidAddressFormat()"; + const SELECTOR: [u8; 4] = [29u8, 21u8, 174u8, 68u8]; + #[inline] + fn new<'a>( + tuple: as alloy_sol_types::SolType>::RustType, + ) -> Self { + tuple.into() + } + #[inline] + fn tokenize(&self) -> Self::Token<'_> { + () + } + } + }; + /**Custom error with signature `StringsInvalidChar()` and selector `0x94e2737e`. + ```solidity + error StringsInvalidChar(); + ```*/ + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] + #[derive(Clone)] + pub struct StringsInvalidChar {} + #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields, clippy::style)] + const _: () = { + use alloy::sol_types as alloy_sol_types; + #[doc(hidden)] + type UnderlyingSolTuple<'a> = (); + #[doc(hidden)] + type UnderlyingRustTuple<'a> = (); + #[cfg(test)] + #[allow(dead_code, unreachable_patterns)] + fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { + match _t { + alloy_sol_types::private::AssertTypeEq::< + ::RustType, + >(_) => {} + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From for UnderlyingRustTuple<'_> { + fn from(value: StringsInvalidChar) -> Self { + () + } + } + #[automatically_derived] + #[doc(hidden)] + impl ::core::convert::From> for StringsInvalidChar { + fn from(tuple: UnderlyingRustTuple<'_>) -> Self { + Self {} + } + } + #[automatically_derived] + impl alloy_sol_types::SolError for StringsInvalidChar { + type Parameters<'a> = UnderlyingSolTuple<'a>; + type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; + const SIGNATURE: &'static str = "StringsInvalidChar()"; + const SELECTOR: [u8; 4] = [148u8, 226u8, 115u8, 126u8]; + #[inline] + fn new<'a>( + tuple: as alloy_sol_types::SolType>::RustType, + ) -> Self { + tuple.into() + } + #[inline] + fn tokenize(&self) -> Self::Token<'_> { + () + } + } + }; + ///Container for all the [`Strings`](self) custom errors. + pub enum StringsErrors { + StringsInsufficientHexLength(StringsInsufficientHexLength), + StringsInvalidAddressFormat(StringsInvalidAddressFormat), + StringsInvalidChar(StringsInvalidChar), + } + #[automatically_derived] + impl StringsErrors { + /// All the selectors of this enum. + /// + /// Note that the selectors might not be in the same order as the variants. + /// No guarantees are made about the order of the selectors. + /// + /// Prefer using `SolInterface` methods instead. + pub const SELECTORS: &'static [[u8; 4usize]] = + &[[29u8, 21u8, 174u8, 68u8], [148u8, 226u8, 115u8, 126u8], [226u8, 46u8, 39u8, 235u8]]; + } + #[automatically_derived] + impl alloy_sol_types::SolInterface for StringsErrors { + const NAME: &'static str = "StringsErrors"; + const MIN_DATA_LENGTH: usize = 0usize; + const COUNT: usize = 3usize; + #[inline] + fn selector(&self) -> [u8; 4] { + match self { + Self::StringsInsufficientHexLength(_) => { + ::SELECTOR + } + Self::StringsInvalidAddressFormat(_) => { + ::SELECTOR + } + Self::StringsInvalidChar(_) => { + ::SELECTOR + } + } + } + #[inline] + fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> { + Self::SELECTORS.get(i).copied() + } + #[inline] + fn valid_selector(selector: [u8; 4]) -> bool { + Self::SELECTORS.binary_search(&selector).is_ok() + } + #[inline] + #[allow(non_snake_case)] + fn abi_decode_raw( + selector: [u8; 4], + data: &[u8], + validate: bool, + ) -> alloy_sol_types::Result { + static DECODE_SHIMS: &[fn(&[u8], bool) -> alloy_sol_types::Result] = &[ + { + fn StringsInvalidAddressFormat( + data: &[u8], + validate: bool, + ) -> alloy_sol_types::Result { + ::abi_decode_raw( + data, validate, + ) + .map(StringsErrors::StringsInvalidAddressFormat) + } + StringsInvalidAddressFormat + }, + { + fn StringsInvalidChar( + data: &[u8], + validate: bool, + ) -> alloy_sol_types::Result { + ::abi_decode_raw( + data, validate, + ) + .map(StringsErrors::StringsInvalidChar) + } + StringsInvalidChar + }, + { + fn StringsInsufficientHexLength( + data: &[u8], + validate: bool, + ) -> alloy_sol_types::Result { + ::abi_decode_raw( + data, validate, + ) + .map(StringsErrors::StringsInsufficientHexLength) + } + StringsInsufficientHexLength + }, + ]; + let Ok(idx) = Self::SELECTORS.binary_search(&selector) else { + return Err(alloy_sol_types::Error::unknown_selector( + ::NAME, + selector, + )); + }; + DECODE_SHIMS[idx](data, validate) + } + #[inline] + fn abi_encoded_size(&self) -> usize { + match self { + Self::StringsInsufficientHexLength(inner) => { + ::abi_encoded_size( + inner, + ) + } + Self::StringsInvalidAddressFormat(inner) => { + ::abi_encoded_size( + inner, + ) + } + Self::StringsInvalidChar(inner) => { + ::abi_encoded_size(inner) + } + } + } + #[inline] + fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { + match self { + Self::StringsInsufficientHexLength(inner) => { + ::abi_encode_raw( + inner, out, + ) + } + Self::StringsInvalidAddressFormat(inner) => { + ::abi_encode_raw( + inner, out, + ) + } + Self::StringsInvalidChar(inner) => { + ::abi_encode_raw(inner, out) + } + } + } + } use alloy::contract as alloy_contract; /**Creates a new wrapper around an on-chain [`Strings`](self) contract instance. diff --git a/crates/bindings/src/stringsupgradeable.rs b/crates/bindings/src/stringsupgradeable.rs deleted file mode 100644 index 9f2d3e28..00000000 --- a/crates/bindings/src/stringsupgradeable.rs +++ /dev/null @@ -1,221 +0,0 @@ -/** - -Generated by the following Solidity interface... -```solidity -interface StringsUpgradeable {} -``` - -...which was generated by the following JSON ABI: -```json -[] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod StringsUpgradeable { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea2646970667358221220901a60ffeb0ce07a782a6be562b2630714e3a3146b89029d28cd2e83beb8a28464736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 \x90\x1A`\xFF\xEB\x0C\xE0zx*k\xE5b\xB2c\x07\x14\xE3\xA3\x14k\x89\x02\x9D(\xCD.\x83\xBE\xB8\xA2\x84dsolcC\0\x08\x1C\x003", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x5f80fdfea2646970667358221220901a60ffeb0ce07a782a6be562b2630714e3a3146b89029d28cd2e83beb8a28464736f6c634300081c0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"_\x80\xFD\xFE\xA2dipfsX\"\x12 \x90\x1A`\xFF\xEB\x0C\xE0zx*k\xE5b\xB2c\x07\x14\xE3\xA3\x14k\x89\x02\x9D(\xCD.\x83\xBE\xB8\xA2\x84dsolcC\0\x08\x1C\x003", - ); - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`StringsUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`StringsUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - address: alloy_sol_types::private::Address, - provider: P, - ) -> StringsUpgradeableInstance { - StringsUpgradeableInstance::::new(address, provider) - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub fn deploy< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> impl ::core::future::Future>> - { - StringsUpgradeableInstance::::deploy(provider) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - >( - provider: P, - ) -> alloy_contract::RawCallBuilder { - StringsUpgradeableInstance::::deploy_builder(provider) - } - /**A [`StringsUpgradeable`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`StringsUpgradeable`](self) contract located at a given `address`, using a given - provider `P`. - - If the contract bytecode is available (see the [`sol!`](alloy_sol_types::sol!) - documentation on how to provide it), the `deploy` and `deploy_builder` methods can - be used to deploy a new instance of the contract. - - See the [module-level documentation](self) for all the available methods.*/ - #[derive(Clone)] - pub struct StringsUpgradeableInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for StringsUpgradeableInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("StringsUpgradeableInstance").field(&self.address).finish() - } - } - /// Instantiation and getters/setters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > StringsUpgradeableInstance - { - /**Creates a new wrapper around an on-chain [`StringsUpgradeable`](self) contract instance. - - See the [wrapper's documentation](`StringsUpgradeableInstance`) for more details.*/ - #[inline] - pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self { - Self { address, provider, _network_transport: ::core::marker::PhantomData } - } - /**Deploys this contract using the given `provider` and constructor arguments, if any. - - Returns a new instance of the contract, if the deployment was successful. - - For more fine-grained control over the deployment process, use [`deploy_builder`] instead.*/ - #[inline] - pub async fn deploy( - provider: P, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider); - let contract_address = call_builder.deploy().await?; - Ok(Self::new(contract_address, call_builder.provider)) - } - /**Creates a `RawCallBuilder` for deploying this contract using the given `provider` - and constructor arguments, if any. - - This is a simple wrapper around creating a `RawCallBuilder` with the data set to - the bytecode concatenated with the constructor's ABI-encoded arguments.*/ - #[inline] - pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - ::core::clone::Clone::clone(&BYTECODE), - ) - } - /// Returns a reference to the address. - #[inline] - pub const fn address(&self) -> &alloy_sol_types::private::Address { - &self.address - } - /// Sets the address. - #[inline] - pub fn set_address(&mut self, address: alloy_sol_types::private::Address) { - self.address = address; - } - /// Sets the address and returns `self`. - pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self { - self.set_address(address); - self - } - /// Returns a reference to the provider. - #[inline] - pub const fn provider(&self) -> &P { - &self.provider - } - } - impl StringsUpgradeableInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> StringsUpgradeableInstance { - StringsUpgradeableInstance { - address: self.address, - provider: ::core::clone::Clone::clone(&self.provider), - _network_transport: ::core::marker::PhantomData, - } - } - } - /// Function calls. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > StringsUpgradeableInstance - { - /// Creates a new call builder using this contract instance's provider and address. - /// - /// Note that the call can be any function call, not just those defined in this - /// contract. Prefer using the other methods for building type-safe contract calls. - pub fn call_builder( - &self, - call: &C, - ) -> alloy_contract::SolCallBuilder { - alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > StringsUpgradeableInstance - { - /// Creates a new event filter using this contract instance's provider and address. - /// - /// Note that the type can be any event, not just those defined in this contract. - /// Prefer using the other methods for building type-safe event filters. - pub fn event_filter( - &self, - ) -> alloy_contract::Event { - alloy_contract::Event::new_sol(&self.provider, &self.address) - } - } -} diff --git a/docker-compose.yml b/docker-compose.yml index 7b362cd1..cd37a841 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,10 +1,11 @@ -# FROM: github.com/Lay3rLabs/wavs @ ebf8cf6bc001d8292696ef6883d55d749c41bdd9 -# .env files copied over from the WAVS packages +################################### # -# docker compose up +# make start-all # # docker exec -it wavs bash # +################################### + services: # anvil: # image: "ghcr.io/foundry-rs/foundry:stable" @@ -19,10 +20,7 @@ services: # The main instance all WAVS interaction will happen from wavs: - build: - context: ./lib/WAVS - dockerfile: Dockerfile - image: "ghcr.io/lay3rlabs/wavs:local" + image: "ghcr.io/lay3rlabs/wavs:0.3.0-alpha5-amd64" container_name: "wavs" stop_signal: SIGKILL # depends_on: ["anvil"] @@ -36,11 +34,11 @@ services: WAVS_AGGREGATOR_HOME: "/wavs/packages/aggregator" command: ["wavs"] volumes: - - "./:/wavs" # TODO: move to the lib/WAVS/ ? + - "./:/wavs" - "./.docker/cli:/root/wavs/cli/" aggregator: - image: "ghcr.io/lay3rlabs/wavs:local" + image: "ghcr.io/lay3rlabs/wavs:0.3.0-alpha5-amd64" container_name: "wavs-aggregator" stop_signal: SIGKILL depends_on: ["wavs"] @@ -49,17 +47,17 @@ services: - "8001:8001" command: ["wavs-aggregator"] volumes: - - "./lib/WAVS/packages/aggregator:/wavs" + - "./:/wavs" network_mode: "host" deploy-eigenlayer: - image: "ghcr.io/lay3rlabs/wavs:local" + image: "ghcr.io/lay3rlabs/wavs:0.3.0-alpha5-amd64" container_name: "wavs-deploy-eigenlayer" depends_on: ["wavs", "aggregator"] # "anvil", restart: "no" env_file: "./.env" command: ["wavs-cli", "deploy-eigen-core"] volumes: - - "./lib/WAVS/packages/cli:/wavs" + - "./:/wavs" - "./.docker/cli:/root/wavs/cli/" network_mode: "host" diff --git a/lib/WAVS b/lib/WAVS deleted file mode 160000 index c3026c18..00000000 --- a/lib/WAVS +++ /dev/null @@ -1 +0,0 @@ -Subproject commit c3026c18bd5fc3cc7d1c64bb3244583a6f71a3d1 diff --git a/lib/forge-std b/lib/forge-std index 3b20d60d..bf909b22 160000 --- a/lib/forge-std +++ b/lib/forge-std @@ -1 +1 @@ -Subproject commit 3b20d60d14b343ee4f908cb8079495c07f5e8981 +Subproject commit bf909b22fa55e244796dfa920c9639fdffa1c545 diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 00000000..14108182 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,25 @@ +{ + "name": "wavs-foundry-template", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "@openzeppelin/contracts": "^5.2.0", + "@wavs/solidity": "^0.3.0-alpha2" + } + }, + "node_modules/@openzeppelin/contracts": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-5.2.0.tgz", + "integrity": "sha512-bxjNie5z89W1Ea0NZLZluFh8PrFNn9DH8DQlujEok2yjsOlraUPKID5p1Wk3qdNbf6XkQ1Os2RvfiHrrXLHWKA==", + "license": "MIT" + }, + "node_modules/@wavs/solidity": { + "version": "0.3.0-alpha2", + "resolved": "https://registry.npmjs.org/@wavs/solidity/-/solidity-0.3.0-alpha2.tgz", + "integrity": "sha512-twxVpRZ8EoIOO69dQh7WpzqBkKXQfQnmZK4BqBVoc4WKs95I6PrpveymRzS3dmdKAC2VZBWW7jg65s8sA6oiRQ==", + "license": "MIT" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 00000000..28baec00 --- /dev/null +++ b/package.json @@ -0,0 +1,6 @@ +{ + "dependencies": { + "@openzeppelin/contracts": "^5.2.0", + "@wavs/solidity": "^0.3.0-alpha2" + } +} diff --git a/remappings.txt b/remappings.txt index e6c53bb4..0fd288de 100644 --- a/remappings.txt +++ b/remappings.txt @@ -1,4 +1,2 @@ -@eigenlayer-middleware=lib/WAVS/lib/eigenlayer-middleware/ -@eigenlayer-contracts=lib/WAVS/lib/eigenlayer-middleware/lib/eigenlayer-contracts/src/contracts/ -@openzeppelin-upgrades/=lib/WAVS/lib/eigenlayer-middleware/lib/openzeppelin-contracts-upgradeable/ -@openzeppelin-contracts=lib/WAVS/lib/eigenlayer-middleware/lib/openzeppelin-contracts/contracts/ +@openzeppelin-contracts=node_modules/@openzeppelin/contracts/ +@wavs/=node_modules/@wavs/solidity diff --git a/script/WavsSubmit.s.sol b/script/Deploy.s.sol similarity index 51% rename from script/WavsSubmit.s.sol rename to script/Deploy.s.sol index 025dfc3f..d4ef7a95 100644 --- a/script/WavsSubmit.s.sol +++ b/script/Deploy.s.sol @@ -1,19 +1,17 @@ // SPDX-License-Identifier: MIT pragma solidity ^0.8.13; -import {WavsSubmit} from "../src/WavsSubmit.sol"; -import {SimpleTrigger} from "../src/WavsTrigger.sol"; - import "forge-std/Script.sol"; import {stdJson} from "forge-std/StdJson.sol"; -import {IDelegationManager} from "@eigenlayer-contracts/interfaces/IDelegationManager.sol"; -import {IStrategy} from "@eigenlayer-contracts/interfaces/IStrategy.sol"; -import {ECDSAStakeRegistry} from "@eigenlayer-middleware/src/unaudited/ECDSAStakeRegistry.sol"; -import {Quorum, StrategyParams} from "@eigenlayer-middleware/src/interfaces/IECDSAStakeRegistryEventsAndErrors.sol"; import {Strings} from "@openzeppelin-contracts/utils/Strings.sol"; -// forge script ./script/WavsSubmit.s.sol --rpc-url http://localhost:8545 --broadcast -contract WavsSubmitScript is Script { +import {ILayerServiceManager} from "@wavs/interfaces/ILayerServiceManager.sol"; + +import {SimpleSubmit} from "../src/WavsSubmit.sol"; +import {SimpleTrigger} from "../src/WavsTrigger.sol"; + +// forge script ./script/Deploy.s.sol ${SERVICE_MANAGER} --sig "run(string)" --rpc-url http://localhost:8545 --broadcast +contract DeployScript is Script { using stdJson for string; string root = vm.projectRoot(); @@ -26,38 +24,18 @@ contract WavsSubmitScript is Script { function setUp() public {} - function run() public { + function run(string calldata serviceManagerAddr) public { vm.startBroadcast(privateKey); - EigenContracts memory eigen = loadEigenContractsFromFS(); - - ECDSAStakeRegistry ecdsa_registry = new ECDSAStakeRegistry(IDelegationManager(eigen.delegation_manager)); - - console.log("delegation_manager:", eigen.delegation_manager); - console.log("rewards_coordinator:", eigen.rewards_coordinator); - console.log("avs_directory:", eigen.avs_directory); - - WavsSubmit submit = new WavsSubmit( - // eigen.avs_directory, address(ecdsa_registry), eigen.rewards_coordinator, eigen.delegation_manager - ); - + SimpleSubmit submit = new SimpleSubmit(ILayerServiceManager(vm.parseAddress(serviceManagerAddr))); SimpleTrigger trigger = new SimpleTrigger(); - IStrategy mockStrategy = IStrategy(address(0x1234)); - Quorum memory quorum = Quorum({strategies: new StrategyParams[](1)}); - quorum.strategies[0] = StrategyParams({strategy: mockStrategy, multiplier: 10_000}); - ecdsa_registry.initialize(address(submit), 0, quorum); - vm.stopBroadcast(); - console.log("ecdsa_registry:", address(ecdsa_registry)); - console.log("service_handler:", address(submit)); - console.log("trigger:", address(trigger)); - string memory json = "json"; json.serialize("service_handler", Strings.toHexString(address(submit))); json.serialize("trigger", Strings.toHexString(address(trigger))); - string memory finalJson = json.serialize("ecdsa_registry", Strings.toHexString(address(ecdsa_registry))); + string memory finalJson = json.serialize("service_manager", serviceManagerAddr); vm.writeFile(script_output_path, finalJson); } @@ -72,6 +50,12 @@ contract WavsSubmitScript is Script { return fixture; } + + function loadServiceManagersFromFS() public view returns (address[] memory) { + string memory json = vm.readFile(deployments_path); + address[] memory service_managers = json.readAddressArray(".eigen_service_managers.local"); + return service_managers; + } } struct EigenContracts { diff --git a/src/WavsSubmit.sol b/src/WavsSubmit.sol index 774c71f3..f5e448ac 100644 --- a/src/WavsSubmit.sol +++ b/src/WavsSubmit.sol @@ -1,41 +1,26 @@ // SPDX-License-Identifier: MIT pragma solidity ^0.8.0; -import {IServiceHandler} from "./interfaces/IWAVSServiceHandler.sol"; +import {ILayerServiceManager} from "@wavs/interfaces/ILayerServiceManager.sol"; +import {ILayerServiceHandler} from "@wavs/interfaces/ILayerServiceHandler.sol"; + import {ISimpleTrigger} from "./interfaces/ISimpleTrigger.sol"; import {ISimpleSubmit} from "./interfaces/ISimpleSubmit.sol"; -contract WavsSubmit is IServiceHandler { - address private owner; - address private serviceManager; +contract SimpleSubmit is ILayerServiceHandler { + ILayerServiceManager private _serviceManager; mapping(ISimpleTrigger.TriggerId => bool) validTriggers; mapping(ISimpleTrigger.TriggerId => bytes) datas; mapping(ISimpleTrigger.TriggerId => bytes) signatures; - constructor() { - owner = msg.sender; - } - - modifier onlyOwner() { - require(msg.sender == owner, "Only the owner can call this function."); - _; - } - - modifier onlyServiceManager() { - require(msg.sender == serviceManager, "Only the service manager can call this function."); - _; - } - - function setServiceManager(address newServiceManager) external onlyOwner { - serviceManager = newServiceManager; + constructor(ILayerServiceManager serviceManager) { + _serviceManager = serviceManager; } - function getServiceManager() public view returns (address) { - return serviceManager; - } + function handleSignedData(bytes calldata data, bytes calldata signature) external { + _serviceManager.validate(data, signature); - function handleAddPayload(bytes calldata data, bytes calldata signature) external onlyServiceManager { ISimpleSubmit.DataWithId memory dataWithId = abi.decode(data, (ISimpleSubmit.DataWithId)); signatures[dataWithId.triggerId] = signature; diff --git a/src/WavsTrigger.sol b/src/WavsTrigger.sol index c3c556fb..e06d3cc6 100644 --- a/src/WavsTrigger.sol +++ b/src/WavsTrigger.sol @@ -1,3 +1,4 @@ +// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import {ISimpleTrigger} from "./interfaces/ISimpleTrigger.sol"; diff --git a/src/interfaces/IWAVSServiceHandler.sol b/src/interfaces/IWAVSServiceHandler.sol deleted file mode 100644 index 983225d0..00000000 --- a/src/interfaces/IWAVSServiceHandler.sol +++ /dev/null @@ -1,12 +0,0 @@ -// SPDX-License-Identifier: MIT -pragma solidity ^0.8.0; - -// https://github.com/Lay3rLabs/WAVS/blob/chain-name-newtype/sdk/contracts/solidity/interfaces/IServiceHandler.sol -interface IServiceHandler { - /** - * @notice Called by LayerServiceManager after successful payload signature validation. - * @param data The arbitrary data that was signed. - * @param signature The signature of the data. - */ - function handleAddPayload(bytes calldata data, bytes calldata signature) external; -}