diff --git a/Cargo.lock b/Cargo.lock index fbf2968..2eb6969 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2,25 +2,6 @@ # It is not intended for manual editing. version = 4 -[[package]] -name = "Inflector" -version = "0.11.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe438c63458706e03479442743baae6c88256498e6431708f6dfc520a26515d3" -dependencies = [ - "lazy_static", - "regex", -] - -[[package]] -name = "addr2line" -version = "0.24.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1" -dependencies = [ - "gimli", -] - [[package]] name = "adler2" version = "2.0.0" @@ -49,932 +30,664 @@ dependencies = [ ] [[package]] -name = "ahash" -version = "0.8.11" +name = "aes-gcm-siv" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +checksum = "ae0784134ba9375416d469ec31e7c5f9fa94405049cf08c5ce5b4698be673e0d" dependencies = [ - "cfg-if", - "getrandom 0.2.16", - "once_cell", - "version_check", - "zerocopy 0.7.35", + "aead", + "aes", + "cipher", + "ctr", + "polyval", + "subtle", + "zeroize", ] [[package]] -name = "aho-corasick" -version = "1.1.3" +name = "agave-feature-set" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +checksum = "be80c9787c7f30819e2999987cc6208c1ec6f775d7ed2b70f61a00a6e8acc0c8" dependencies = [ - "memchr", + "ahash 0.8.11", + "solana-epoch-schedule", + "solana-hash 3.1.0", + "solana-pubkey", + "solana-sha256-hasher", + "solana-svm-feature-set", ] [[package]] -name = "allocator-api2" -version = "0.2.21" +name = "agave-io-uring" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" +checksum = "81f299d8f456e09697966c084619935966c8e0cab4cb2aaf6529f80bd2e359c7" +dependencies = [ + "io-uring", + "libc", + "log", + "slab", + "smallvec", +] [[package]] -name = "alloy" -version = "0.8.3" +name = "agave-precompiles" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59febb24956a41c29bb5f450978fbe825bd6456b3f80586c8bd558dc882e7b6a" +checksum = "c4a1a2453f1454c71842928844613289c9d6869ea46faaa30e7c7649e432a429" dependencies = [ - "alloy-consensus 0.8.3", - "alloy-core", - "alloy-eips 0.8.3", - "alloy-genesis 0.8.3", - "alloy-provider 0.8.3", - "alloy-rpc-client 0.8.3", - "alloy-serde 0.8.3", - "alloy-transport-http 0.8.3", + "agave-feature-set", + "bincode", + "digest 0.10.7", + "ed25519-dalek 1.0.1", + "libsecp256k1", + "openssl", + "sha3", + "solana-ed25519-program", + "solana-message", + "solana-precompile-error", + "solana-pubkey", + "solana-sdk-ids", + "solana-secp256k1-program", + "solana-secp256r1-program", ] [[package]] -name = "alloy" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbcc41e8a11a4975b18ec6afba2cc48d591fa63336a4c526dacb50479a8d6b35" -dependencies = [ - "alloy-consensus 0.9.2", - "alloy-contract 0.9.2", - "alloy-core", - "alloy-eips 0.9.2", - "alloy-genesis 0.9.2", - "alloy-network 0.9.2", - "alloy-provider 0.9.2", - "alloy-pubsub 0.9.2", - "alloy-rpc-client 0.9.2", - "alloy-rpc-types 0.9.2", - "alloy-serde 0.9.2", - "alloy-signer 0.9.2", - "alloy-signer-aws 0.9.2", - "alloy-signer-local 0.9.2", - "alloy-transport 0.9.2", - "alloy-transport-http 0.9.2", - "alloy-transport-ipc 0.9.2", - "alloy-transport-ws 0.9.2", -] - -[[package]] -name = "alloy" -version = "0.12.6" +name = "agave-reserved-account-keys" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b4ae82946772d69f868b9ef81fc66acb1b149ef9b4601849bec4bcf5da6552e" +checksum = "efb2704410f79989956488f49d6f48fcc4f66e2e6c11d8b5f40e0e01bfbd6b91" dependencies = [ - "alloy-consensus 0.12.6", - "alloy-contract 0.12.6", - "alloy-core", - "alloy-eips 0.12.6", - "alloy-genesis 0.12.6", - "alloy-json-rpc 0.12.6", - "alloy-network 0.12.6", - "alloy-provider 0.12.6", - "alloy-pubsub 0.12.6", - "alloy-rpc-client 0.12.6", - "alloy-rpc-types 0.12.6", - "alloy-serde 0.12.6", - "alloy-signer 0.12.6", - "alloy-signer-aws 0.12.6", - "alloy-signer-local 0.12.6", - "alloy-transport 0.12.6", - "alloy-transport-http 0.12.6", - "alloy-transport-ipc 0.12.6", - "alloy-transport-ws 0.12.6", + "agave-feature-set", + "solana-pubkey", + "solana-sdk-ids", ] [[package]] -name = "alloy-chains" -version = "0.1.69" +name = "agave-syscalls" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28e2652684758b0d9b389d248b209ed9fd9989ef489a550265fe4bb8454fe7eb" +checksum = "a8605fba7ba3e97426ab19179d565a7cd9d6b5566ff49004784c99e302ac7953" dependencies = [ - "alloy-primitives", - "num_enum", - "strum 0.27.1", + "bincode", + "libsecp256k1", + "num-traits", + "solana-account", + "solana-account-info", + "solana-big-mod-exp", + "solana-blake3-hasher", + "solana-bn254", + "solana-clock", + "solana-cpi", + "solana-curve25519", + "solana-hash 3.1.0", + "solana-instruction", + "solana-keccak-hasher", + "solana-loader-v3-interface", + "solana-poseidon", + "solana-program-entrypoint", + "solana-program-runtime", + "solana-pubkey", + "solana-sbpf", + "solana-sdk-ids", + "solana-secp256k1-recover", + "solana-sha256-hasher", + "solana-stable-layout", + "solana-stake-interface", + "solana-svm-callback", + "solana-svm-feature-set", + "solana-svm-log-collector", + "solana-svm-measure", + "solana-svm-timings", + "solana-svm-type-overrides", + "solana-sysvar", + "solana-sysvar-id", + "solana-transaction-context", + "thiserror 2.0.17", +] + +[[package]] +name = "agave-transaction-view" +version = "3.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d04daeab9de8d1098156d2a73ec5e8dd019b628884c201e5af3f1e8baeffd1b0" +dependencies = [ + "solana-hash 3.1.0", + "solana-message", + "solana-packet", + "solana-pubkey", + "solana-sdk-ids", + "solana-short-vec", + "solana-signature", + "solana-svm-transaction", ] [[package]] -name = "alloy-consensus" -version = "0.5.4" +name = "ahash" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41ed961a48297c732a5d97ee321aa8bb5009ecadbcb077d8bec90cb54e651629" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" dependencies = [ - "alloy-eips 0.5.4", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.5.4", - "auto_impl", - "c-kzg", - "derive_more 1.0.0", - "serde", + "getrandom 0.2.16", + "once_cell", + "version_check", ] [[package]] -name = "alloy-consensus" -version = "0.8.3" +name = "ahash" +version = "0.8.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e88e1edea70787c33e11197d3f32ae380f3db19e6e061e539a5bcf8184a6b326" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ - "alloy-eips 0.8.3", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.8.3", - "alloy-trie", - "auto_impl", - "c-kzg", - "derive_more 1.0.0", - "serde", + "cfg-if", + "getrandom 0.2.16", + "once_cell", + "version_check", + "zerocopy 0.7.35", ] [[package]] -name = "alloy-consensus" -version = "0.9.2" +name = "aho-corasick" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4138dc275554afa6f18c4217262ac9388790b2fc393c2dfe03c51d357abf013" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" dependencies = [ - "alloy-eips 0.9.2", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.9.2", - "alloy-trie", - "auto_impl", - "c-kzg", - "derive_more 1.0.0", - "k256", - "serde", + "memchr", ] [[package]] -name = "alloy-consensus" -version = "0.12.6" +name = "alloc-no-stdlib" +version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fbf458101ed6c389e9bb70a34ebc56039868ad10472540614816cdedc8f5265" -dependencies = [ - "alloy-eips 0.12.6", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.12.6", - "alloy-trie", - "auto_impl", - "c-kzg", - "derive_more 2.0.1", - "either", - "k256", - "once_cell", - "rand 0.8.5", - "serde", - "serde_with", - "thiserror 2.0.12", -] +checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" [[package]] -name = "alloy-consensus-any" -version = "0.8.3" +name = "alloc-stdlib" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57b1bb53f40c0273cd1975573cd457b39213e68584e36d1401d25fd0398a1d65" +checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" dependencies = [ - "alloy-consensus 0.8.3", - "alloy-eips 0.8.3", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.8.3", - "serde", + "alloc-no-stdlib", ] [[package]] -name = "alloy-consensus-any" -version = "0.9.2" +name = "allocator-api2" +version = "0.2.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fa04e1882c31288ce1028fdf31b6ea94cfa9eafa2e497f903ded631c8c6a42c" -dependencies = [ - "alloy-consensus 0.9.2", - "alloy-eips 0.9.2", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.9.2", - "serde", -] +checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" [[package]] -name = "alloy-consensus-any" -version = "0.12.6" +name = "android-tzdata" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc982af629e511292310fe85b433427fd38cb3105147632b574abc997db44c91" -dependencies = [ - "alloy-consensus 0.12.6", - "alloy-eips 0.12.6", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.12.6", - "serde", -] +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" [[package]] -name = "alloy-contract" -version = "0.9.2" +name = "android_system_properties" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f21886c1fea0626f755a49b2ac653b396fb345233f6170db2da3d0ada31560c" -dependencies = [ - "alloy-dyn-abi", - "alloy-json-abi", - "alloy-network 0.9.2", - "alloy-network-primitives 0.9.2", - "alloy-primitives", - "alloy-provider 0.9.2", - "alloy-pubsub 0.9.2", - "alloy-rpc-types-eth 0.9.2", - "alloy-sol-types", - "alloy-transport 0.9.2", - "futures", - "futures-util", - "thiserror 2.0.12", +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", ] [[package]] -name = "alloy-contract" -version = "0.12.6" +name = "anes" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd0a0c1ddee20ecc14308aae21c2438c994df7b39010c26d70f86e1d8fdb8db0" -dependencies = [ - "alloy-consensus 0.12.6", - "alloy-dyn-abi", - "alloy-json-abi", - "alloy-network 0.12.6", - "alloy-network-primitives 0.12.6", - "alloy-primitives", - "alloy-provider 0.12.6", - "alloy-pubsub 0.12.6", - "alloy-rpc-types-eth 0.12.6", - "alloy-sol-types", - "alloy-transport 0.12.6", - "futures", - "futures-util", - "thiserror 2.0.12", -] +checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" [[package]] -name = "alloy-core" -version = "0.8.25" +name = "anstream" +version = "0.6.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d8bcce99ad10fe02640cfaec1c6bc809b837c783c1d52906aa5af66e2a196f6" +checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" dependencies = [ - "alloy-dyn-abi", - "alloy-json-abi", - "alloy-primitives", - "alloy-rlp", - "alloy-sol-types", + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", ] [[package]] -name = "alloy-dyn-abi" -version = "0.8.25" +name = "anstyle" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb8e762aefd39a397ff485bc86df673465c4ad3ec8819cc60833a8a3ba5cdc87" -dependencies = [ - "alloy-json-abi", - "alloy-primitives", - "alloy-sol-type-parser", - "alloy-sol-types", - "const-hex", - "itoa", - "serde", - "serde_json", - "winnow", -] +checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" [[package]] -name = "alloy-eip2124" -version = "0.1.0" +name = "anstyle-parse" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "675264c957689f0fd75f5993a73123c2cc3b5c235a38f5b9037fe6c826bfb2c0" +checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" dependencies = [ - "alloy-primitives", - "alloy-rlp", - "crc", - "serde", - "thiserror 2.0.12", + "utf8parse", ] [[package]] -name = "alloy-eip2930" -version = "0.1.0" +name = "anstyle-query" +version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0069cf0642457f87a01a014f6dc29d5d893cd4fd8fddf0c3cdfad1bb3ebafc41" +checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" dependencies = [ - "alloy-primitives", - "alloy-rlp", - "serde", + "windows-sys 0.59.0", ] [[package]] -name = "alloy-eip7702" -version = "0.3.2" +name = "anstyle-wincon" +version = "3.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64ffc577390ce50234e02d841214b3dc0bea6aaaae8e04bbf3cb82e9a45da9eb" +checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e" dependencies = [ - "alloy-primitives", - "alloy-rlp", - "derive_more 1.0.0", - "serde", + "anstyle", + "once_cell", + "windows-sys 0.59.0", ] [[package]] -name = "alloy-eip7702" -version = "0.4.2" +name = "anyhow" +version = "1.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c986539255fb839d1533c128e190e557e52ff652c9ef62939e233a81dd93f7e" -dependencies = [ - "alloy-primitives", - "alloy-rlp", - "derive_more 1.0.0", - "serde", -] +checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" [[package]] -name = "alloy-eip7702" -version = "0.5.1" +name = "aquamarine" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b15b13d38b366d01e818fe8e710d4d702ef7499eacd44926a06171dd9585d0c" +checksum = "0f50776554130342de4836ba542aa85a4ddb361690d7e8df13774d7284c3d5c2" dependencies = [ - "alloy-primitives", - "alloy-rlp", - "k256", - "serde", - "thiserror 2.0.12", + "include_dir", + "itertools 0.10.5", + "proc-macro-error2", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "alloy-eips" -version = "0.5.4" +name = "arc-swap" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b69e06cf9c37be824b9d26d6d101114fdde6af0c87de2828b414c05c4b3daa71" -dependencies = [ - "alloy-eip2930", - "alloy-eip7702 0.3.2", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.5.4", - "c-kzg", - "derive_more 1.0.0", - "once_cell", - "serde", - "sha2 0.10.8", -] +checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457" [[package]] -name = "alloy-eips" -version = "0.8.3" +name = "ark-bn254" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f9fadfe089e9ccc0650473f2d4ef0a28bc015bbca5631d9f0f09e49b557fdb3" +checksum = "a22f4561524cd949590d78d7d4c5df8f592430d221f7f3c9497bbafd8972120f" dependencies = [ - "alloy-eip2930", - "alloy-eip7702 0.4.2", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.8.3", - "c-kzg", - "derive_more 1.0.0", - "once_cell", - "serde", - "sha2 0.10.8", + "ark-ec 0.4.2", + "ark-ff 0.4.2", + "ark-std 0.4.0", ] [[package]] -name = "alloy-eips" -version = "0.9.2" +name = "ark-bn254" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52dd5869ed09e399003e0e0ec6903d981b2a92e74c5d37e6b40890bad2517526" +checksum = "d69eab57e8d2663efa5c63135b2af4f396d66424f88954c21104125ab6b3e6bc" dependencies = [ - "alloy-eip2930", - "alloy-eip7702 0.5.1", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.9.2", - "c-kzg", - "derive_more 1.0.0", - "once_cell", - "serde", - "sha2 0.10.8", + "ark-ec 0.5.0", + "ark-ff 0.5.0", + "ark-r1cs-std", + "ark-std 0.5.0", ] [[package]] -name = "alloy-eips" -version = "0.12.6" +name = "ark-ec" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e86967eb559920e4b9102e4cb825fe30f2e9467988353ce4809f0d3f2c90cd4" -dependencies = [ - "alloy-eip2124", - "alloy-eip2930", - "alloy-eip7702 0.5.1", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.12.6", - "auto_impl", - "c-kzg", - "derive_more 2.0.1", - "either", - "once_cell", - "serde", - "sha2 0.10.8", +checksum = "defd9a439d56ac24968cca0571f598a61bc8c55f71d50a89cda591cb750670ba" +dependencies = [ + "ark-ff 0.4.2", + "ark-poly 0.4.2", + "ark-serialize 0.4.2", + "ark-std 0.4.0", + "derivative", + "hashbrown 0.13.2", + "itertools 0.10.5", + "num-traits", + "zeroize", ] [[package]] -name = "alloy-genesis" -version = "0.8.3" +name = "ark-ec" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b2a4cf7b70f3495788e74ce1c765260ffe38820a2a774ff4aacb62e31ea73f9" +checksum = "43d68f2d516162846c1238e755a7c4d131b892b70cc70c471a8e3ca3ed818fce" dependencies = [ - "alloy-primitives", - "alloy-serde 0.8.3", - "alloy-trie", - "serde", + "ahash 0.8.11", + "ark-ff 0.5.0", + "ark-poly 0.5.0", + "ark-serialize 0.5.0", + "ark-std 0.5.0", + "educe 0.6.0", + "fnv", + "hashbrown 0.15.2", + "itertools 0.13.0", + "num-bigint 0.4.6", + "num-integer", + "num-traits", + "zeroize", ] [[package]] -name = "alloy-genesis" -version = "0.9.2" +name = "ark-ff" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7d2a7fe5c1a9bd6793829ea21a636f30fc2b3f5d2e7418ba86d96e41dd1f460" +checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" dependencies = [ - "alloy-eips 0.9.2", - "alloy-primitives", - "alloy-serde 0.9.2", - "alloy-trie", - "serde", + "ark-ff-asm 0.4.2", + "ark-ff-macros 0.4.2", + "ark-serialize 0.4.2", + "ark-std 0.4.0", + "derivative", + "digest 0.10.7", + "itertools 0.10.5", + "num-bigint 0.4.6", + "num-traits", + "paste", + "rustc_version", + "zeroize", ] [[package]] -name = "alloy-genesis" -version = "0.12.6" +name = "ark-ff" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a40de6f5b53ecf5fd7756072942f41335426d9a3704cd961f77d854739933bcf" +checksum = "a177aba0ed1e0fbb62aa9f6d0502e9b46dad8c2eab04c14258a1212d2557ea70" dependencies = [ - "alloy-eips 0.12.6", - "alloy-primitives", - "alloy-serde 0.12.6", - "alloy-trie", - "serde", + "ark-ff-asm 0.5.0", + "ark-ff-macros 0.5.0", + "ark-serialize 0.5.0", + "ark-std 0.5.0", + "arrayvec", + "digest 0.10.7", + "educe 0.6.0", + "itertools 0.13.0", + "num-bigint 0.4.6", + "num-traits", + "paste", + "zeroize", ] [[package]] -name = "alloy-json-abi" -version = "0.8.25" +name = "ark-ff-asm" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe6beff64ad0aa6ad1019a3db26fef565aefeb011736150ab73ed3366c3cfd1b" +checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" dependencies = [ - "alloy-primitives", - "alloy-sol-type-parser", - "serde", - "serde_json", + "quote", + "syn 1.0.109", ] [[package]] -name = "alloy-json-rpc" -version = "0.5.4" +name = "ark-ff-asm" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af5979e0d5a7bf9c7eb79749121e8256e59021af611322aee56e77e20776b4b3" +checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60" dependencies = [ - "alloy-primitives", - "alloy-sol-types", - "serde", - "serde_json", - "thiserror 1.0.69", - "tracing", + "quote", + "syn 2.0.101", ] [[package]] -name = "alloy-json-rpc" -version = "0.8.3" +name = "ark-ff-macros" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e29040b9d5fe2fb70415531882685b64f8efd08dfbd6cc907120650504821105" +checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" dependencies = [ - "alloy-primitives", - "alloy-sol-types", - "serde", - "serde_json", - "thiserror 2.0.12", - "tracing", + "num-bigint 0.4.6", + "num-traits", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] -name = "alloy-json-rpc" -version = "0.9.2" +name = "ark-ff-macros" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2008bedb8159a255b46b7c8614516eda06679ea82f620913679afbd8031fea72" +checksum = "09be120733ee33f7693ceaa202ca41accd5653b779563608f1234f78ae07c4b3" dependencies = [ - "alloy-primitives", - "alloy-sol-types", - "serde", - "serde_json", - "thiserror 2.0.12", - "tracing", + "num-bigint 0.4.6", + "num-traits", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "alloy-json-rpc" -version = "0.12.6" +name = "ark-poly" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27434beae2514d4a2aa90f53832cbdf6f23e4b5e2656d95eaf15f9276e2418b6" +checksum = "d320bfc44ee185d899ccbadfa8bc31aab923ce1558716e1997a1e74057fe86bf" dependencies = [ - "alloy-primitives", - "alloy-sol-types", - "serde", - "serde_json", - "thiserror 2.0.12", - "tracing", + "ark-ff 0.4.2", + "ark-serialize 0.4.2", + "ark-std 0.4.0", + "derivative", + "hashbrown 0.13.2", ] [[package]] -name = "alloy-network" -version = "0.5.4" +name = "ark-poly" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "204237129086ce5dc17a58025e93739b01b45313841f98fa339eb1d780511e57" -dependencies = [ - "alloy-consensus 0.5.4", - "alloy-eips 0.5.4", - "alloy-json-rpc 0.5.4", - "alloy-network-primitives 0.5.4", - "alloy-primitives", - "alloy-rpc-types-eth 0.5.4", - "alloy-serde 0.5.4", - "alloy-signer 0.5.4", - "alloy-sol-types", - "async-trait", - "auto_impl", - "futures-utils-wasm", - "thiserror 1.0.69", +checksum = "579305839da207f02b89cd1679e50e67b4331e2f9294a57693e5051b7703fe27" +dependencies = [ + "ahash 0.8.11", + "ark-ff 0.5.0", + "ark-serialize 0.5.0", + "ark-std 0.5.0", + "educe 0.6.0", + "fnv", + "hashbrown 0.15.2", ] [[package]] -name = "alloy-network" -version = "0.8.3" +name = "ark-r1cs-std" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "510cc00b318db0dfccfdd2d032411cfae64fc144aef9679409e014145d3dacc4" +checksum = "941551ef1df4c7a401de7068758db6503598e6f01850bdb2cfdb614a1f9dbea1" dependencies = [ - "alloy-consensus 0.8.3", - "alloy-consensus-any 0.8.3", - "alloy-eips 0.8.3", - "alloy-json-rpc 0.8.3", - "alloy-network-primitives 0.8.3", - "alloy-primitives", - "alloy-rpc-types-any 0.8.3", - "alloy-rpc-types-eth 0.8.3", - "alloy-serde 0.8.3", - "alloy-signer 0.8.3", - "alloy-sol-types", - "async-trait", - "auto_impl", - "futures-utils-wasm", - "serde", - "serde_json", - "thiserror 2.0.12", + "ark-ec 0.5.0", + "ark-ff 0.5.0", + "ark-relations", + "ark-std 0.5.0", + "educe 0.6.0", + "num-bigint 0.4.6", + "num-integer", + "num-traits", + "tracing", ] [[package]] -name = "alloy-network" -version = "0.9.2" +name = "ark-relations" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4556f01fe41d0677495df10a648ddcf7ce118b0e8aa9642a0e2b6dd1fb7259de" -dependencies = [ - "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", - "alloy-rpc-types-eth 0.9.2", - "alloy-serde 0.9.2", - "alloy-signer 0.9.2", - "alloy-sol-types", - "async-trait", - "auto_impl", - "futures-utils-wasm", - "serde", - "serde_json", - "thiserror 2.0.12", +checksum = "ec46ddc93e7af44bcab5230937635b06fb5744464dd6a7e7b083e80ebd274384" +dependencies = [ + "ark-ff 0.5.0", + "ark-std 0.5.0", + "tracing", + "tracing-subscriber 0.2.25", ] [[package]] -name = "alloy-network" -version = "0.12.6" +name = "ark-serialize" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26a33a38c7486b1945f8d093ff027add2f3a8f83c7300dbad6165cc49150085e" -dependencies = [ - "alloy-consensus 0.12.6", - "alloy-consensus-any 0.12.6", - "alloy-eips 0.12.6", - "alloy-json-rpc 0.12.6", - "alloy-network-primitives 0.12.6", - "alloy-primitives", - "alloy-rpc-types-any 0.12.6", - "alloy-rpc-types-eth 0.12.6", - "alloy-serde 0.12.6", - "alloy-signer 0.12.6", - "alloy-sol-types", - "async-trait", - "auto_impl", - "derive_more 2.0.1", - "futures-utils-wasm", - "serde", - "serde_json", - "thiserror 2.0.12", +checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" +dependencies = [ + "ark-serialize-derive 0.4.2", + "ark-std 0.4.0", + "digest 0.10.7", + "num-bigint 0.4.6", ] [[package]] -name = "alloy-network-primitives" -version = "0.5.4" +name = "ark-serialize" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "514f70ee2a953db21631cd817b13a1571474ec77ddc03d47616d5e8203489fde" +checksum = "3f4d068aaf107ebcd7dfb52bc748f8030e0fc930ac8e360146ca54c1203088f7" dependencies = [ - "alloy-consensus 0.5.4", - "alloy-eips 0.5.4", - "alloy-primitives", - "alloy-serde 0.5.4", - "serde", + "ark-serialize-derive 0.5.0", + "ark-std 0.5.0", + "arrayvec", + "digest 0.10.7", + "num-bigint 0.4.6", ] [[package]] -name = "alloy-network-primitives" -version = "0.8.3" +name = "ark-serialize-derive" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9081c099e798b8a2bba2145eb82a9a146f01fc7a35e9ab6e7b43305051f97550" +checksum = "ae3281bc6d0fd7e549af32b52511e1302185bd688fd3359fa36423346ff682ea" dependencies = [ - "alloy-consensus 0.8.3", - "alloy-eips 0.8.3", - "alloy-primitives", - "alloy-serde 0.8.3", - "serde", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] -name = "alloy-network-primitives" -version = "0.9.2" +name = "ark-serialize-derive" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31c3c6b71340a1d076831823f09cb6e02de01de5c6630a9631bdb36f947ff80" +checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d" dependencies = [ - "alloy-consensus 0.9.2", - "alloy-eips 0.9.2", - "alloy-primitives", - "alloy-serde 0.9.2", - "serde", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "alloy-network-primitives" -version = "0.12.6" +name = "ark-std" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db973a7a23cbe96f2958e5687c51ce2d304b5c6d0dc5ccb3de8667ad8476f50b" +checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" dependencies = [ - "alloy-consensus 0.12.6", - "alloy-eips 0.12.6", - "alloy-primitives", - "alloy-serde 0.12.6", - "serde", + "num-traits", + "rand 0.8.5", ] [[package]] -name = "alloy-primitives" -version = "0.8.25" +name = "ark-std" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c77490fe91a0ce933a1f219029521f20fc28c2c0ca95d53fa4da9c00b8d9d4e" +checksum = "246a225cc6131e9ee4f24619af0f19d67761fff15d7ccc22e42b80846e69449a" dependencies = [ - "alloy-rlp", - "bytes", - "cfg-if", - "const-hex", - "derive_more 2.0.1", - "foldhash", - "hashbrown 0.15.2", - "indexmap 2.9.0", - "itoa", - "k256", - "keccak-asm", - "paste", - "proptest", + "num-traits", "rand 0.8.5", - "ruint", - "rustc-hash", - "serde", - "sha3", - "tiny-keccak", ] [[package]] -name = "alloy-provider" -version = "0.5.4" +name = "arrayref" +version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4814d141ede360bb6cd1b4b064f1aab9de391e7c4d0d4d50ac89ea4bc1e25fbd" -dependencies = [ - "alloy-chains", - "alloy-consensus 0.5.4", - "alloy-eips 0.5.4", - "alloy-json-rpc 0.5.4", - "alloy-network 0.5.4", - "alloy-network-primitives 0.5.4", - "alloy-primitives", - "alloy-rpc-client 0.5.4", - "alloy-rpc-types-eth 0.5.4", - "alloy-transport 0.5.4", - "alloy-transport-http 0.5.4", - "async-stream", - "async-trait", - "auto_impl", - "dashmap 6.1.0", - "futures", - "futures-utils-wasm", - "lru 0.12.5", - "parking_lot", - "pin-project", - "reqwest 0.12.15", - "schnellru", - "serde", - "serde_json", +checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" + +[[package]] +name = "arrayvec" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" + +[[package]] +name = "ascii" +version = "0.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eab1c04a571841102f5345a8fc0f6bb3d31c315dec879b5c6e42e40ce7ffa34e" + +[[package]] +name = "asn1-rs" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f6fd5ddaf0351dff5b8da21b2fb4ff8e08ddd02857f0bf69c47639106c0fff0" +dependencies = [ + "asn1-rs-derive", + "asn1-rs-impl", + "displaydoc", + "nom", + "num-traits", + "rusticata-macros", "thiserror 1.0.69", - "tokio", - "tracing", - "url", - "wasmtimer 0.2.1", + "time", ] [[package]] -name = "alloy-provider" -version = "0.8.3" +name = "asn1-rs-derive" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc2dfaddd9a30aa870a78a4e1316e3e115ec1e12e552cbc881310456b85c1f24" +checksum = "726535892e8eae7e70657b4c8ea93d26b8553afb1ce617caee529ef96d7dee6c" dependencies = [ - "alloy-chains", - "alloy-consensus 0.8.3", - "alloy-eips 0.8.3", - "alloy-json-rpc 0.8.3", - "alloy-network 0.8.3", - "alloy-network-primitives 0.8.3", - "alloy-primitives", - "alloy-rpc-client 0.8.3", - "alloy-rpc-types-eth 0.8.3", - "alloy-transport 0.8.3", - "alloy-transport-http 0.8.3", - "async-stream", - "async-trait", - "auto_impl", - "dashmap 6.1.0", - "futures", - "futures-utils-wasm", - "lru 0.12.5", - "parking_lot", - "pin-project", - "reqwest 0.12.15", - "schnellru", - "serde", - "serde_json", - "thiserror 2.0.12", - "tokio", - "tracing", - "url", - "wasmtimer 0.4.1", + "proc-macro2", + "quote", + "syn 1.0.109", + "synstructure 0.12.6", ] [[package]] -name = "alloy-provider" -version = "0.9.2" +name = "asn1-rs-impl" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a22c4441b3ebe2d77fa9cf629ba68c3f713eb91779cff84275393db97eddd82" -dependencies = [ - "alloy-chains", - "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-pubsub 0.9.2", - "alloy-rpc-client 0.9.2", - "alloy-rpc-types-eth 0.9.2", - "alloy-transport 0.9.2", - "alloy-transport-http 0.9.2", - "alloy-transport-ipc 0.9.2", - "alloy-transport-ws 0.9.2", - "async-stream", - "async-trait", - "auto_impl", - "dashmap 6.1.0", - "futures", - "futures-utils-wasm", - "lru 0.12.5", - "parking_lot", - "pin-project", - "reqwest 0.12.15", - "schnellru", - "serde", - "serde_json", - "thiserror 2.0.12", - "tokio", - "tracing", - "url", - "wasmtimer 0.4.1", +checksum = "2777730b2039ac0f95f093556e61b6d26cebed5393ca6f152717777cec3a42ed" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] -name = "alloy-provider" -version = "0.12.6" +name = "assert_matches" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b03bde77ad73feae14aa593bcabb932c8098c0f0750ead973331cfc0003a4e1" -dependencies = [ - "alloy-chains", - "alloy-consensus 0.12.6", - "alloy-eips 0.12.6", - "alloy-json-rpc 0.12.6", - "alloy-network 0.12.6", - "alloy-network-primitives 0.12.6", - "alloy-primitives", - "alloy-pubsub 0.12.6", - "alloy-rpc-client 0.12.6", - "alloy-rpc-types-anvil", - "alloy-rpc-types-debug", - "alloy-rpc-types-eth 0.12.6", - "alloy-rpc-types-trace", - "alloy-rpc-types-txpool", - "alloy-sol-types", - "alloy-transport 0.12.6", - "alloy-transport-http 0.12.6", - "alloy-transport-ipc 0.12.6", - "alloy-transport-ws 0.12.6", - "async-stream", - "async-trait", - "auto_impl", - "dashmap 6.1.0", - "futures", - "futures-utils-wasm", - "lru 0.13.0", - "parking_lot", - "pin-project", - "reqwest 0.12.15", - "serde", - "serde_json", - "thiserror 2.0.12", - "tokio", - "tracing", - "url", - "wasmtimer 0.4.1", -] +checksum = "9b34d609dfbaf33d6889b2b7106d3ca345eacad44200913df5ba02bfd31d2ba9" [[package]] -name = "alloy-pubsub" -version = "0.9.2" +name = "async-channel" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2269fd635f7b505f27c63a3cb293148cd02301efce4c8bdd9ff54fbfc4a20e23" +checksum = "81953c529336010edd6d8e358f886d9581267795c61b19475b71314bffa46d35" dependencies = [ - "alloy-json-rpc 0.9.2", - "alloy-primitives", - "alloy-transport 0.9.2", - "bimap", - "futures", - "serde", - "serde_json", - "tokio", - "tokio-stream", - "tower 0.5.2", - "tracing", + "concurrent-queue", + "event-listener 2.5.3", + "futures-core", ] [[package]] -name = "alloy-pubsub" -version = "0.12.6" +name = "async-compression" +version = "0.4.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "721aca709a9231815ad5903a2d284042cc77e7d9d382696451b30c9ee0950001" +checksum = "5a89bce6054c720275ac2432fbba080a66a2106a44a1b804553930ca6909f4e0" dependencies = [ - "alloy-json-rpc 0.12.6", - "alloy-primitives", - "alloy-transport 0.12.6", - "bimap", - "futures", - "serde", - "serde_json", + "compression-codecs", + "compression-core", + "futures-core", + "pin-project-lite", "tokio", - "tokio-stream", - "tower 0.5.2", - "tracing", ] [[package]] -name = "alloy-rlp" -version = "0.3.11" +name = "async-lock" +version = "3.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6c1d995bff8d011f7cd6c81820d51825e6e06d6db73914c1630ecf544d83d6" +checksum = "5fd03604047cee9b6ce9de9f70c6cd540a0520c813cbd49bae61f33ab80ed1dc" dependencies = [ - "alloy-rlp-derive", - "arrayvec", - "bytes", + "event-listener 5.4.0", + "event-listener-strategy", + "pin-project-lite", ] [[package]] -name = "alloy-rlp-derive" -version = "0.3.11" +name = "async-trait" +version = "0.1.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a40e1ef334153322fd878d07e86af7a529bcb86b2439525920a88eba87bcf943" +checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", @@ -982,6785 +695,7463 @@ dependencies = [ ] [[package]] -name = "alloy-rpc-client" -version = "0.5.4" +name = "autocfg" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fc2bd1e7403463a5f2c61e955bcc9d3072b63aa177442b0f9aa6a6d22a941e3" -dependencies = [ - "alloy-json-rpc 0.5.4", - "alloy-primitives", - "alloy-transport 0.5.4", - "alloy-transport-http 0.5.4", - "futures", - "pin-project", - "reqwest 0.12.15", - "serde", - "serde_json", - "tokio", - "tokio-stream", - "tower 0.5.2", - "tracing", - "url", - "wasmtimer 0.2.1", -] +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" [[package]] -name = "alloy-rpc-client" -version = "0.8.3" +name = "axum" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "531137b283547d5b9a5cafc96b006c64ef76810c681d606f28be9781955293b6" +checksum = "edca88bc138befd0323b20752846e6587272d3b03b0343c8ea28a6f819e6e71f" dependencies = [ - "alloy-json-rpc 0.8.3", - "alloy-primitives", - "alloy-transport 0.8.3", - "alloy-transport-http 0.8.3", - "futures", - "pin-project", - "reqwest 0.12.15", - "serde", - "serde_json", - "tokio", - "tokio-stream", - "tower 0.5.2", - "tracing", - "url", - "wasmtimer 0.4.1", -] - -[[package]] -name = "alloy-rpc-client" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d06a292b37e182e514903ede6e623b9de96420e8109ce300da288a96d88b7e4b" -dependencies = [ - "alloy-json-rpc 0.9.2", - "alloy-primitives", - "alloy-pubsub 0.9.2", - "alloy-transport 0.9.2", - "alloy-transport-http 0.9.2", - "alloy-transport-ipc 0.9.2", - "alloy-transport-ws 0.9.2", - "futures", - "pin-project", - "reqwest 0.12.15", + "async-trait", + "axum-core 0.4.5", + "bytes", + "futures-util", + "http 1.3.1", + "http-body", + "http-body-util", + "hyper", + "hyper-util", + "itoa", + "matchit 0.7.3", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", "serde", "serde_json", + "serde_path_to_error", + "serde_urlencoded", + "sync_wrapper", "tokio", - "tokio-stream", "tower 0.5.2", + "tower-layer", + "tower-service", "tracing", - "url", - "wasmtimer 0.4.1", ] [[package]] -name = "alloy-rpc-client" -version = "0.12.6" +name = "axum" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "445a3298c14fae7afb5b9f2f735dead989f3dd83020c2ab8e48ed95d7b6d1acb" +checksum = "021e862c184ae977658b36c4500f7feac3221ca5da43e3f25bd04ab6c79a29b5" dependencies = [ - "alloy-json-rpc 0.12.6", - "alloy-primitives", - "alloy-pubsub 0.12.6", - "alloy-transport 0.12.6", - "alloy-transport-http 0.12.6", - "alloy-transport-ipc 0.12.6", - "alloy-transport-ws 0.12.6", - "async-stream", - "futures", - "pin-project", - "reqwest 0.12.15", + "axum-core 0.5.2", + "bytes", + "form_urlencoded", + "futures-util", + "http 1.3.1", + "http-body", + "http-body-util", + "hyper", + "hyper-util", + "itoa", + "matchit 0.8.4", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", "serde", "serde_json", + "serde_path_to_error", + "serde_urlencoded", + "sync_wrapper", "tokio", - "tokio-stream", "tower 0.5.2", + "tower-layer", + "tower-service", "tracing", - "tracing-futures", - "url", - "wasmtimer 0.4.1", ] [[package]] -name = "alloy-rpc-types" -version = "0.9.2" +name = "axum-core" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9383845dd924939e7ab0298bbfe231505e20928907d7905aa3bf112287305e06" +checksum = "09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199" dependencies = [ - "alloy-primitives", - "alloy-rpc-types-engine 0.9.2", - "alloy-rpc-types-eth 0.9.2", - "alloy-serde 0.9.2", - "serde", + "async-trait", + "bytes", + "futures-util", + "http 1.3.1", + "http-body", + "http-body-util", + "mime", + "pin-project-lite", + "rustversion", + "sync_wrapper", + "tower-layer", + "tower-service", + "tracing", ] [[package]] -name = "alloy-rpc-types" -version = "0.12.6" +name = "axum-core" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9157deaec6ba2ad7854f16146e4cd60280e76593eed79fdcb06e0fa8b6c60f77" +checksum = "68464cd0412f486726fb3373129ef5d2993f90c34bc2bc1c1e9943b2f4fc7ca6" dependencies = [ - "alloy-primitives", - "alloy-rpc-types-anvil", - "alloy-rpc-types-engine 0.12.6", - "alloy-rpc-types-eth 0.12.6", - "alloy-rpc-types-trace", - "alloy-rpc-types-txpool", - "alloy-serde 0.12.6", - "serde", + "bytes", + "futures-core", + "http 1.3.1", + "http-body", + "http-body-util", + "mime", + "pin-project-lite", + "rustversion", + "sync_wrapper", + "tower-layer", + "tower-service", + "tracing", ] [[package]] -name = "alloy-rpc-types-anvil" -version = "0.12.6" +name = "base16ct" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a80ee83ef97e7ffd667a81ebdb6154558dfd5e8f20d8249a10a12a1671a04b3" -dependencies = [ - "alloy-primitives", - "alloy-rpc-types-eth 0.12.6", - "alloy-serde 0.12.6", - "serde", -] +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" [[package]] -name = "alloy-rpc-types-any" -version = "0.8.3" +name = "base64" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed98e1af55a7d856bfa385f30f63d8d56be2513593655c904a8f4a7ec963aa3e" -dependencies = [ - "alloy-consensus-any 0.8.3", - "alloy-rpc-types-eth 0.8.3", - "alloy-serde 0.8.3", -] +checksum = "3441f0f7b02788e948e47f457ca01f1d7e6d92c693bc132c22b087d3141c03ff" [[package]] -name = "alloy-rpc-types-any" -version = "0.9.2" +name = "base64" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca445cef0eb6c2cf51cfb4e214fbf1ebd00893ae2e6f3b944c8101b07990f988" -dependencies = [ - "alloy-consensus-any 0.9.2", - "alloy-rpc-types-eth 0.9.2", - "alloy-serde 0.9.2", -] +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" [[package]] -name = "alloy-rpc-types-any" -version = "0.12.6" +name = "base64" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "604dea1f00fd646debe8033abe8e767c732868bf8a5ae9df6321909ccbc99c56" -dependencies = [ - "alloy-consensus-any 0.12.6", - "alloy-rpc-types-eth 0.12.6", - "alloy-serde 0.12.6", -] +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] -name = "alloy-rpc-types-debug" -version = "0.12.6" +name = "base64ct" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08b113a0087d226291b9768ed331818fa0b0744cc1207ae7c150687cf3fde1bd" -dependencies = [ - "alloy-primitives", - "serde", -] +checksum = "89e25b6adfb930f02d1981565a6e5d9c547ac15a96606256d3b59040e5cd4ca3" [[package]] -name = "alloy-rpc-types-engine" -version = "0.9.2" +name = "bincode" +version = "1.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a5f821f30344862a0b6eb9a1c2eb91dfb2ff44c7489f37152a526cdcab79264" +checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" dependencies = [ - "alloy-consensus 0.9.2", - "alloy-eips 0.9.2", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.9.2", - "derive_more 1.0.0", "serde", - "strum 0.26.3", ] [[package]] -name = "alloy-rpc-types-engine" -version = "0.12.6" +name = "bitflags" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "874ac9d1249ece0453e262d9ba72da9dbb3b7a2866220ded5940c2e47f1aa04d" +checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" dependencies = [ - "alloy-consensus 0.12.6", - "alloy-eips 0.12.6", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.12.6", - "derive_more 2.0.1", - "rand 0.8.5", "serde", - "strum 0.27.1", ] [[package]] -name = "alloy-rpc-types-eth" -version = "0.5.4" +name = "bitmaps" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b034779a4850b4b03f5be5ea674a1cf7d746b2da762b34d1860ab45e48ca27" +checksum = "031043d04099746d8db04daf1fa424b2bc8bd69d92b25962dcde24da39ab64a2" dependencies = [ - "alloy-consensus 0.5.4", - "alloy-eips 0.5.4", - "alloy-network-primitives 0.5.4", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.5.4", - "alloy-sol-types", - "derive_more 1.0.0", - "itertools 0.13.0", - "serde", - "serde_json", + "typenum", ] [[package]] -name = "alloy-rpc-types-eth" -version = "0.8.3" +name = "blake3" +version = "1.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8737d7a6e37ca7bba9c23e9495c6534caec6760eb24abc9d5ffbaaba147818e1" +checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" dependencies = [ - "alloy-consensus 0.8.3", - "alloy-consensus-any 0.8.3", - "alloy-eips 0.8.3", - "alloy-network-primitives 0.8.3", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.8.3", - "alloy-sol-types", - "derive_more 1.0.0", - "itertools 0.13.0", - "serde", - "serde_json", + "arrayref", + "arrayvec", + "cc", + "cfg-if", + "constant_time_eq", + "digest 0.10.7", ] [[package]] -name = "alloy-rpc-types-eth" -version = "0.9.2" +name = "block-buffer" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0938bc615c02421bd86c1733ca7205cc3d99a122d9f9bff05726bd604b76a5c2" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" dependencies = [ - "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", - "alloy-sol-types", - "itertools 0.13.0", - "serde", - "serde_json", - "thiserror 2.0.12", + "generic-array", ] [[package]] -name = "alloy-rpc-types-eth" -version = "0.12.6" +name = "block-buffer" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e13d71eac04513a71af4b3df580f52f2b4dcbff9d971cc9a52519acf55514cb" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" dependencies = [ - "alloy-consensus 0.12.6", - "alloy-consensus-any 0.12.6", - "alloy-eips 0.12.6", - "alloy-network-primitives 0.12.6", - "alloy-primitives", - "alloy-rlp", - "alloy-serde 0.12.6", - "alloy-sol-types", - "itertools 0.14.0", - "serde", - "serde_json", - "thiserror 2.0.12", + "generic-array", ] [[package]] -name = "alloy-rpc-types-trace" -version = "0.12.6" +name = "blst" +version = "0.3.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4747763aee39c1b0f5face79bde9be8932be05b2db7d8bdcebb93490f32c889c" +checksum = "47c79a94619fade3c0b887670333513a67ac28a6a7e653eb260bf0d4103db38d" dependencies = [ - "alloy-primitives", - "alloy-rpc-types-eth 0.12.6", - "alloy-serde 0.12.6", - "serde", - "serde_json", - "thiserror 2.0.12", + "cc", + "glob", + "threadpool", + "zeroize", ] [[package]] -name = "alloy-rpc-types-txpool" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70132ebdbea1eaa68c4d6f7a62c2fadf0bdce83b904f895ab90ca4ec96f63468" +name = "bn254" +version = "0.1.3" +source = "git+https://github.com/BreadchainCoop/bn254.git#8e8b32a5899707b04ce53e7f1a096213589d504c" dependencies = [ - "alloy-primitives", - "alloy-rpc-types-eth 0.12.6", - "alloy-serde 0.12.6", - "serde", + "ark-bn254 0.5.0", + "ark-ec 0.5.0", + "ark-ff 0.5.0", + "ark-serialize 0.5.0", + "bytes", + "commonware-codec", + "commonware-cryptography", + "commonware-utils", + "eigen-crypto-bn254", + "rand 0.8.5", ] [[package]] -name = "alloy-serde" -version = "0.5.4" +name = "borsh" +version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "028e72eaa9703e4882344983cfe7636ce06d8cce104a78ea62fd19b46659efc4" +checksum = "ad8646f98db542e39fc66e68a20b2144f6a732636df7c2354e74645faaa433ce" dependencies = [ - "alloy-primitives", - "serde", - "serde_json", + "borsh-derive", + "cfg_aliases", ] [[package]] -name = "alloy-serde" -version = "0.8.3" +name = "borsh-derive" +version = "1.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5851bf8d5ad33014bd0c45153c603303e730acc8a209450a7ae6b4a12c2789e2" +checksum = "fdd1d3c0c2f5833f22386f252fe8ed005c7f59fdcddeef025c01b4c3b9fd9ac3" dependencies = [ - "alloy-primitives", - "serde", - "serde_json", + "once_cell", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "alloy-serde" -version = "0.9.2" +name = "brotli" +version = "8.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae0465c71d4dced7525f408d84873aeebb71faf807d22d74c4a426430ccd9b55" +checksum = "4bd8b9603c7aa97359dbd97ecf258968c95f3adddd6db2f7e7a5bef101c84560" dependencies = [ - "alloy-primitives", - "serde", - "serde_json", + "alloc-no-stdlib", + "alloc-stdlib", + "brotli-decompressor", ] [[package]] -name = "alloy-serde" -version = "0.12.6" +name = "brotli-decompressor" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a1cd73fc054de6353c7f22ff9b846b0f0f145cd0112da07d4119e41e9959207" +checksum = "874bb8112abecc98cbd6d81ea4fa7e94fb9449648c93cc89aa40c81c24d7de03" dependencies = [ - "alloy-primitives", - "serde", - "serde_json", + "alloc-no-stdlib", + "alloc-stdlib", ] [[package]] -name = "alloy-signer" -version = "0.5.4" +name = "bs58" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "592c185d7100258c041afac51877660c7bf6213447999787197db4842f0e938e" +checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" dependencies = [ - "alloy-primitives", - "async-trait", - "auto_impl", - "elliptic-curve", - "k256", - "thiserror 1.0.69", + "tinyvec", ] [[package]] -name = "alloy-signer" -version = "0.8.3" +name = "bumpalo" +version = "3.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e10ca565da6500cca015ba35ee424d59798f2e1b85bc0dd8f81dafd401f029a" -dependencies = [ - "alloy-primitives", - "async-trait", - "auto_impl", - "elliptic-curve", - "k256", - "thiserror 2.0.12", -] +checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" [[package]] -name = "alloy-signer" -version = "0.9.2" +name = "bv" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bfa395ad5cc952c82358d31e4c68b27bf4a89a5456d9b27e226e77dac50e4ff" +checksum = "8834bb1d8ee5dc048ee3124f2c7c1afcc6bc9aed03f11e9dfd8c69470a5db340" dependencies = [ - "alloy-primitives", - "async-trait", - "auto_impl", - "elliptic-curve", - "k256", - "thiserror 2.0.12", + "feature-probe", + "serde", ] [[package]] -name = "alloy-signer" -version = "0.12.6" +name = "bytemuck" +version = "1.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c96fbde54bee943cd94ebacc8a62c50b38c7dfd2552dcd79ff61aea778b1bfcc" +checksum = "1fbdf580320f38b612e485521afda1ee26d10cc9884efaaa750d383e13e3c5f4" dependencies = [ - "alloy-primitives", - "async-trait", - "auto_impl", - "either", - "elliptic-curve", - "k256", - "thiserror 2.0.12", + "bytemuck_derive", ] [[package]] -name = "alloy-signer-aws" -version = "0.9.2" +name = "bytemuck_derive" +version = "1.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eb06810c34427d499863817eb506acf57cb9ded9224b374116cae4e22dbd4e9" +checksum = "f9abbd1bc6865053c427f7198e6af43bfdedc55ab791faed4fbd361d789575ff" dependencies = [ - "alloy-consensus 0.9.2", - "alloy-network 0.9.2", - "alloy-primitives", - "alloy-signer 0.9.2", - "async-trait", - "aws-sdk-kms", - "k256", - "spki", - "thiserror 2.0.12", - "tracing", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "alloy-signer-aws" -version = "0.12.6" +name = "byteorder" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e73835ed6689740b76cab0f59afbdce374a03d3f856ea33ba1fc054630a1b28" -dependencies = [ - "alloy-consensus 0.12.6", - "alloy-network 0.12.6", - "alloy-primitives", - "alloy-signer 0.12.6", - "async-trait", - "aws-sdk-kms", - "k256", - "spki", - "thiserror 2.0.12", - "tracing", -] +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] -name = "alloy-signer-local" -version = "0.9.2" +name = "bytes" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbdc63ce9eda1283fcbaca66ba4a414b841c0e3edbeef9c86a71242fc9e84ccc" +checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" dependencies = [ - "alloy-consensus 0.9.2", - "alloy-network 0.9.2", - "alloy-primitives", - "alloy-signer 0.9.2", - "async-trait", - "k256", - "rand 0.8.5", - "thiserror 2.0.12", + "serde", ] [[package]] -name = "alloy-signer-local" -version = "0.12.6" +name = "bzip2" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc6e72002cc1801d8b41e9892165e3a6551b7bd382bd9d0414b21e90c0c62551" +checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" dependencies = [ - "alloy-consensus 0.12.6", - "alloy-network 0.12.6", - "alloy-primitives", - "alloy-signer 0.12.6", - "async-trait", - "k256", - "rand 0.8.5", - "thiserror 2.0.12", + "bzip2-sys", + "libc", ] [[package]] -name = "alloy-sol-macro" -version = "0.8.25" +name = "bzip2-sys" +version = "0.1.13+1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e10ae8e9a91d328ae954c22542415303919aabe976fe7a92eb06db1b68fd59f2" +checksum = "225bff33b2141874fe80d71e07d6eec4f85c5c216453dd96388240f96e1acc14" dependencies = [ - "alloy-sol-macro-expander", - "alloy-sol-macro-input", - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.101", + "cc", + "pkg-config", ] [[package]] -name = "alloy-sol-macro-expander" -version = "0.8.25" +name = "caps" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83ad5da86c127751bc607c174d6c9fe9b85ef0889a9ca0c641735d77d4f98f26" +checksum = "fd1ddba47aba30b6a889298ad0109c3b8dcb0e8fc993b459daa7067d46f865e0" dependencies = [ - "alloy-json-abi", - "alloy-sol-macro-input", - "const-hex", - "heck", - "indexmap 2.9.0", - "proc-macro-error2", - "proc-macro2", - "quote", - "syn 2.0.101", - "syn-solidity", - "tiny-keccak", + "libc", ] [[package]] -name = "alloy-sol-macro-input" -version = "0.8.25" +name = "cast" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3d30f0d3f9ba3b7686f3ff1de9ee312647aac705604417a2f40c604f409a9e" -dependencies = [ - "alloy-json-abi", - "const-hex", - "dunce", - "heck", - "macro-string", - "proc-macro2", - "quote", - "serde_json", - "syn 2.0.101", - "syn-solidity", -] +checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] -name = "alloy-sol-type-parser" -version = "0.8.25" +name = "cc" +version = "1.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d162f8524adfdfb0e4bd0505c734c985f3e2474eb022af32eef0d52a4f3935c" +checksum = "04da6a0d40b948dfc4fa8f5bbf402b0fc1a64a28dbf7d12ffd683550f2c1b63a" dependencies = [ - "serde", - "winnow", + "jobserver", + "libc", + "shlex", ] [[package]] -name = "alloy-sol-types" -version = "0.8.25" +name = "cesu8" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d43d5e60466a440230c07761aa67671d4719d46f43be8ea6e7ed334d8db4a9ab" -dependencies = [ - "alloy-json-abi", - "alloy-primitives", - "alloy-sol-macro", - "const-hex", - "serde", -] +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" [[package]] -name = "alloy-transport" -version = "0.5.4" +name = "cfg-if" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be77579633ebbc1266ae6fd7694f75c408beb1aeb6865d0b18f22893c265a061" -dependencies = [ - "alloy-json-rpc 0.5.4", - "base64 0.22.1", - "futures-util", - "futures-utils-wasm", - "serde", - "serde_json", - "thiserror 1.0.69", - "tokio", - "tower 0.5.2", - "tracing", - "url", - "wasmtimer 0.2.1", -] +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] -name = "alloy-transport" -version = "0.8.3" +name = "cfg_aliases" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "538a04a37221469cac0ce231b737fd174de2fdfcdd843bdd068cb39ed3e066ad" -dependencies = [ - "alloy-json-rpc 0.8.3", - "base64 0.22.1", - "futures-util", - "futures-utils-wasm", - "serde", - "serde_json", - "thiserror 2.0.12", - "tokio", - "tower 0.5.2", - "tracing", - "url", - "wasmtimer 0.4.1", -] +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" [[package]] -name = "alloy-transport" -version = "0.9.2" +name = "cfg_eval" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d17722a198f33bbd25337660787aea8b8f57814febb7c746bc30407bdfc39448" +checksum = "45565fc9416b9896014f5732ac776f810ee53a66730c17e4020c3ec064a8f88f" dependencies = [ - "alloy-json-rpc 0.9.2", - "base64 0.22.1", - "futures-util", - "futures-utils-wasm", - "serde", - "serde_json", - "thiserror 2.0.12", - "tokio", - "tower 0.5.2", - "tracing", - "url", - "wasmtimer 0.4.1", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "alloy-transport" -version = "0.12.6" +name = "chacha20" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aec325c2af8562ef355c02aeb527c755a07e9d8cf6a1e65dda8d0bf23e29b2c" +checksum = "c3613f74bd2eac03dad61bd53dbe620703d4371614fe0bc3b9f04dd36fe4e818" dependencies = [ - "alloy-json-rpc 0.12.6", - "base64 0.22.1", - "derive_more 2.0.1", - "futures", - "futures-utils-wasm", - "parking_lot", - "serde", - "serde_json", - "thiserror 2.0.12", - "tokio", - "tower 0.5.2", - "tracing", - "url", - "wasmtimer 0.4.1", + "cfg-if", + "cipher", + "cpufeatures", ] [[package]] -name = "alloy-transport-http" -version = "0.5.4" +name = "chacha20poly1305" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91fd1a5d0827939847983b46f2f79510361f901dc82f8e3c38ac7397af142c6e" +checksum = "10cd79432192d1c0f4e1a0fef9527696cc039165d729fb41b3f4f4f354c2dc35" dependencies = [ - "alloy-json-rpc 0.5.4", - "alloy-transport 0.5.4", - "reqwest 0.12.15", - "serde_json", - "tower 0.5.2", - "tracing", - "url", + "aead", + "chacha20", + "cipher", + "poly1305", + "zeroize", ] [[package]] -name = "alloy-transport-http" -version = "0.8.3" +name = "chrono" +version = "0.4.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ed40eb1e1265b2911512f6aa1dcece9702d078f5a646730c45e39e2be00ac1c" +checksum = "c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d" dependencies = [ - "alloy-json-rpc 0.8.3", - "alloy-transport 0.8.3", - "reqwest 0.12.15", - "serde_json", - "tower 0.5.2", - "tracing", - "url", + "android-tzdata", + "iana-time-zone", + "num-traits", + "windows-link 0.1.1", ] [[package]] -name = "alloy-transport-http" -version = "0.9.2" +name = "chrono-humanize" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e1509599021330a31c4a6816b655e34bf67acb1cc03c564e09fd8754ff6c5de" +checksum = "799627e6b4d27827a814e837b9d8a504832086081806d45b1afa34dc982b023b" dependencies = [ - "alloy-json-rpc 0.9.2", - "alloy-transport 0.9.2", - "reqwest 0.12.15", - "serde_json", - "tower 0.5.2", - "tracing", - "url", + "chrono", ] [[package]] -name = "alloy-transport-http" -version = "0.12.6" +name = "ciborium" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a082c9473c6642cce8b02405a979496126a03b096997888e86229afad05db06c" +checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" dependencies = [ - "alloy-json-rpc 0.12.6", - "alloy-transport 0.12.6", - "reqwest 0.12.15", - "serde_json", - "tower 0.5.2", - "tracing", - "url", + "ciborium-io", + "ciborium-ll", + "serde", ] [[package]] -name = "alloy-transport-ipc" -version = "0.9.2" +name = "ciborium-io" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4da44bc9a5155ab599666d26decafcf12204b72a80eeaba7c5e234ee8ac205" -dependencies = [ - "alloy-json-rpc 0.9.2", - "alloy-pubsub 0.9.2", - "alloy-transport 0.9.2", - "bytes", - "futures", - "interprocess", - "pin-project", - "serde_json", - "tokio", - "tokio-util", - "tracing", -] +checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" [[package]] -name = "alloy-transport-ipc" -version = "0.12.6" +name = "ciborium-ll" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45a78cfda2cac16fa83f6b5dd8b4643caec6161433b25b67e484ce05d2194513" +checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" dependencies = [ - "alloy-json-rpc 0.12.6", - "alloy-pubsub 0.12.6", - "alloy-transport 0.12.6", - "bytes", - "futures", - "interprocess", - "pin-project", - "serde", - "serde_json", - "tokio", - "tokio-util", - "tracing", + "ciborium-io", + "half", ] [[package]] -name = "alloy-transport-ws" -version = "0.9.2" +name = "cipher" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58011745b2f17b334db40df9077d75b181f78360a5bc5c35519e15d4bfce15e2" +checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" dependencies = [ - "alloy-pubsub 0.9.2", - "alloy-transport 0.9.2", - "futures", - "http 1.3.1", - "rustls 0.23.26", - "serde_json", - "tokio", - "tokio-tungstenite 0.24.0", - "tracing", - "ws_stream_wasm", + "crypto-common", + "inout", + "zeroize", ] [[package]] -name = "alloy-transport-ws" -version = "0.12.6" +name = "clap" +version = "4.5.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae865917bdabaae21f418010fe7e8837c6daa6611fde25f8d78a1778d6ecb523" +checksum = "eccb054f56cbd38340b380d4a8e69ef1f02f1af43db2f0cc817a4774d80ae071" dependencies = [ - "alloy-pubsub 0.12.6", - "alloy-transport 0.12.6", - "futures", - "http 1.3.1", - "rustls 0.23.26", - "serde_json", - "tokio", - "tokio-tungstenite 0.26.2", - "tracing", - "ws_stream_wasm", + "clap_builder", ] [[package]] -name = "alloy-trie" -version = "0.7.9" +name = "clap_builder" +version = "4.5.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d95a94854e420f07e962f7807485856cde359ab99ab6413883e15235ad996e8b" +checksum = "efd9466fac8543255d3b1fcad4762c5e116ffe808c8a3043d4263cd4fd4862a2" dependencies = [ - "alloy-primitives", - "alloy-rlp", - "arrayvec", - "derive_more 1.0.0", - "nybbles", - "serde", - "smallvec", - "tracing", + "anstream", + "anstyle", + "clap_lex", + "strsim", ] [[package]] -name = "android-tzdata" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" - -[[package]] -name = "android_system_properties" -version = "0.1.5" +name = "clap_lex" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" -dependencies = [ - "libc", -] +checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" [[package]] -name = "anes" -version = "0.1.6" +name = "colorchoice" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" +checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" [[package]] -name = "anstream" -version = "0.6.18" +name = "combine" +version = "3.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acc5369981196006228e28809f761875c0327210a891e941f4c683b3a99529b" +checksum = "da3da6baa321ec19e1cc41d31bf599f00c783d0517095cdaf0332e3fe8d20680" dependencies = [ - "anstyle", - "anstyle-parse", - "anstyle-query", - "anstyle-wincon", - "colorchoice", - "is_terminal_polyfill", - "utf8parse", + "ascii", + "byteorder", + "either", + "memchr", + "unreachable", ] [[package]] -name = "anstyle" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" - -[[package]] -name = "anstyle-parse" -version = "0.2.6" +name = "combine" +version = "4.6.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b2d16507662817a6a20a9ea92df6652ee4f94f914589377d69f3b21bc5798a9" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" dependencies = [ - "utf8parse", + "bytes", + "memchr", ] [[package]] -name = "anstyle-query" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79947af37f4177cfead1110013d678905c37501914fba0efea834c3fe9a8d60c" +name = "commonware-avs-node" +version = "0.1.0" dependencies = [ - "windows-sys 0.59.0", -] - -[[package]] -name = "anstyle-wincon" -version = "3.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca3534e77181a9cc07539ad51f2141fe32f6c3ffd4df76db8ad92346b003ae4e" -dependencies = [ - "anstyle", - "once_cell", - "windows-sys 0.59.0", -] - -[[package]] -name = "anyhow" -version = "1.0.98" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487" - -[[package]] -name = "ark-bn254" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d69eab57e8d2663efa5c63135b2af4f396d66424f88954c21104125ab6b3e6bc" -dependencies = [ - "ark-ec", + "anyhow", + "ark-bn254 0.5.0", + "ark-ec 0.5.0", "ark-ff 0.5.0", - "ark-r1cs-std", - "ark-std 0.5.0", + "ark-serialize 0.5.0", + "bn254", + "bytes", + "clap", + "commonware-avs-router", + "commonware-codec", + "commonware-cryptography", + "commonware-macros", + "commonware-p2p", + "commonware-runtime", + "commonware-utils", + "dotenv", + "futures", + "futures-util", + "governor", + "jito-bls-ncn-clients", + "jito-bls-ncn-core", + "jito-bls-ncn-sdk", + "prometheus-client 0.23.1", + "prost", + "prost-build", + "rand 0.9.1", + "serde", + "serde_json", + "serde_yaml", + "solana-keypair", + "solana-pubkey", + "solana-signer", + "tracing", + "tracing-subscriber 0.3.19", + "url", ] [[package]] -name = "ark-ec" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43d68f2d516162846c1238e755a7c4d131b892b70cc70c471a8e3ca3ed818fce" +name = "commonware-avs-router" +version = "0.1.0" dependencies = [ - "ahash", + "anyhow", + "ark-bn254 0.5.0", + "ark-ec 0.5.0", "ark-ff 0.5.0", - "ark-poly", "ark-serialize 0.5.0", - "ark-std 0.5.0", - "educe", - "fnv", - "hashbrown 0.15.2", - "itertools 0.13.0", - "num-bigint", - "num-integer", - "num-traits", - "zeroize", + "async-trait", + "axum 0.7.9", + "bytes", + "clap", + "commonware-codec", + "commonware-cryptography", + "commonware-macros", + "commonware-p2p", + "commonware-runtime", + "commonware-utils", + "dotenv", + "eigen-logging", + "futures", + "futures-util", + "governor", + "hex", + "jito-bls-ncn-clients", + "jito-bls-ncn-core", + "jito-bls-ncn-sdk", + "num-bigint 0.4.6", + "prometheus-client 0.23.1", + "prost", + "prost-build", + "rand 0.9.1", + "serde", + "serde_json", + "serde_yaml", + "solana-keypair", + "solana-pubkey", + "solana-signer", + "tokio", + "tower 0.4.13", + "tower-http 0.5.2", + "tracing", + "tracing-subscriber 0.3.19", + "url", ] [[package]] -name = "ark-ff" -version = "0.3.0" +name = "commonware-codec" +version = "0.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b3235cc41ee7a12aaaf2c575a2ad7b46713a8a50bda2fc3b003a04845c05dd6" +checksum = "7c1495b0aef5282425702984c382ab7499bb4b4b4b03f68702b55f1a9e330253" dependencies = [ - "ark-ff-asm 0.3.0", - "ark-ff-macros 0.3.0", - "ark-serialize 0.3.0", - "ark-std 0.3.0", - "derivative", - "num-bigint", - "num-traits", + "bytes", "paste", - "rustc_version 0.3.3", - "zeroize", + "thiserror 2.0.17", ] [[package]] -name = "ark-ff" -version = "0.4.2" +name = "commonware-cryptography" +version = "0.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec847af850f44ad29048935519032c33da8aa03340876d351dfab5660d2966ba" +checksum = "44d70336ad273f7c64a95076292be717ed21543bb484300c707da3fe85d80517" dependencies = [ - "ark-ff-asm 0.4.2", - "ark-ff-macros 0.4.2", - "ark-serialize 0.4.2", - "ark-std 0.4.0", - "derivative", - "digest 0.10.7", - "itertools 0.10.5", - "num-bigint", - "num-traits", - "paste", - "rustc_version 0.4.1", + "blake3", + "blst", + "bytes", + "commonware-codec", + "commonware-utils", + "ed25519-consensus", + "getrandom 0.2.16", + "p256", + "rand 0.8.5", + "rayon", + "sha2 0.10.8", + "thiserror 2.0.17", "zeroize", ] [[package]] -name = "ark-ff" -version = "0.5.0" +name = "commonware-macros" +version = "0.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a177aba0ed1e0fbb62aa9f6d0502e9b46dad8c2eab04c14258a1212d2557ea70" +checksum = "407cdbaaac826e4df259fe2c73e23fe78bc2ec335b966794438c1d74315d84c8" dependencies = [ - "ark-ff-asm 0.5.0", - "ark-ff-macros 0.5.0", - "ark-serialize 0.5.0", - "ark-std 0.5.0", - "arrayvec", - "digest 0.10.7", - "educe", - "itertools 0.13.0", - "num-bigint", - "num-traits", - "paste", - "zeroize", + "futures", + "proc-macro2", + "quote", + "syn 1.0.109", + "tracing", + "tracing-subscriber 0.3.19", ] [[package]] -name = "ark-ff-asm" -version = "0.3.0" +name = "commonware-p2p" +version = "0.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db02d390bf6643fb404d3d22d31aee1c4bc4459600aef9113833d17e786c6e44" +checksum = "6f063844f8b90519e9b7b1b0e29a97c825cbe2df59e0a222e506d55a9243c020" dependencies = [ - "quote", - "syn 1.0.109", + "bytes", + "commonware-codec", + "commonware-cryptography", + "commonware-macros", + "commonware-runtime", + "commonware-stream", + "commonware-utils", + "either", + "futures", + "governor", + "prometheus-client 0.22.3", + "rand 0.8.5", + "rand_distr", + "thiserror 2.0.17", + "tracing", ] [[package]] -name = "ark-ff-asm" -version = "0.4.2" +name = "commonware-runtime" +version = "0.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ed4aa4fe255d0bc6d79373f7e31d2ea147bcf486cba1be5ba7ea85abdb92348" +checksum = "a36328c702697a0a1bec98382e5b76ec209403dfa79bb79d1a861f5a3c629c25" dependencies = [ - "quote", - "syn 1.0.109", + "async-lock", + "axum 0.8.4", + "bytes", + "cfg-if", + "commonware-macros", + "commonware-utils", + "criterion", + "futures", + "getrandom 0.2.16", + "governor", + "libc", + "opentelemetry 0.28.0", + "opentelemetry-otlp", + "opentelemetry_sdk", + "prometheus-client 0.22.3", + "rand 0.8.5", + "rayon", + "sha2 0.10.8", + "thiserror 2.0.17", + "tokio", + "tracing", + "tracing-opentelemetry 0.29.0", + "tracing-subscriber 0.3.19", ] [[package]] -name = "ark-ff-asm" -version = "0.5.0" +name = "commonware-stream" +version = "0.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62945a2f7e6de02a31fe400aa489f0e0f5b2502e69f95f853adb82a96c7a6b60" +checksum = "cddd40df46f56a2beafdc9658d395639c15d4c2483e05c73110622763ca082b4" dependencies = [ - "quote", - "syn 2.0.101", + "bytes", + "chacha20poly1305", + "commonware-codec", + "commonware-cryptography", + "commonware-macros", + "commonware-runtime", + "commonware-utils", + "futures", + "hkdf", + "rand 0.8.5", + "thiserror 2.0.17", + "x25519-dalek", + "zeroize", ] [[package]] -name = "ark-ff-macros" -version = "0.3.0" +name = "commonware-utils" +version = "0.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fd794a08ccb318058009eefdf15bcaaaaf6f8161eb3345f907222bac38b20" +checksum = "a54dfd09f06c05634bfad9c7f9a1218d085c96b87db0d6c6d39c06dc30c91af4" dependencies = [ - "num-bigint", - "num-traits", - "quote", - "syn 1.0.109", + "bytes", + "commonware-codec", + "futures", + "getrandom 0.2.16", + "rand 0.8.5", + "thiserror 2.0.17", ] [[package]] -name = "ark-ff-macros" -version = "0.4.2" +name = "compression-codecs" +version = "0.4.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7abe79b0e4288889c4574159ab790824d0033b9fdcb2a112a3182fac2e514565" +checksum = "ef8a506ec4b81c460798f572caead636d57d3d7e940f998160f52bd254bf2d23" dependencies = [ - "num-bigint", - "num-traits", - "proc-macro2", - "quote", - "syn 1.0.109", + "brotli", + "compression-core", + "flate2", + "memchr", ] [[package]] -name = "ark-ff-macros" -version = "0.5.0" +name = "compression-core" +version = "0.4.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09be120733ee33f7693ceaa202ca41accd5653b779563608f1234f78ae07c4b3" -dependencies = [ - "num-bigint", - "num-traits", - "proc-macro2", - "quote", - "syn 2.0.101", -] +checksum = "e47641d3deaf41fb1538ac1f54735925e275eaf3bf4d55c81b137fba797e5cbb" [[package]] -name = "ark-poly" -version = "0.5.0" +name = "concurrent-queue" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "579305839da207f02b89cd1679e50e67b4331e2f9294a57693e5051b7703fe27" +checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" dependencies = [ - "ahash", - "ark-ff 0.5.0", - "ark-serialize 0.5.0", - "ark-std 0.5.0", - "educe", - "fnv", - "hashbrown 0.15.2", + "crossbeam-utils", ] [[package]] -name = "ark-r1cs-std" -version = "0.5.0" +name = "console" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "941551ef1df4c7a401de7068758db6503598e6f01850bdb2cfdb614a1f9dbea1" +checksum = "b430743a6eb14e9764d4260d4c0d8123087d504eeb9c48f2b2a5e810dd369df4" dependencies = [ - "ark-ec", - "ark-ff 0.5.0", - "ark-relations", - "ark-std 0.5.0", - "educe", - "num-bigint", - "num-integer", - "num-traits", - "tracing", + "encode_unicode", + "libc", + "once_cell", + "unicode-width", + "windows-sys 0.61.2", ] [[package]] -name = "ark-relations" -version = "0.5.1" +name = "const-oid" +version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec46ddc93e7af44bcab5230937635b06fb5744464dd6a7e7b083e80ebd274384" -dependencies = [ - "ark-ff 0.5.0", - "ark-std 0.5.0", - "tracing", - "tracing-subscriber 0.2.25", -] +checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" [[package]] -name = "ark-serialize" -version = "0.3.0" +name = "constant_time_eq" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d6c2b318ee6e10f8c2853e73a83adc0ccb88995aa978d8a3408d492ab2ee671" -dependencies = [ - "ark-std 0.3.0", - "digest 0.9.0", -] +checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" [[package]] -name = "ark-serialize" -version = "0.4.2" +name = "core-foundation" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb7b85a02b83d2f22f89bd5cac66c9c89474240cb6207cb1efc16d098e822a5" +checksum = "b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6" dependencies = [ - "ark-std 0.4.0", - "digest 0.10.7", - "num-bigint", + "core-foundation-sys", + "libc", ] [[package]] -name = "ark-serialize" -version = "0.5.0" +name = "core-foundation-sys" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f4d068aaf107ebcd7dfb52bc748f8030e0fc930ac8e360146ca54c1203088f7" -dependencies = [ - "ark-serialize-derive", - "ark-std 0.5.0", - "arrayvec", - "digest 0.10.7", - "num-bigint", -] +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] -name = "ark-serialize-derive" -version = "0.5.0" +name = "cpufeatures" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "213888f660fddcca0d257e88e54ac05bca01885f258ccdf695bafd77031bb69d" +checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", + "libc", ] [[package]] -name = "ark-std" -version = "0.3.0" +name = "crc32fast" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" dependencies = [ - "num-traits", - "rand 0.8.5", + "cfg-if", ] [[package]] -name = "ark-std" -version = "0.4.0" +name = "criterion" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" +checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f" dependencies = [ + "anes", + "cast", + "ciborium", + "clap", + "criterion-plot", + "futures", + "is-terminal", + "itertools 0.10.5", "num-traits", - "rand 0.8.5", + "once_cell", + "oorandom", + "plotters", + "rayon", + "regex", + "serde", + "serde_derive", + "serde_json", + "tinytemplate", + "walkdir", ] [[package]] -name = "ark-std" +name = "criterion-plot" version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "246a225cc6131e9ee4f24619af0f19d67761fff15d7ccc22e42b80846e69449a" +checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1" dependencies = [ - "num-traits", - "rand 0.8.5", + "cast", + "itertools 0.10.5", ] [[package]] -name = "arrayref" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" - -[[package]] -name = "arrayvec" -version = "0.7.6" +name = "crossbeam-channel" +version = "0.5.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" +checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2" dependencies = [ - "serde", + "crossbeam-utils", ] [[package]] -name = "ascii-canvas" -version = "3.0.0" +name = "crossbeam-deque" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8824ecca2e851cec16968d54a01dd372ef8f95b244fb84b84e70128be347c3c6" +checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" dependencies = [ - "term", + "crossbeam-epoch", + "crossbeam-utils", ] [[package]] -name = "async-lock" -version = "3.4.0" +name = "crossbeam-epoch" +version = "0.9.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" dependencies = [ - "event-listener", - "event-listener-strategy", - "pin-project-lite", + "crossbeam-utils", ] [[package]] -name = "async-stream" -version = "0.3.6" +name = "crossbeam-utils" +version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b5a71a6f37880a80d1d7f19efd781e4b5de42c88f0722cc13bcb6cc2cfe8476" -dependencies = [ - "async-stream-impl", - "futures-core", - "pin-project-lite", -] +checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" [[package]] -name = "async-stream-impl" -version = "0.3.6" +name = "crunchy" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] +checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" [[package]] -name = "async-trait" -version = "0.1.88" +name = "crypto-bigint" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5" +checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", + "generic-array", + "rand_core 0.6.4", + "subtle", + "zeroize", ] [[package]] -name = "async_io_stream" -version = "0.3.3" +name = "crypto-common" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6d7b9decdf35d8908a7e3ef02f64c5e9b1695e230154c0e8de3969142d9b94c" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" dependencies = [ - "futures", - "pharos", - "rustc_version 0.4.1", + "generic-array", + "rand_core 0.6.4", + "typenum", ] [[package]] -name = "atomic-waker" -version = "1.1.2" +name = "crypto-mac" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" +checksum = "b584a330336237c1eecd3e94266efb216c56ed91225d634cb2991c5f3fd1aeab" +dependencies = [ + "generic-array", + "subtle", +] [[package]] -name = "auto_impl" -version = "1.3.0" +name = "ctor" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffdcb70bdbc4d478427380519163274ac86e52916e10f0a8889adf0f96d3fee7" +checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501" dependencies = [ - "proc-macro2", "quote", "syn 2.0.101", ] [[package]] -name = "autocfg" -version = "1.4.0" +name = "ctr" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" +checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" +dependencies = [ + "cipher", +] [[package]] -name = "aws-credential-types" -version = "1.2.3" +name = "curve25519-dalek" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "687bc16bc431a8533fe0097c7f0182874767f920989d7260950172ae8e3c4465" +checksum = "0b9fdf9972b2bd6af2d913799d9ebc165ea4d2e65878e329d9c6b372c4491b61" dependencies = [ - "aws-smithy-async", - "aws-smithy-runtime-api", - "aws-smithy-types", + "byteorder", + "digest 0.9.0", + "rand_core 0.5.1", + "subtle", "zeroize", ] [[package]] -name = "aws-runtime" -version = "1.5.7" +name = "curve25519-dalek" +version = "4.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c4063282c69991e57faab9e5cb21ae557e59f5b0fb285c196335243df8dc25c" +checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" dependencies = [ - "aws-credential-types", - "aws-sigv4", - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-runtime", - "aws-smithy-runtime-api", - "aws-smithy-types", - "aws-types", - "bytes", - "fastrand", - "http 0.2.12", - "http-body 0.4.6", - "percent-encoding", - "pin-project-lite", - "tracing", - "uuid 1.16.0", + "cfg-if", + "cpufeatures", + "curve25519-dalek-derive", + "digest 0.10.7", + "fiat-crypto", + "rand_core 0.6.4", + "rustc_version", + "serde", + "subtle", + "zeroize", ] [[package]] -name = "aws-sdk-kms" -version = "1.66.0" +name = "curve25519-dalek-derive" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "655097cd83ab1f15575890943135192560f77097413c6dd1733fdbdc453e81ac" +checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ - "aws-credential-types", - "aws-runtime", - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-json", - "aws-smithy-runtime", - "aws-smithy-runtime-api", - "aws-smithy-types", - "aws-types", - "bytes", - "fastrand", - "http 0.2.12", - "once_cell", - "regex-lite", - "tracing", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "aws-sigv4" -version = "1.3.1" +name = "curve25519-dalek-ng" +version = "4.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3503af839bd8751d0bdc5a46b9cac93a003a353e635b0c12cf2376b5b53e41ea" +checksum = "1c359b7249347e46fb28804470d071c921156ad62b3eef5d34e2ba867533dec8" dependencies = [ - "aws-credential-types", - "aws-smithy-http", - "aws-smithy-runtime-api", - "aws-smithy-types", - "bytes", - "form_urlencoded", - "hex", - "hmac", - "http 0.2.12", - "http 1.3.1", - "percent-encoding", - "sha2 0.10.8", - "time", - "tracing", + "byteorder", + "digest 0.9.0", + "rand_core 0.6.4", + "subtle-ng", + "zeroize", ] [[package]] -name = "aws-smithy-async" -version = "1.2.5" +name = "darling" +version = "0.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e190749ea56f8c42bf15dd76c65e14f8f765233e6df9b0506d9d934ebef867c" +checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0" dependencies = [ - "futures-util", - "pin-project-lite", - "tokio", + "darling_core", + "darling_macro", ] [[package]] -name = "aws-smithy-http" -version = "0.62.1" +name = "darling_core" +version = "0.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99335bec6cdc50a346fda1437f9fefe33abf8c99060739a546a16457f2862ca9" +checksum = "1247195ecd7e3c85f83c8d2a366e4210d588e802133e1e355180a9870b517ea4" dependencies = [ - "aws-smithy-runtime-api", - "aws-smithy-types", - "bytes", - "bytes-utils", - "futures-core", - "http 0.2.12", - "http 1.3.1", - "http-body 0.4.6", - "percent-encoding", - "pin-project-lite", - "pin-utils", - "tracing", + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim", + "syn 2.0.101", ] [[package]] -name = "aws-smithy-json" -version = "0.61.3" +name = "darling_macro" +version = "0.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92144e45819cae7dc62af23eac5a038a58aa544432d2102609654376a900bd07" +checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" dependencies = [ - "aws-smithy-types", + "darling_core", + "quote", + "syn 2.0.101", ] [[package]] -name = "aws-smithy-observability" -version = "0.1.3" +name = "dashmap" +version = "5.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9364d5989ac4dd918e5cc4c4bdcc61c9be17dcd2586ea7f69e348fc7c6cab393" +checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" dependencies = [ - "aws-smithy-runtime-api", + "cfg-if", + "hashbrown 0.14.5", + "lock_api", + "once_cell", + "parking_lot_core", + "rayon", ] [[package]] -name = "aws-smithy-runtime" -version = "1.8.3" +name = "data-encoding" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14302f06d1d5b7d333fd819943075b13d27c7700b414f574c3c35859bfb55d5e" -dependencies = [ - "aws-smithy-async", - "aws-smithy-http", - "aws-smithy-observability", - "aws-smithy-runtime-api", - "aws-smithy-types", - "bytes", - "fastrand", - "http 0.2.12", - "http 1.3.1", - "http-body 0.4.6", - "http-body 1.0.1", - "pin-project-lite", - "pin-utils", - "tokio", - "tracing", -] +checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" [[package]] -name = "aws-smithy-runtime-api" -version = "1.8.0" +name = "der" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1e5d9e3a80a18afa109391fb5ad09c3daf887b516c6fd805a157c6ea7994a57" +checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" dependencies = [ - "aws-smithy-async", - "aws-smithy-types", - "bytes", - "http 0.2.12", - "http 1.3.1", - "pin-project-lite", - "tokio", - "tracing", + "const-oid", + "pem-rfc7468", "zeroize", ] [[package]] -name = "aws-smithy-types" -version = "1.3.1" +name = "der-parser" +version = "8.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40076bd09fadbc12d5e026ae080d0930defa606856186e31d83ccc6a255eeaf3" +checksum = "dbd676fbbab537128ef0278adb5576cf363cff6aa22a7b24effe97347cfab61e" dependencies = [ - "base64-simd", - "bytes", - "bytes-utils", - "http 0.2.12", - "http 1.3.1", - "http-body 0.4.6", - "http-body 1.0.1", - "http-body-util", - "itoa", - "num-integer", - "pin-project-lite", - "pin-utils", - "ryu", - "serde", - "time", + "asn1-rs", + "displaydoc", + "nom", + "num-bigint 0.4.6", + "num-traits", + "rusticata-macros", ] [[package]] -name = "aws-types" -version = "1.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a322fec39e4df22777ed3ad8ea868ac2f94cd15e1a55f6ee8d8d6305057689a" +name = "deranged" +version = "0.4.0" +source = "git+https://github.com/jhpratt/deranged?rev=3c95431a375bca409a4731ae8749acc84e076267#3c95431a375bca409a4731ae8749acc84e076267" dependencies = [ - "aws-credential-types", - "aws-smithy-async", - "aws-smithy-runtime-api", - "aws-smithy-types", - "rustc_version 0.4.1", - "tracing", + "powerfmt", ] [[package]] -name = "axum" -version = "0.7.9" +name = "derivation-path" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edca88bc138befd0323b20752846e6587272d3b03b0343c8ea28a6f819e6e71f" -dependencies = [ - "async-trait", - "axum-core 0.4.5", - "bytes", - "futures-util", - "http 1.3.1", - "http-body 1.0.1", - "http-body-util", - "hyper 1.6.0", - "hyper-util", - "itoa", - "matchit 0.7.3", - "memchr", - "mime", - "percent-encoding", - "pin-project-lite", - "rustversion", - "serde", - "serde_json", - "serde_path_to_error", - "serde_urlencoded", - "sync_wrapper 1.0.2", - "tokio", - "tower 0.5.2", - "tower-layer", - "tower-service", - "tracing", -] +checksum = "6e5c37193a1db1d8ed868c03ec7b152175f26160a5b740e5e484143877e0adf0" [[package]] -name = "axum" -version = "0.8.4" +name = "derivative" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "021e862c184ae977658b36c4500f7feac3221ca5da43e3f25bd04ab6c79a29b5" +checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" dependencies = [ - "axum-core 0.5.2", - "bytes", - "form_urlencoded", - "futures-util", - "http 1.3.1", - "http-body 1.0.1", - "http-body-util", - "hyper 1.6.0", - "hyper-util", - "itoa", - "matchit 0.8.4", - "memchr", - "mime", - "percent-encoding", - "pin-project-lite", - "rustversion", - "serde", - "serde_json", - "serde_path_to_error", - "serde_urlencoded", - "sync_wrapper 1.0.2", - "tokio", - "tower 0.5.2", - "tower-layer", - "tower-service", - "tracing", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] -name = "axum-core" -version = "0.4.5" +name = "difflib" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199" -dependencies = [ - "async-trait", - "bytes", - "futures-util", - "http 1.3.1", - "http-body 1.0.1", - "http-body-util", - "mime", - "pin-project-lite", - "rustversion", - "sync_wrapper 1.0.2", - "tower-layer", - "tower-service", - "tracing", -] +checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8" [[package]] -name = "axum-core" -version = "0.5.2" +name = "digest" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68464cd0412f486726fb3373129ef5d2993f90c34bc2bc1c1e9943b2f4fc7ca6" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" dependencies = [ - "bytes", - "futures-core", - "http 1.3.1", - "http-body 1.0.1", - "http-body-util", - "mime", - "pin-project-lite", - "rustversion", - "sync_wrapper 1.0.2", - "tower-layer", - "tower-service", - "tracing", + "generic-array", ] [[package]] -name = "backtrace" -version = "0.3.74" +name = "digest" +version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" dependencies = [ - "addr2line", - "cfg-if", - "libc", - "miniz_oxide", - "object", - "rustc-demangle", - "windows-targets 0.52.6", + "block-buffer 0.10.4", + "const-oid", + "crypto-common", + "subtle", ] [[package]] -name = "base16ct" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" - -[[package]] -name = "base64" -version = "0.13.1" +name = "dir-diff" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" +checksum = "a7ad16bf5f84253b50d6557681c58c3ab67c47c77d39fed9aeb56e947290bd10" +dependencies = [ + "walkdir", +] [[package]] -name = "base64" -version = "0.21.7" +name = "displaydoc" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.101", +] [[package]] -name = "base64" -version = "0.22.1" +name = "dlopen2" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" +checksum = "09b4f5f101177ff01b8ec4ecc81eead416a8aa42819a2869311b3420fa114ffa" +dependencies = [ + "dlopen2_derive", + "libc", + "once_cell", + "winapi", +] [[package]] -name = "base64-simd" -version = "0.8.0" +name = "dlopen2_derive" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195" +checksum = "a6cbae11b3de8fce2a456e8ea3dada226b35fe791f0dc1d360c0941f0bb681f3" dependencies = [ - "outref", - "vsimd", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "base64ct" -version = "1.7.3" +name = "dotenv" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89e25b6adfb930f02d1981565a6e5d9c547ac15a96606256d3b59040e5cd4ca3" +checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" [[package]] -name = "bech32" -version = "0.9.1" +name = "downcast" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445" +checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1" [[package]] -name = "bimap" -version = "0.6.3" +name = "dtoa" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "230c5f1ca6a325a32553f8640d31ac9b49f2411e901e427570154868b46da4f7" +checksum = "d6add3b8cff394282be81f3fc1a0605db594ed69890078ca6e2cab1c408bcf04" [[package]] -name = "bit-set" -version = "0.5.3" +name = "eager" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" -dependencies = [ - "bit-vec 0.6.3", -] +checksum = "abe71d579d1812060163dff96056261deb5bf6729b100fa2e36a68b9649ba3d3" [[package]] -name = "bit-set" -version = "0.8.0" +name = "ecdsa" +version = "0.16.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" +checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" dependencies = [ - "bit-vec 0.8.0", + "der", + "digest 0.10.7", + "elliptic-curve", + "rfc6979", + "signature 2.2.0", + "spki", ] [[package]] -name = "bit-vec" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" - -[[package]] -name = "bit-vec" -version = "0.8.0" +name = "ed25519" +version = "1.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" +checksum = "91cff35c70bba8a626e3185d8cd48cc11b5437e1a5bcd15b9b5fa3c64b6dfee7" +dependencies = [ + "signature 1.6.4", +] [[package]] -name = "bitflags" -version = "1.3.2" +name = "ed25519" +version = "2.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" +checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" +dependencies = [ + "pkcs8", + "signature 2.2.0", +] [[package]] -name = "bitflags" -version = "2.9.0" +name = "ed25519-consensus" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c8214115b7bf84099f1309324e63141d4c5d7cc26862f97a0a857dbefe165bd" +checksum = "3c8465edc8ee7436ffea81d21a019b16676ee3db267aa8d5a8d729581ecf998b" +dependencies = [ + "curve25519-dalek-ng", + "hex", + "rand_core 0.6.4", + "serde", + "sha2 0.9.9", + "thiserror 1.0.69", + "zeroize", +] [[package]] -name = "bitvec" +name = "ed25519-dalek" version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +checksum = "c762bae6dcaf24c4c84667b8579785430908723d5c889f469d76a41d59cc7a9d" dependencies = [ - "funty", - "radium", - "tap", - "wyz", + "curve25519-dalek 3.2.0", + "ed25519 1.5.3", + "rand 0.7.3", + "serde", + "sha2 0.9.9", + "zeroize", ] [[package]] -name = "blake3" -version = "1.8.2" +name = "ed25519-dalek" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" +checksum = "70e796c081cee67dc755e1a36a0a172b897fab85fc3f6bc48307991f64e4eca9" dependencies = [ - "arrayref", - "arrayvec", - "cc", - "cfg-if", - "constant_time_eq 0.3.1", + "curve25519-dalek 4.1.3", + "ed25519 2.2.3", + "rand_core 0.6.4", + "serde", + "sha2 0.10.8", + "subtle", + "zeroize", ] [[package]] -name = "block-buffer" -version = "0.9.0" +name = "ed25519-dalek-bip32" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +checksum = "6b49a684b133c4980d7ee783936af771516011c8cd15f429dbda77245e282f03" dependencies = [ - "generic-array", + "derivation-path", + "ed25519-dalek 2.2.0", + "hmac 0.12.1", + "sha2 0.10.8", ] [[package]] -name = "block-buffer" -version = "0.10.4" +name = "educe" +version = "0.4.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +checksum = "0f0042ff8246a363dbe77d2ceedb073339e85a804b9a47636c6e016a9a32c05f" dependencies = [ - "generic-array", + "enum-ordinalize 3.1.15", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] -name = "blst" -version = "0.3.14" +name = "educe" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47c79a94619fade3c0b887670333513a67ac28a6a7e653eb260bf0d4103db38d" +checksum = "1d7bc049e1bd8cdeb31b68bbd586a9464ecf9f3944af3958a7a9d0f8b9799417" dependencies = [ - "cc", - "glob", - "threadpool", - "zeroize", + "enum-ordinalize 4.3.0", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "bn254" -version = "0.1.3" -source = "git+https://github.com/BreadchainCoop/bn254.git?branch=1-update-commonware-to-0055-and-refactor-lookup-repository-for-authenticated-p2p#a6f3c8dd2960dc61ad2f0d8481d8873a153ff982" +name = "eigen-crypto-bn254" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "039664a95a1c6e47fde635b9a5c07f3377901bf0463e10120f96627ac4386a8b" dependencies = [ - "ark-bn254", - "ark-ec", + "ark-bn254 0.5.0", + "ark-ec 0.5.0", "ark-ff 0.5.0", - "ark-serialize 0.5.0", - "bytes", - "commonware-codec", - "commonware-cryptography", - "commonware-utils", - "eigen-crypto-bn254 0.5.0", - "rand 0.8.5", + "rust-bls-bn254", ] [[package]] -name = "bn254" +name = "eigen-logging" version = "0.1.3" -source = "git+https://github.com/BreadchainCoop/bn254.git#8e8b32a5899707b04ce53e7f1a096213589d504c" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35fa2e89b477296b087b42a1e01ef03580c2c8d85943f23e7e5bc9c75eafdb0e" dependencies = [ - "ark-bn254", - "ark-ec", - "ark-ff 0.5.0", - "ark-serialize 0.5.0", - "bytes", - "commonware-codec", - "commonware-cryptography", - "commonware-utils", - "eigen-crypto-bn254 0.5.0", - "rand 0.8.5", + "ctor", + "once_cell", + "tracing", + "tracing-subscriber 0.3.19", ] [[package]] -name = "bs58" -version = "0.5.1" +name = "either" +version = "1.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf88ba1141d185c399bee5288d850d63b8369520c1eafc32a0430b5b6c287bf4" +checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" + +[[package]] +name = "elliptic-curve" +version = "0.13.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" dependencies = [ - "sha2 0.10.8", - "tinyvec", + "base16ct", + "crypto-bigint", + "digest 0.10.7", + "ff", + "generic-array", + "group", + "pem-rfc7468", + "pkcs8", + "rand_core 0.6.4", + "sec1", + "subtle", + "zeroize", ] [[package]] -name = "bumpalo" -version = "3.17.0" +name = "encode_unicode" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1628fb46dfa0b37568d12e5edd512553eccf6a22a78e8bde00bb4aed84d5bdbf" +checksum = "34aa73646ffb006b8f5147f3dc182bd4bcb190227ce861fc4a4844bf8e3cb2c0" [[package]] -name = "byte-slice-cast" -version = "1.2.3" +name = "enum-iterator" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" +checksum = "9fd242f399be1da0a5354aa462d57b4ab2b4ee0683cc552f7c007d2d12d36e94" +dependencies = [ + "enum-iterator-derive", +] [[package]] -name = "byteorder" +name = "enum-iterator-derive" version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" +checksum = "685adfa4d6f3d765a26bc5dbc936577de9abf756c1feeb3089b01dd395034842" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.101", +] [[package]] -name = "bytes" -version = "1.10.1" +name = "enum-ordinalize" +version = "3.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a" +checksum = "1bf1fa3f06bbff1ea5b1a9c7b14aa992a39657db60a2759457328d7e058f49ee" dependencies = [ - "serde", + "num-bigint 0.4.6", + "num-traits", + "proc-macro2", + "quote", + "syn 2.0.101", +] + +[[package]] +name = "enum-ordinalize" +version = "4.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fea0dcfa4e54eeb516fe454635a95753ddd39acda650ce703031c6973e315dd5" +dependencies = [ + "enum-ordinalize-derive", +] + +[[package]] +name = "enum-ordinalize-derive" +version = "4.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d28318a75d4aead5c4db25382e8ef717932d0346600cacae6357eb5941bc5ff" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "bytes-utils" +name = "env_filter" version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dafe3a8757b027e2be6e4e5601ed563c55989fcf1546e933c66c8eb3a058d35" +checksum = "1bf3c259d255ca70051b30e2e95b5446cdb8949ac4cd22c0d7fd634d89f568e2" dependencies = [ - "bytes", - "either", + "log", + "regex", ] [[package]] -name = "bzip2" -version = "0.4.4" +name = "env_logger" +version = "0.11.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8" +checksum = "13c863f0904021b108aa8b2f55046443e6b1ebde8fd4a15c399893aae4fa069f" dependencies = [ - "bzip2-sys", - "libc", + "anstream", + "anstyle", + "env_filter", + "jiff", + "log", ] [[package]] -name = "bzip2-sys" -version = "0.1.13+1.0.8" +name = "equivalent" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225bff33b2141874fe80d71e07d6eec4f85c5c216453dd96388240f96e1acc14" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" + +[[package]] +name = "errno" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "976dd42dc7e85965fe702eb8164f21f450704bdde31faefd6471dba214cb594e" dependencies = [ - "cc", - "pkg-config", + "libc", + "windows-sys 0.59.0", ] [[package]] -name = "c-kzg" -version = "1.0.3" +name = "event-listener" +version = "2.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0307f72feab3300336fb803a57134159f6e20139af1357f36c54cb90d8e8928" -dependencies = [ - "blst", - "cc", - "glob", - "hex", - "libc", - "once_cell", - "serde", -] +checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" [[package]] -name = "camino" -version = "1.1.9" +name = "event-listener" +version = "5.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b96ec4966b5813e2c0507c1f86115c8c5abaadc3980879c3424042a02fd1ad3" +checksum = "3492acde4c3fc54c845eaab3eed8bd00c7a7d881f78bfc801e43a93dec1331ae" dependencies = [ - "serde", + "concurrent-queue", + "parking", + "pin-project-lite", ] [[package]] -name = "cargo-platform" -version = "0.1.9" +name = "event-listener-strategy" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e35af189006b9c0f00a064685c727031e3ed2d8020f7ba284d78cc2671bd36ea" +checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" dependencies = [ - "serde", + "event-listener 5.4.0", + "pin-project-lite", ] [[package]] -name = "cargo_metadata" -version = "0.18.1" +name = "fastbloom" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" +checksum = "18c1ddb9231d8554c2d6bdf4cfaabf0c59251658c68b6c95cd52dd0c513a912a" dependencies = [ - "camino", - "cargo-platform", - "semver 1.0.26", - "serde", - "serde_json", - "thiserror 1.0.69", + "getrandom 0.3.2", + "libm", + "rand 0.9.1", + "siphasher 1.0.1", ] [[package]] -name = "cast" -version = "0.3.0" +name = "fastrand" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" +checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" [[package]] -name = "cc" -version = "1.2.20" +name = "feature-probe" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04da6a0d40b948dfc4fa8f5bbf402b0fc1a64a28dbf7d12ffd683550f2c1b63a" -dependencies = [ - "jobserver", - "libc", - "shlex", -] +checksum = "835a3dc7d1ec9e75e2b5fb4ba75396837112d2060b03f7d43bc1897c7f7211da" [[package]] -name = "cfg-if" -version = "1.0.0" +name = "ff" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" +checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" +dependencies = [ + "rand_core 0.6.4", + "subtle", +] [[package]] -name = "cfg_aliases" -version = "0.2.1" +name = "fiat-crypto" +version = "0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" +checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" [[package]] -name = "chacha20" -version = "0.9.1" +name = "filetime" +version = "0.2.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3613f74bd2eac03dad61bd53dbe620703d4371614fe0bc3b9f04dd36fe4e818" +checksum = "bc0505cd1b6fa6580283f6bdf70a73fcf4aba1184038c90902b92b3dd0df63ed" dependencies = [ "cfg-if", - "cipher", - "cpufeatures", + "libc", + "libredox", + "windows-sys 0.60.2", ] [[package]] -name = "chacha20poly1305" -version = "0.10.1" +name = "five8" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10cd79432192d1c0f4e1a0fef9527696cc039165d729fb41b3f4f4f354c2dc35" +checksum = "a75b8549488b4715defcb0d8a8a1c1c76a80661b5fa106b4ca0e7fce59d7d875" dependencies = [ - "aead", - "chacha20", - "cipher", - "poly1305", - "zeroize", + "five8_core 0.1.2", ] [[package]] -name = "chrono" -version = "0.4.41" +name = "five8" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d" +checksum = "23f76610e969fa1784327ded240f1e28a3fd9520c9cec93b636fcf62dd37f772" dependencies = [ - "android-tzdata", - "iana-time-zone", - "num-traits", - "serde", - "windows-link", + "five8_core 1.0.0", ] [[package]] -name = "ciborium" -version = "0.2.2" +name = "five8_const" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" +checksum = "1a0f1728185f277989ca573a402716ae0beaaea3f76a8ff87ef9dd8fb19436c5" dependencies = [ - "ciborium-io", - "ciborium-ll", - "serde", + "five8_core 1.0.0", ] [[package]] -name = "ciborium-io" -version = "0.2.2" +name = "five8_core" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" +checksum = "2551bf44bc5f776c15044b9b94153a00198be06743e262afaaa61f11ac7523a5" [[package]] -name = "ciborium-ll" -version = "0.2.2" +name = "five8_core" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" -dependencies = [ - "ciborium-io", - "half", -] +checksum = "059c31d7d36c43fe39d89e55711858b4da8be7eb6dabac23c7289b1a19489406" [[package]] -name = "cipher" -version = "0.4.4" +name = "fixedbitset" +version = "0.5.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" -dependencies = [ - "crypto-common", - "inout", - "zeroize", -] +checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99" [[package]] -name = "clap" -version = "4.5.37" +name = "flate2" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eccb054f56cbd38340b380d4a8e69ef1f02f1af43db2f0cc817a4774d80ae071" +checksum = "7ced92e76e966ca2fd84c8f7aa01a4aea65b0eb6648d72f7c8f3e2764a67fece" dependencies = [ - "clap_builder", + "crc32fast", + "miniz_oxide", ] [[package]] -name = "clap_builder" -version = "4.5.37" +name = "float-cmp" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efd9466fac8543255d3b1fcad4762c5e116ffe808c8a3043d4263cd4fd4862a2" +checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4" dependencies = [ - "anstream", - "anstyle", - "clap_lex", - "strsim", + "num-traits", ] [[package]] -name = "clap_lex" -version = "0.7.4" +name = "fnv" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] -name = "coins-bip32" -version = "0.8.7" +name = "foreign-types" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b6be4a5df2098cd811f3194f64ddb96c267606bffd9689ac7b0160097b01ad3" +checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" dependencies = [ - "bs58", - "coins-core", - "digest 0.10.7", - "hmac", - "k256", - "serde", - "sha2 0.10.8", - "thiserror 1.0.69", + "foreign-types-shared", ] [[package]] -name = "coins-bip39" -version = "0.8.7" +name = "foreign-types-shared" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db8fba409ce3dc04f7d804074039eb68b960b0829161f8e06c95fea3f122528" -dependencies = [ - "bitvec", - "coins-bip32", - "hmac", - "once_cell", - "pbkdf2 0.12.2", - "rand 0.8.5", - "sha2 0.10.8", - "thiserror 1.0.69", -] +checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] -name = "coins-core" -version = "0.8.7" +name = "form_urlencoded" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5286a0843c21f8367f7be734f89df9b822e0321d8bcce8d6e735aadff7d74979" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" dependencies = [ - "base64 0.21.7", - "bech32", - "bs58", - "digest 0.10.7", - "generic-array", - "hex", - "ripemd", - "serde", - "serde_derive", - "sha2 0.10.8", - "sha3", - "thiserror 1.0.69", + "percent-encoding", ] [[package]] -name = "colorchoice" -version = "1.0.3" +name = "fragile" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b63caa9aa9397e2d9480a9b13673856c78d8ac123288526c37d7839f2a86990" +checksum = "28dd6caf6059519a65843af8fe2a3ae298b14b80179855aeb4adc2c1934ee619" [[package]] -name = "commonware-avs-node" -version = "0.1.0" +name = "futures" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" dependencies = [ - "alloy 0.12.6", - "alloy-network 0.5.4", - "alloy-primitives", - "alloy-provider 0.12.6", - "alloy-signer 0.12.6", - "alloy-signer-local 0.12.6", - "anyhow", - "ark-bn254", - "ark-ec", - "ark-ff 0.5.0", - "ark-serialize 0.5.0", - "bn254 0.1.3 (git+https://github.com/BreadchainCoop/bn254.git)", - "bytes", - "clap", - "commonware-avs-router", - "commonware-codec", - "commonware-cryptography", - "commonware-eigenlayer 0.1.0 (git+https://github.com/BreadchainCoop/commonware-avs-network-lookup)", - "commonware-macros", - "commonware-p2p", - "commonware-runtime", - "commonware-utils", - "dotenv", - "eigen-crypto-bls 0.5.0", - "eigen-crypto-bn254 0.5.0", - "eigen-logging", - "futures", + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", "futures-util", - "governor", - "prometheus-client 0.23.1", - "prost", - "prost-build", - "rand 0.9.1", - "serde", - "serde_json", - "serde_yaml", - "tracing", - "tracing-subscriber 0.3.19", - "url", ] [[package]] -name = "commonware-avs-router" -version = "0.1.0" -source = "git+https://github.com/BreadchainCoop/commonware-avs-router?branch=22-update-commonware-to-0055-and-refactor-lookup-repository-for-authenticated-p2p#e74852b0656e0d7aacd95ed6b07a047d85603206" -dependencies = [ - "alloy 0.12.6", - "alloy-primitives", - "alloy-provider 0.12.6", - "alloy-signer 0.12.6", - "alloy-signer-local 0.12.6", - "anyhow", - "ark-bn254", - "ark-ec", - "ark-ff 0.5.0", - "ark-serialize 0.5.0", - "async-trait", - "axum 0.7.9", - "bn254 0.1.3 (git+https://github.com/BreadchainCoop/bn254.git?branch=1-update-commonware-to-0055-and-refactor-lookup-repository-for-authenticated-p2p)", - "bytes", - "clap", - "commonware-codec", - "commonware-cryptography", - "commonware-eigenlayer 0.1.0 (git+https://github.com/BreadchainCoop/commonware-avs-network-lookup?branch=8-update-commonware-to-0055-and-refactor-lookup-repository-for-authenticated-p2p)", - "commonware-macros", - "commonware-p2p", - "commonware-runtime", - "commonware-utils", - "dotenv", - "eigen-crypto-bls 0.5.0", - "eigen-crypto-bn254 0.5.0", - "eigen-logging", - "futures", - "futures-util", - "governor", - "hex", - "num-bigint", - "prometheus-client 0.23.1", - "prost", - "prost-build", - "rand 0.9.1", - "serde", - "serde_json", - "serde_yaml", - "tokio", - "tower 0.4.13", - "tower-http", - "tracing", - "tracing-subscriber 0.3.19", - "url", +name = "futures-channel" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" +dependencies = [ + "futures-core", + "futures-sink", ] [[package]] -name = "commonware-codec" -version = "0.0.56" +name = "futures-core" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c1495b0aef5282425702984c382ab7499bb4b4b4b03f68702b55f1a9e330253" +checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" + +[[package]] +name = "futures-executor" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" dependencies = [ - "bytes", - "paste", - "thiserror 2.0.12", + "futures-core", + "futures-task", + "futures-util", ] [[package]] -name = "commonware-cryptography" -version = "0.0.56" +name = "futures-io" +version = "0.3.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d70336ad273f7c64a95076292be717ed21543bb484300c707da3fe85d80517" +checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" + +[[package]] +name = "futures-macro" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ - "blake3", - "blst", - "bytes", - "commonware-codec", - "commonware-utils", - "ed25519-consensus", - "getrandom 0.2.16", - "p256", - "rand 0.8.5", - "rayon", - "sha2 0.10.8", - "thiserror 2.0.12", - "zeroize", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "commonware-eigenlayer" -version = "0.1.0" -source = "git+https://github.com/BreadchainCoop/commonware-avs-network-lookup?branch=8-update-commonware-to-0055-and-refactor-lookup-repository-for-authenticated-p2p#d9894fd5b31bb7aeae0678c30ecdb484757f9855" -dependencies = [ - "alloy 0.8.3", - "alloy-network 0.5.4", - "alloy-primitives", - "alloy-provider 0.5.4", - "alloy-transport 0.5.4", - "alloy-transport-http 0.5.4", - "anyhow", - "bn254 0.1.3 (git+https://github.com/BreadchainCoop/bn254.git?branch=1-update-commonware-to-0055-and-refactor-lookup-repository-for-authenticated-p2p)", - "eigen-client-avsregistry", - "eigen-common", - "eigen-crypto-bls 0.1.3", - "eigen-crypto-bn254 0.1.3", - "eigen-logging", - "eigen-services-avsregistry", - "eigen-services-blsaggregation", - "eigen-services-operatorsinfo", - "eigen-types", - "eigen-utils 0.1.3", - "eyre", - "rand 0.9.1", - "serde", - "serde_json", - "tokio", - "tokio-rustls 0.24.1", - "tokio-util", - "url", +name = "futures-sink" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" + +[[package]] +name = "futures-task" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" + +[[package]] +name = "futures-timer" +version = "3.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" + +[[package]] +name = "futures-util" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", ] [[package]] -name = "commonware-eigenlayer" -version = "0.1.0" -source = "git+https://github.com/BreadchainCoop/commonware-avs-network-lookup#a76cb2f9b619001ec48eaf299cfd1a80fe08b50c" -dependencies = [ - "alloy 0.8.3", - "alloy-network 0.5.4", - "alloy-primitives", - "alloy-provider 0.5.4", - "alloy-transport 0.5.4", - "alloy-transport-http 0.5.4", - "anyhow", - "bn254 0.1.3 (git+https://github.com/BreadchainCoop/bn254.git)", - "eigen-client-avsregistry", - "eigen-common", - "eigen-crypto-bls 0.1.3", - "eigen-crypto-bn254 0.1.3", - "eigen-logging", - "eigen-services-avsregistry", - "eigen-services-blsaggregation", - "eigen-services-operatorsinfo", - "eigen-types", - "eigen-utils 0.1.3", - "eyre", - "rand 0.9.1", - "serde", - "serde_json", - "tokio", - "tokio-rustls 0.24.1", - "tokio-util", - "url", +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", + "zeroize", ] [[package]] -name = "commonware-macros" -version = "0.0.56" +name = "gethostname" +version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "407cdbaaac826e4df259fe2c73e23fe78bc2ec335b966794438c1d74315d84c8" +checksum = "c1ebd34e35c46e00bb73e81363248d627782724609fe1b6396f553f68fe3862e" dependencies = [ - "futures", - "proc-macro2", - "quote", - "syn 1.0.109", - "tracing", - "tracing-subscriber 0.3.19", + "libc", + "winapi", ] [[package]] -name = "commonware-p2p" -version = "0.0.56" +name = "getrandom" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f063844f8b90519e9b7b1b0e29a97c825cbe2df59e0a222e506d55a9243c020" +checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" dependencies = [ - "bytes", - "commonware-codec", - "commonware-cryptography", - "commonware-macros", - "commonware-runtime", - "commonware-stream", - "commonware-utils", - "either", - "futures", - "governor", - "prometheus-client 0.22.3", - "rand 0.8.5", - "rand_distr", - "thiserror 2.0.12", - "tracing", + "cfg-if", + "libc", + "wasi 0.9.0+wasi-snapshot-preview1", ] [[package]] -name = "commonware-runtime" -version = "0.0.56" +name = "getrandom" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a36328c702697a0a1bec98382e5b76ec209403dfa79bb79d1a861f5a3c629c25" +checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" dependencies = [ - "async-lock", - "axum 0.8.4", - "bytes", "cfg-if", - "commonware-macros", - "commonware-utils", - "criterion", - "futures", - "getrandom 0.2.16", - "governor", + "js-sys", "libc", - "opentelemetry", - "opentelemetry-otlp", - "opentelemetry_sdk", - "prometheus-client 0.22.3", - "rand 0.8.5", - "rayon", - "sha2 0.10.8", - "thiserror 2.0.12", - "tokio", - "tracing", - "tracing-opentelemetry", - "tracing-subscriber 0.3.19", + "wasi 0.11.0+wasi-snapshot-preview1", + "wasm-bindgen", ] [[package]] -name = "commonware-stream" -version = "0.0.56" +name = "getrandom" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cddd40df46f56a2beafdc9658d395639c15d4c2483e05c73110622763ca082b4" +checksum = "73fea8450eea4bac3940448fb7ae50d91f034f941199fcd9d909a5a07aa455f0" dependencies = [ - "bytes", - "chacha20poly1305", - "commonware-codec", - "commonware-cryptography", - "commonware-macros", - "commonware-runtime", - "commonware-utils", - "futures", - "hkdf", - "rand 0.8.5", - "thiserror 2.0.12", - "x25519-dalek", - "zeroize", + "cfg-if", + "js-sys", + "libc", + "r-efi", + "wasi 0.14.2+wasi-0.2.4", + "wasm-bindgen", ] [[package]] -name = "commonware-utils" -version = "0.0.56" +name = "glob" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a54dfd09f06c05634bfad9c7f9a1218d085c96b87db0d6c6d39c06dc30c91af4" +checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" + +[[package]] +name = "governor" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68a7f542ee6b35af73b06abc0dad1c1bae89964e4e253bc4b587b91c9637867b" dependencies = [ - "bytes", - "commonware-codec", + "cfg-if", + "dashmap", "futures", - "getrandom 0.2.16", + "futures-timer", + "no-std-compat", + "nonzero_ext", + "parking_lot", + "portable-atomic", + "quanta", "rand 0.8.5", - "thiserror 2.0.12", + "smallvec", + "spinning_top", ] [[package]] -name = "concurrent-queue" -version = "2.5.0" +name = "group" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" +checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ - "crossbeam-utils", + "ff", + "rand_core 0.6.4", + "subtle", ] [[package]] -name = "const-hex" -version = "1.14.0" +name = "half" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b0485bab839b018a8f1723fc5391819fea5f8f0f32288ef8a735fd096b6160c" +checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9" dependencies = [ "cfg-if", - "cpufeatures", - "hex", - "proptest", - "serde", + "crunchy", ] [[package]] -name = "const-oid" -version = "0.9.6" +name = "hash32" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" +checksum = "47d60b12902ba28e2730cd37e95b8c9223af2808df9e902d4df49588d1470606" +dependencies = [ + "byteorder", +] [[package]] -name = "const_format" -version = "0.2.34" +name = "hashbrown" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "126f97965c8ad46d6d9163268ff28432e8f6a1196a55578867832e3049df63dd" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" dependencies = [ - "const_format_proc_macros", + "ahash 0.7.8", ] [[package]] -name = "const_format_proc_macros" -version = "0.2.34" +name = "hashbrown" +version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d57c2eccfb16dbac1f4e61e206105db5820c9d26c3c472bc17c774259ef7744" +checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" dependencies = [ - "proc-macro2", - "quote", - "unicode-xid", + "ahash 0.8.11", ] [[package]] -name = "constant_time_eq" -version = "0.1.5" +name = "hashbrown" +version = "0.14.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" + +[[package]] +name = "hashbrown" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +dependencies = [ + "allocator-api2", +] [[package]] -name = "constant_time_eq" -version = "0.3.1" +name = "hashbrown" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" +checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d" [[package]] -name = "core-foundation" -version = "0.9.4" +name = "heck" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" -dependencies = [ - "core-foundation-sys", - "libc", -] +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" [[package]] -name = "core-foundation-sys" -version = "0.8.7" +name = "heck" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" [[package]] -name = "cpufeatures" -version = "0.2.17" +name = "hermit-abi" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280" -dependencies = [ - "libc", -] +checksum = "fbd780fe5cc30f81464441920d82ac8740e2e46b29a6fad543ddd075229ce37e" [[package]] -name = "crc" -version = "3.2.1" +name = "hex" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" -dependencies = [ - "crc-catalog", -] +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" [[package]] -name = "crc-catalog" -version = "2.4.0" +name = "histogram" +version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" +checksum = "12cb882ccb290b8646e554b157ab0b71e64e8d5bef775cd66b6531e52d302669" [[package]] -name = "crc32fast" -version = "1.4.2" +name = "hkdf" +version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" +checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" dependencies = [ - "cfg-if", + "hmac 0.12.1", ] [[package]] -name = "criterion" -version = "0.5.1" +name = "hmac" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f" +checksum = "126888268dcc288495a26bf004b38c5fdbb31682f992c84ceb046a1f0fe38840" dependencies = [ - "anes", - "cast", - "ciborium", - "clap", - "criterion-plot", - "futures", - "is-terminal", - "itertools 0.10.5", - "num-traits", - "once_cell", - "oorandom", - "plotters", - "rayon", - "regex", - "serde", - "serde_derive", - "serde_json", - "tinytemplate", - "walkdir", + "crypto-mac", + "digest 0.9.0", ] [[package]] -name = "criterion-plot" -version = "0.5.0" +name = "hmac" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1" +checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" dependencies = [ - "cast", - "itertools 0.10.5", + "digest 0.10.7", ] [[package]] -name = "crossbeam-deque" -version = "0.8.6" +name = "hmac-drbg" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" +checksum = "17ea0a1394df5b6574da6e0c1ade9e78868c9fb0a4e5ef4428e32da4676b85b1" dependencies = [ - "crossbeam-epoch", - "crossbeam-utils", + "digest 0.9.0", + "generic-array", + "hmac 0.8.1", ] [[package]] -name = "crossbeam-epoch" -version = "0.9.18" +name = "http" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" dependencies = [ - "crossbeam-utils", + "bytes", + "fnv", + "itoa", ] [[package]] -name = "crossbeam-utils" -version = "0.8.21" +name = "http" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" +checksum = "f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565" +dependencies = [ + "bytes", + "fnv", + "itoa", +] [[package]] -name = "crunchy" -version = "0.2.3" +name = "http-body" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43da5946c66ffcc7745f48db692ffbb10a83bfe0afd96235c5c2a4fb23994929" +checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" +dependencies = [ + "bytes", + "http 1.3.1", +] [[package]] -name = "crypto-bigint" -version = "0.5.5" +name = "http-body-util" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" +checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" dependencies = [ - "generic-array", - "rand_core 0.6.4", - "subtle", - "zeroize", + "bytes", + "futures-core", + "http 1.3.1", + "http-body", + "pin-project-lite", ] [[package]] -name = "crypto-common" -version = "0.1.6" +name = "httparse" +version = "1.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" -dependencies = [ - "generic-array", - "rand_core 0.6.4", - "typenum", -] +checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" [[package]] -name = "ctor" -version = "0.2.9" +name = "httpdate" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501" -dependencies = [ - "quote", - "syn 2.0.101", -] +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] -name = "ctr" -version = "0.9.2" +name = "humantime" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" -dependencies = [ - "cipher", -] +checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" [[package]] -name = "curve25519-dalek" -version = "4.1.3" +name = "hyper" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" +checksum = "cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80" dependencies = [ - "cfg-if", - "cpufeatures", - "curve25519-dalek-derive", - "fiat-crypto", - "rustc_version 0.4.1", - "subtle", - "zeroize", + "bytes", + "futures-channel", + "futures-util", + "http 1.3.1", + "http-body", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "smallvec", + "tokio", + "want", ] [[package]] -name = "curve25519-dalek-derive" -version = "0.1.1" +name = "hyper-rustls" +version = "0.27.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" +checksum = "2d191583f3da1305256f22463b9bb0471acad48a4e534a5218b9963e9c1f59b2" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", + "futures-util", + "http 1.3.1", + "hyper", + "hyper-util", + "rustls 0.23.35", + "rustls-pki-types", + "tokio", + "tokio-rustls 0.26.2", + "tower-service", + "webpki-roots 0.26.9", ] [[package]] -name = "curve25519-dalek-ng" -version = "4.1.1" +name = "hyper-util" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c359b7249347e46fb28804470d071c921156ad62b3eef5d34e2ba867533dec8" +checksum = "3c6995591a8f1380fcb4ba966a252a4b29188d51d2b89e3a252f5305be65aea8" dependencies = [ - "byteorder", - "digest 0.9.0", - "rand_core 0.6.4", - "subtle-ng", - "zeroize", + "base64 0.22.1", + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "http 1.3.1", + "http-body", + "hyper", + "ipnet", + "libc", + "percent-encoding", + "pin-project-lite", + "socket2 0.5.9", + "tokio", + "tower-service", + "tracing", ] [[package]] -name = "darling" -version = "0.20.11" +name = "iana-time-zone" +version = "0.1.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee" +checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8" dependencies = [ - "darling_core", - "darling_macro", + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "log", + "wasm-bindgen", + "windows-core", ] [[package]] -name = "darling_core" -version = "0.20.11" +name = "iana-time-zone-haiku" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn 2.0.101", + "cc", ] [[package]] -name = "darling_macro" -version = "0.20.11" +name = "icu_collections" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" +checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" dependencies = [ - "darling_core", - "quote", - "syn 2.0.101", + "displaydoc", + "yoke", + "zerofrom", + "zerovec", ] [[package]] -name = "dashmap" -version = "5.5.3" +name = "icu_locid" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" +checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" dependencies = [ - "cfg-if", - "hashbrown 0.14.5", - "lock_api", - "once_cell", - "parking_lot_core", + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", ] [[package]] -name = "dashmap" -version = "6.1.0" +name = "icu_locid_transform" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf" +checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" dependencies = [ - "cfg-if", - "crossbeam-utils", - "hashbrown 0.14.5", - "lock_api", - "once_cell", - "parking_lot_core", + "displaydoc", + "icu_locid", + "icu_locid_transform_data", + "icu_provider", + "tinystr", + "zerovec", ] [[package]] -name = "data-encoding" -version = "2.9.0" +name = "icu_locid_transform_data" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" +checksum = "7515e6d781098bf9f7205ab3fc7e9709d34554ae0b21ddbcb5febfa4bc7df11d" [[package]] -name = "der" -version = "0.7.10" +name = "icu_normalizer" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb" +checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" dependencies = [ - "const-oid", - "pem-rfc7468", - "zeroize", + "displaydoc", + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "utf16_iter", + "utf8_iter", + "write16", + "zerovec", ] [[package]] -name = "deranged" -version = "0.4.0" -source = "git+https://github.com/jhpratt/deranged?rev=3c95431a375bca409a4731ae8749acc84e076267#3c95431a375bca409a4731ae8749acc84e076267" -dependencies = [ - "powerfmt", - "serde", -] +name = "icu_normalizer_data" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5e8338228bdc8ab83303f16b797e177953730f601a96c25d10cb3ab0daa0cb7" [[package]] -name = "derivative" -version = "2.2.0" +name = "icu_properties" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b" +checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", + "displaydoc", + "icu_collections", + "icu_locid_transform", + "icu_properties_data", + "icu_provider", + "tinystr", + "zerovec", ] [[package]] -name = "derive_more" -version = "1.0.0" +name = "icu_properties_data" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05" -dependencies = [ - "derive_more-impl 1.0.0", -] +checksum = "85fb8799753b75aee8d2a21d7c14d9f38921b54b3dbda10f5a3c7a7b82dba5e2" [[package]] -name = "derive_more" -version = "2.0.1" +name = "icu_provider" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" dependencies = [ - "derive_more-impl 2.0.1", + "displaydoc", + "icu_locid", + "icu_provider_macros", + "stable_deref_trait", + "tinystr", + "writeable", + "yoke", + "zerofrom", + "zerovec", ] [[package]] -name = "derive_more-impl" -version = "1.0.0" +name = "icu_provider_macros" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" +checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", "syn 2.0.101", - "unicode-xid", ] [[package]] -name = "derive_more-impl" -version = "2.0.1" +name = "ident_case" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", - "unicode-xid", -] +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] -name = "digest" -version = "0.9.0" +name = "idna" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" dependencies = [ - "generic-array", + "idna_adapter", + "smallvec", + "utf8_iter", ] [[package]] -name = "digest" -version = "0.10.7" +name = "idna_adapter" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" dependencies = [ - "block-buffer 0.10.4", - "const-oid", - "crypto-common", - "subtle", + "icu_normalizer", + "icu_properties", ] [[package]] -name = "dirs" -version = "5.0.1" +name = "im" +version = "15.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" +checksum = "d0acd33ff0285af998aaf9b57342af478078f53492322fafc47450e09397e0e9" dependencies = [ - "dirs-sys", + "bitmaps", + "rand_core 0.6.4", + "rand_xoshiro", + "rayon", + "serde", + "sized-chunks", + "typenum", + "version_check", ] [[package]] -name = "dirs-next" -version = "2.0.0" +name = "include_dir" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" +checksum = "923d117408f1e49d914f1a379a309cffe4f18c05cf4e3d12e613a15fc81bd0dd" dependencies = [ - "cfg-if", - "dirs-sys-next", + "include_dir_macros", ] [[package]] -name = "dirs-sys" -version = "0.4.1" +name = "include_dir_macros" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" +checksum = "7cab85a7ed0bd5f0e76d93846e0147172bed2e2d3f859bcc33a8d9699cad1a75" dependencies = [ - "libc", - "option-ext", - "redox_users", - "windows-sys 0.48.0", + "proc-macro2", + "quote", ] [[package]] -name = "dirs-sys-next" -version = "0.1.2" +name = "indexmap" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" +checksum = "6717a8d2a5a929a1a2eb43a12812498ed141a0bcfb7e8f7844fbdbe4303bba9f" dependencies = [ - "libc", - "redox_users", - "winapi", + "equivalent", + "hashbrown 0.16.0", ] [[package]] -name = "displaydoc" -version = "0.2.5" +name = "indicatif" +version = "0.18.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +checksum = "ade6dfcba0dfb62ad59e59e7241ec8912af34fd29e0e743e3db992bd278e8b65" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", + "console", + "portable-atomic", + "unicode-width", + "unit-prefix", + "web-time", ] [[package]] -name = "doctest-file" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aac81fa3e28d21450aa4d2ac065992ba96a1d7303efbce51a95f4fd175b67562" - -[[package]] -name = "dotenv" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" - -[[package]] -name = "dtoa" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6add3b8cff394282be81f3fc1a0605db594ed69890078ca6e2cab1c408bcf04" - -[[package]] -name = "dunce" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" - -[[package]] -name = "ecdsa" -version = "0.16.9" +name = "inout" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" +checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" dependencies = [ - "der", - "digest 0.10.7", - "elliptic-curve", - "rfc6979", - "serdect", - "signature", - "spki", + "generic-array", ] [[package]] -name = "ed25519-consensus" -version = "2.1.0" +name = "io-uring" +version = "0.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c8465edc8ee7436ffea81d21a019b16676ee3db267aa8d5a8d729581ecf998b" +checksum = "fdd7bddefd0a8833b88a4b68f90dae22c7450d11b354198baee3874fd811b344" dependencies = [ - "curve25519-dalek-ng", - "hex", - "rand_core 0.6.4", - "serde", - "sha2 0.9.9", - "thiserror 1.0.69", - "zeroize", + "bitflags", + "cfg-if", + "libc", ] [[package]] -name = "educe" -version = "0.6.0" +name = "ipnet" +version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d7bc049e1bd8cdeb31b68bbd586a9464ecf9f3944af3958a7a9d0f8b9799417" -dependencies = [ - "enum-ordinalize", - "proc-macro2", - "quote", - "syn 2.0.101", -] +checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" [[package]] -name = "eigen-client-avsregistry" -version = "0.1.3" +name = "iri-string" +version = "0.7.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f67542c5c401ef27cc69e69fef5e9538ecdbfdbcbb735e6b58f323e1c38878e" +checksum = "4f867b9d1d896b67beb18518eda36fdb77a32ea590de864f1325b294a6d14397" dependencies = [ - "alloy 0.9.2", - "alloy-primitives", - "alloy-signer 0.9.2", - "alloy-signer-local 0.9.2", - "ark-ff 0.5.0", - "async-trait", - "eigen-client-elcontracts", - "eigen-common", - "eigen-crypto-bls 0.1.3", - "eigen-logging", - "eigen-types", - "eigen-utils 0.1.3", - "num-bigint", - "thiserror 1.0.69", - "tracing", + "memchr", + "serde", ] [[package]] -name = "eigen-client-elcontracts" -version = "0.1.3" +name = "is-terminal" +version = "0.4.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9903d81154190fcd38105543ad87601aa5626a7a3ebaac1e95a727ba555dd67c" +checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" dependencies = [ - "alloy 0.9.2", - "alloy-primitives", - "eigen-common", - "eigen-logging", - "eigen-types", - "eigen-utils 0.1.3", - "thiserror 1.0.69", - "tracing", + "hermit-abi", + "libc", + "windows-sys 0.59.0", ] [[package]] -name = "eigen-common" -version = "0.1.3" +name = "is_terminal_polyfill" +version = "1.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef203772753614e2c3815fcbba7c321c505107fbc21ce5209371dbc1747ee866" -dependencies = [ - "alloy-provider 0.9.2", - "alloy-pubsub 0.9.2", - "alloy-signer-local 0.9.2", - "alloy-transport 0.9.2", - "alloy-transport-http 0.9.2", - "url", -] +checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" [[package]] -name = "eigen-crypto-bls" -version = "0.1.3" +name = "itertools" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2011781d0aa1db7a3335f150cb35d24733f0261073484bc61dcb428eaec3ba84" +checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" dependencies = [ - "alloy-primitives", - "ark-bn254", - "ark-ec", - "ark-ff 0.5.0", - "ark-serialize 0.5.0", - "ark-std 0.4.0", - "eigen-crypto-bn254 0.1.3", - "eigen-utils 0.1.3", - "serde", - "thiserror 1.0.69", + "either", ] [[package]] -name = "eigen-crypto-bls" -version = "0.5.0" +name = "itertools" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76af95503e08dfc9500910301220c4153d4de2345127326c5b4cf407fd1a02e2" +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" dependencies = [ - "alloy 0.12.6", - "ark-bn254", - "ark-ec", - "ark-ff 0.5.0", - "ark-serialize 0.5.0", - "ark-std 0.4.0", - "eigen-crypto-bn254 0.5.0", - "eigen-utils 0.5.0", - "serde", - "thiserror 1.0.69", + "either", ] [[package]] -name = "eigen-crypto-bn254" -version = "0.1.3" +name = "itertools" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c7b0517eba91bcd109062b271fa579ba9f8a159c445bab9a8df496d25ad1a7e" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" dependencies = [ - "ark-bn254", - "ark-ec", - "ark-ff 0.5.0", - "rust-bls-bn254", + "either", ] [[package]] -name = "eigen-crypto-bn254" -version = "0.5.0" +name = "itertools" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "039664a95a1c6e47fde635b9a5c07f3377901bf0463e10120f96627ac4386a8b" +checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" dependencies = [ - "ark-bn254", - "ark-ec", - "ark-ff 0.5.0", - "rust-bls-bn254", + "either", ] [[package]] -name = "eigen-logging" -version = "0.1.3" +name = "itoa" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35fa2e89b477296b087b42a1e01ef03580c2c8d85943f23e7e5bc9c75eafdb0e" +checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" + +[[package]] +name = "jiff" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be1f93b8b1eb69c77f24bbb0afdf66f54b632ee39af40ca21c4365a1d7347e49" dependencies = [ - "ctor", - "once_cell", - "tracing", - "tracing-subscriber 0.3.19", + "jiff-static", + "log", + "portable-atomic", + "portable-atomic-util", + "serde", ] [[package]] -name = "eigen-services-avsregistry" -version = "0.1.3" +name = "jiff-static" +version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5513ed6db2680c18359efb008a2bf53263165d2969367ec8cb10ec7626e27fb9" +checksum = "03343451ff899767262ec32146f6d559dd759fdadf42ff0e227c7c48f72594b4" dependencies = [ - "alloy-primitives", - "ark-bn254", - "ark-ec", - "async-trait", - "eigen-client-avsregistry", - "eigen-crypto-bls 0.1.3", - "eigen-services-operatorsinfo", - "eigen-types", - "eigen-utils 0.1.3", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "eigen-services-blsaggregation" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f5a7c5528bd573052795c23ee810b1f6915c5fb576f0bc535972a9d87e26445" +name = "jito-bls-ncn-clients" +version = "0.0.1" dependencies = [ - "alloy 0.9.2", - "alloy-primitives", - "ark-bn254", - "ark-ec", - "eigen-client-avsregistry", - "eigen-common", - "eigen-crypto-bls 0.1.3", - "eigen-crypto-bn254 0.1.3", - "eigen-logging", - "eigen-services-avsregistry", - "eigen-types", - "parking_lot", - "serde", + "anyhow", + "bs58", + "hex", + "jito-bls-ncn-core", + "jito-bls-ncn-sdk", + "log", "serde_json", - "thiserror 1.0.69", - "tokio", + "solana-account", + "solana-client", + "solana-commitment-config", + "solana-compute-budget-interface", + "solana-epoch-info", + "solana-keypair", + "solana-program", + "solana-program-test", + "solana-pubkey", + "solana-signature", + "solana-signer", + "solana-system-transaction", + "solana-transaction", + "spl-associated-token-account-interface", + "spl-token-interface", +] + +[[package]] +name = "jito-bls-ncn-core" +version = "0.0.1" +dependencies = [ + "ark-bn254 0.5.0", + "ark-ec 0.5.0", + "ark-ff 0.5.0", + "ark-serialize 0.5.0", + "bytes", + "commonware-codec", + "commonware-cryptography", + "commonware-utils", + "hex", + "serde_json", + "solana-account-info", + "solana-bn254", + "solana-instruction", + "solana-keypair", + "solana-msg", + "solana-program", + "solana-program-error", + "solana-pubkey", + "solana-sha256-hasher", + "solana-signer", + "solana-system-interface", + "spl-associated-token-account-interface", + "spl-token-interface", ] [[package]] -name = "eigen-services-operatorsinfo" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e551346d71e6c98981f36ce78d7cc9117b0bb3668412ca4a4702ad3ec8ad8e95" +name = "jito-bls-ncn-program" +version = "0.0.1" dependencies = [ - "alloy 0.9.2", - "alloy-primitives", - "async-trait", - "eigen-client-avsregistry", - "eigen-common", - "eigen-crypto-bls 0.1.3", - "eigen-logging", - "eigen-types", - "eigen-utils 0.1.3", - "eyre", - "futures", - "futures-util", - "thiserror 1.0.69", - "tokio", - "tokio-util", + "getrandom 0.2.16", + "jito-bls-ncn-core", + "solana-account-info", + "solana-msg", + "solana-program", + "solana-program-entrypoint", + "solana-program-error", + "solana-pubkey", + "solana-security-txt", ] [[package]] -name = "eigen-types" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3df667930a14a41851503eb90837d606f436348b5a9bee7ce814f78c696dd56a" +name = "jito-bls-ncn-sdk" +version = "0.0.1" dependencies = [ - "alloy-primitives", - "eigen-crypto-bls 0.1.3", - "ethers", - "num-bigint", - "thiserror 1.0.69", - "tokio", + "jito-bls-ncn-core", + "jito-bls-ncn-program", + "solana-instruction", + "solana-keypair", + "solana-pubkey", + "solana-signer", + "solana-system-interface", ] [[package]] -name = "eigen-utils" -version = "0.1.3" +name = "jni" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "640db3098ff0d359ce9292e7a3a8ae7ef3d72817e0d5c4f0cc759ed0879661b3" +checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" dependencies = [ - "alloy 0.9.2", - "reqwest 0.12.15", + "cesu8", + "cfg-if", + "combine 4.6.7", + "jni-sys", + "log", + "thiserror 1.0.69", + "walkdir", + "windows-sys 0.45.0", ] [[package]] -name = "eigen-utils" -version = "0.5.0" +name = "jni-sys" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0813ece83d4e9c95eddad48bf6cbfe2e1c083ffbd9eac87a40d818225be31db0" -dependencies = [ - "alloy 0.12.6", - "regex", - "reqwest 0.12.15", -] +checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130" [[package]] -name = "either" -version = "1.15.0" +name = "jobserver" +version = "0.1.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" +checksum = "38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a" dependencies = [ - "serde", + "getrandom 0.3.2", + "libc", ] [[package]] -name = "elliptic-curve" -version = "0.13.8" +name = "js-sys" +version = "0.3.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" +checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" dependencies = [ - "base16ct", - "crypto-bigint", - "digest 0.10.7", - "ff", - "generic-array", - "group", - "pem-rfc7468", - "pkcs8", - "rand_core 0.6.4", - "sec1", - "serdect", - "subtle", - "zeroize", + "once_cell", + "wasm-bindgen", ] [[package]] -name = "ena" -version = "0.14.3" +name = "jsonrpc-core" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d248bdd43ce613d87415282f69b9bb99d947d290b10962dd6c56233312c2ad5" +checksum = "14f7f76aef2d054868398427f6c54943cf3d1caa9a7ec7d0c38d69df97a965eb" dependencies = [ + "futures", + "futures-executor", + "futures-util", "log", + "serde", + "serde_derive", + "serde_json", ] [[package]] -name = "encoding_rs" -version = "0.8.35" +name = "k256" +version = "0.13.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" +checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" dependencies = [ "cfg-if", + "ecdsa", + "elliptic-curve", + "once_cell", + "sha2 0.10.8", + "signature 2.2.0", ] [[package]] -name = "enr" -version = "0.10.0" +name = "keccak" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a3d8dc56e02f954cac8eb489772c552c473346fc34f67412bb6244fd647f7e4" +checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" dependencies = [ - "base64 0.21.7", - "bytes", - "hex", - "k256", - "log", - "rand 0.8.5", - "rlp", - "serde", - "sha3", - "zeroize", + "cpufeatures", ] [[package]] -name = "enum-ordinalize" -version = "4.3.0" +name = "lazy_static" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea0dcfa4e54eeb516fe454635a95753ddd39acda650ce703031c6973e315dd5" -dependencies = [ - "enum-ordinalize-derive", -] +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] -name = "enum-ordinalize-derive" -version = "4.3.1" +name = "libc" +version = "0.2.177" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d28318a75d4aead5c4db25382e8ef717932d0346600cacae6357eb5941bc5ff" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] +checksum = "2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976" [[package]] -name = "equivalent" -version = "1.0.2" +name = "libm" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" +checksum = "c9627da5196e5d8ed0b0495e61e518847578da83483c37288316d9b2e03a7f72" [[package]] -name = "errno" -version = "0.3.11" +name = "libredox" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "976dd42dc7e85965fe702eb8164f21f450704bdde31faefd6471dba214cb594e" +checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ + "bitflags", "libc", - "windows-sys 0.59.0", + "redox_syscall", ] [[package]] -name = "eth-keystore" -version = "0.5.0" +name = "libsecp256k1" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fda3bf123be441da5260717e0661c25a2fd9cb2b2c1d20bf2e05580047158ab" +checksum = "c9d220bc1feda2ac231cb78c3d26f27676b8cf82c96971f7aeef3d0cf2797c73" dependencies = [ - "aes", - "ctr", - "digest 0.10.7", - "hex", - "hmac", - "pbkdf2 0.11.0", - "rand 0.8.5", - "scrypt 0.10.0", + "arrayref", + "base64 0.12.3", + "digest 0.9.0", + "hmac-drbg", + "libsecp256k1-core", + "libsecp256k1-gen-ecmult", + "libsecp256k1-gen-genmult", + "rand 0.7.3", "serde", - "serde_json", - "sha2 0.10.8", - "sha3", - "thiserror 1.0.69", - "uuid 0.8.2", + "sha2 0.9.9", + "typenum", ] [[package]] -name = "ethabi" -version = "18.0.0" +name = "libsecp256k1-core" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7413c5f74cc903ea37386a8965a936cbeb334bd270862fdece542c1b2dcbc898" +checksum = "d0f6ab710cec28cef759c5f18671a27dae2a5f952cdaaee1d8e2908cb2478a80" dependencies = [ - "ethereum-types", - "hex", - "once_cell", - "regex", - "serde", - "serde_json", - "sha3", - "thiserror 1.0.69", - "uint", + "crunchy", + "digest 0.9.0", + "subtle", ] [[package]] -name = "ethbloom" -version = "0.13.0" +name = "libsecp256k1-gen-ecmult" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c22d4b5885b6aa2fe5e8b9329fb8d232bf739e434e6b87347c63bdd00c120f60" +checksum = "ccab96b584d38fac86a83f07e659f0deafd0253dc096dab5a36d53efe653c5c3" dependencies = [ - "crunchy", - "fixed-hash", - "impl-codec", - "impl-rlp", - "impl-serde", - "scale-info", - "tiny-keccak", + "libsecp256k1-core", ] [[package]] -name = "ethereum-types" -version = "0.14.1" +name = "libsecp256k1-gen-genmult" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02d215cbf040552efcbe99a38372fe80ab9d00268e20012b79fcd0f073edd8ee" +checksum = "67abfe149395e3aa1c48a2beb32b068e2334402df8181f818d3aee2b304c4f5d" dependencies = [ - "ethbloom", - "fixed-hash", - "impl-codec", - "impl-rlp", - "impl-serde", - "primitive-types", - "scale-info", - "uint", + "libsecp256k1-core", ] [[package]] -name = "ethers" -version = "2.0.14" +name = "light-poseidon" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "816841ea989f0c69e459af1cf23a6b0033b19a55424a1ea3a30099becdb8dec0" +checksum = "3c9a85a9752c549ceb7578064b4ed891179d20acd85f27318573b64d2d7ee7ee" dependencies = [ - "ethers-addressbook", - "ethers-contract", - "ethers-core", - "ethers-etherscan", - "ethers-middleware", - "ethers-providers", - "ethers-signers", - "ethers-solc", + "ark-bn254 0.4.0", + "ark-ff 0.4.2", + "num-bigint 0.4.6", + "thiserror 1.0.69", ] [[package]] -name = "ethers-addressbook" -version = "2.0.14" +name = "linux-raw-sys" +version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5495afd16b4faa556c3bba1f21b98b4983e53c1755022377051a975c3b021759" -dependencies = [ - "ethers-core", - "once_cell", - "serde", - "serde_json", -] +checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" + +[[package]] +name = "litemap" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23fb14cb19457329c82206317a5663005a4d404783dc74f4252769b0d5f42856" [[package]] -name = "ethers-contract" -version = "2.0.14" +name = "lock_api" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fceafa3578c836eeb874af87abacfb041f92b4da0a78a5edd042564b8ecdaaa" +checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" dependencies = [ - "const-hex", - "ethers-contract-abigen", - "ethers-contract-derive", - "ethers-core", - "ethers-providers", - "futures-util", - "once_cell", - "pin-project", - "serde", - "serde_json", - "thiserror 1.0.69", + "autocfg", + "scopeguard", ] [[package]] -name = "ethers-contract-abigen" -version = "2.0.14" +name = "log" +version = "0.4.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" + +[[package]] +name = "lru" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04ba01fbc2331a38c429eb95d4a570166781f14290ef9fdb144278a90b5a739b" +checksum = "e999beba7b6e8345721bd280141ed958096a2e4abdf74f67ff4ce49b4b54e47a" dependencies = [ - "Inflector", - "const-hex", - "dunce", - "ethers-core", - "ethers-etherscan", - "eyre", - "prettyplease", - "proc-macro2", - "quote", - "regex", - "reqwest 0.11.27", - "serde", - "serde_json", - "syn 2.0.101", - "toml", - "walkdir", + "hashbrown 0.12.3", ] [[package]] -name = "ethers-contract-derive" -version = "2.0.14" +name = "lru-slab" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154" + +[[package]] +name = "lz4" +version = "1.28.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87689dcabc0051cde10caaade298f9e9093d65f6125c14575db3fd8c669a168f" +checksum = "a20b523e860d03443e98350ceaac5e71c6ba89aea7d960769ec3ce37f4de5af4" dependencies = [ - "Inflector", - "const-hex", - "ethers-contract-abigen", - "ethers-core", - "proc-macro2", - "quote", - "serde_json", - "syn 2.0.101", + "lz4-sys", ] [[package]] -name = "ethers-core" -version = "2.0.14" +name = "lz4-sys" +version = "1.11.1+lz4-1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82d80cc6ad30b14a48ab786523af33b37f28a8623fc06afd55324816ef18fb1f" +checksum = "6bd8c0d6c6ed0cd30b3652886bb8711dc4bb01d637a68105a3d5158039b418e6" dependencies = [ - "arrayvec", - "bytes", - "cargo_metadata", - "chrono", - "const-hex", - "elliptic-curve", - "ethabi", - "generic-array", - "k256", - "num_enum", - "once_cell", - "open-fastrlp", - "rand 0.8.5", - "rlp", - "serde", - "serde_json", - "strum 0.26.3", - "syn 2.0.101", - "tempfile", - "thiserror 1.0.69", - "tiny-keccak", - "unicode-xid", + "cc", + "libc", ] [[package]] -name = "ethers-etherscan" -version = "2.0.14" +name = "matchers" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e79e5973c26d4baf0ce55520bd732314328cabe53193286671b47144145b9649" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" dependencies = [ - "chrono", - "ethers-core", - "reqwest 0.11.27", - "semver 1.0.26", - "serde", - "serde_json", - "thiserror 1.0.69", - "tracing", + "regex-automata 0.1.10", ] [[package]] -name = "ethers-middleware" -version = "2.0.14" +name = "matchit" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48f9fdf09aec667c099909d91908d5eaf9be1bd0e2500ba4172c1d28bfaa43de" -dependencies = [ - "async-trait", - "auto_impl", - "ethers-contract", - "ethers-core", - "ethers-etherscan", - "ethers-providers", - "ethers-signers", - "futures-channel", - "futures-locks", - "futures-util", - "instant", - "reqwest 0.11.27", - "serde", - "serde_json", - "thiserror 1.0.69", - "tokio", - "tracing", - "tracing-futures", - "url", -] +checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" [[package]] -name = "ethers-providers" -version = "2.0.14" +name = "matchit" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6434c9a33891f1effc9c75472e12666db2fa5a0fec4b29af6221680a6fe83ab2" -dependencies = [ - "async-trait", - "auto_impl", - "base64 0.21.7", - "bytes", - "const-hex", - "enr", - "ethers-core", - "futures-core", - "futures-timer", - "futures-util", - "hashers", - "http 0.2.12", - "instant", - "jsonwebtoken", - "once_cell", - "pin-project", - "reqwest 0.11.27", - "serde", - "serde_json", - "thiserror 1.0.69", - "tokio", - "tokio-tungstenite 0.20.1", - "tracing", - "tracing-futures", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "ws_stream_wasm", -] +checksum = "47e1ffaa40ddd1f3ed91f717a33c8c0ee23fff369e3aa8772b9605cc1d22f4c3" [[package]] -name = "ethers-signers" -version = "2.0.14" +name = "memchr" +version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "228875491c782ad851773b652dd8ecac62cda8571d3bc32a5853644dd26766c2" -dependencies = [ - "async-trait", - "coins-bip32", - "coins-bip39", - "const-hex", - "elliptic-curve", - "eth-keystore", - "ethers-core", - "rand 0.8.5", - "sha2 0.10.8", - "thiserror 1.0.69", - "tracing", -] +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" [[package]] -name = "ethers-solc" -version = "2.0.14" +name = "memmap2" +version = "0.5.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66244a771d9163282646dbeffe0e6eca4dda4146b6498644e678ac6089b11edd" +checksum = "83faa42c0a078c393f6b29d5db232d8be22776a891f8f56e5284faee4a20b327" dependencies = [ - "cfg-if", - "const-hex", - "dirs", - "dunce", - "ethers-core", - "glob", - "home", - "md-5", - "num_cpus", - "once_cell", - "path-slash", - "rayon", - "regex", - "semver 1.0.26", - "serde", - "serde_json", - "solang-parser", - "svm-rs", - "thiserror 1.0.69", - "tiny-keccak", - "tokio", - "tracing", - "walkdir", - "yansi", + "libc", ] [[package]] -name = "event-listener" -version = "5.4.0" +name = "memmap2" +version = "0.9.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3492acde4c3fc54c845eaab3eed8bd00c7a7d881f78bfc801e43a93dec1331ae" +checksum = "744133e4a0e0a658e1374cf3bf8e415c4052a15a111acd372764c55b4177d490" dependencies = [ - "concurrent-queue", - "parking", - "pin-project-lite", + "libc", ] [[package]] -name = "event-listener-strategy" -version = "0.5.4" +name = "memoffset" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" +checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" dependencies = [ - "event-listener", - "pin-project-lite", + "autocfg", ] [[package]] -name = "eyre" -version = "0.6.12" +name = "merlin" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" +checksum = "58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d" dependencies = [ - "indenter", - "once_cell", + "byteorder", + "keccak", + "rand_core 0.6.4", + "zeroize", ] [[package]] -name = "fastrand" -version = "2.3.0" +name = "mime" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" [[package]] -name = "fastrlp" -version = "0.3.1" +name = "minimal-lexical" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "139834ddba373bbdd213dffe02c8d110508dcf1726c2be27e8d1f7d7e1856418" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "miniz_oxide" +version = "0.8.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a" dependencies = [ - "arrayvec", - "auto_impl", - "bytes", + "adler2", ] [[package]] -name = "fastrlp" -version = "0.4.0" +name = "mio" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce8dba4714ef14b8274c371879b175aa55b16b30f269663f19d576f380018dc4" +checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" dependencies = [ - "arrayvec", - "auto_impl", - "bytes", + "libc", + "wasi 0.11.0+wasi-snapshot-preview1", + "windows-sys 0.52.0", ] [[package]] -name = "ff" -version = "0.13.1" +name = "mockall" +version = "0.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0b50bfb653653f9ca9095b427bed08ab8d75a137839d9ad64eb11810d5b6393" +checksum = "4c84490118f2ee2d74570d114f3d0493cbf02790df303d2707606c3e14e07c96" dependencies = [ - "rand_core 0.6.4", - "subtle", + "cfg-if", + "downcast", + "fragile", + "lazy_static", + "mockall_derive", + "predicates", + "predicates-tree", ] [[package]] -name = "fiat-crypto" -version = "0.2.9" +name = "mockall_derive" +version = "0.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" +checksum = "22ce75669015c4f47b289fd4d4f56e894e4c96003ffdf3ac51313126f94c6cbb" +dependencies = [ + "cfg-if", + "proc-macro2", + "quote", + "syn 1.0.109", +] [[package]] -name = "fixed-hash" -version = "0.8.0" +name = "modular-bitfield" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" +checksum = "a53d79ba8304ac1c4f9eb3b9d281f21f7be9d4626f72ce7df4ad8fbde4f38a74" dependencies = [ - "byteorder", - "rand 0.8.5", - "rustc-hex", + "modular-bitfield-impl", "static_assertions", ] [[package]] -name = "fixedbitset" -version = "0.4.2" +name = "modular-bitfield-impl" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" +checksum = "5a7d5f7076603ebc68de2dc6a650ec331a062a13abaa346975be747bbfa4b789" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] [[package]] -name = "fixedbitset" -version = "0.5.7" +name = "multimap" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99" +checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" [[package]] -name = "flate2" -version = "1.1.1" +name = "nix" +version = "0.30.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ced92e76e966ca2fd84c8f7aa01a4aea65b0eb6648d72f7c8f3e2764a67fece" +checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" dependencies = [ - "crc32fast", - "miniz_oxide", + "bitflags", + "cfg-if", + "cfg_aliases", + "libc", + "memoffset", ] [[package]] -name = "fnv" -version = "1.0.7" +name = "no-std-compat" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +checksum = "b93853da6d84c2e3c7d730d6473e8817692dd89be387eb01b94d7f108ecb5b8c" [[package]] -name = "foldhash" -version = "0.1.5" +name = "nom" +version = "7.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] [[package]] -name = "foreign-types" -version = "0.3.2" +name = "nonzero_ext" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" -dependencies = [ - "foreign-types-shared", -] +checksum = "38bf9645c8b145698bb0b18a4637dcacbc421ea49bef2317e4fd8065a387cf21" [[package]] -name = "foreign-types-shared" -version = "0.1.1" +name = "normalize-line-endings" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" +checksum = "61807f77802ff30975e01f4f071c8ba10c022052f98b3294119f3e615d13e5be" [[package]] -name = "form_urlencoded" -version = "1.2.1" +name = "nu-ansi-term" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" dependencies = [ - "percent-encoding", + "overload", + "winapi", ] [[package]] -name = "fs2" -version = "0.4.3" +name = "num" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" +checksum = "b8536030f9fea7127f841b45bb6243b27255787fb4eb83958aa1ef9d2fdc0c36" dependencies = [ - "libc", - "winapi", + "num-bigint 0.2.6", + "num-complex", + "num-integer", + "num-iter", + "num-rational", + "num-traits", ] [[package]] -name = "funty" -version = "2.0.0" +name = "num-bigint" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "090c7f9998ee0ff65aa5b723e4009f7b217707f1fb5ea551329cc4d6231fb304" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-bigint" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" +checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" +dependencies = [ + "num-integer", + "num-traits", + "serde", +] [[package]] -name = "futures" -version = "0.3.31" +name = "num-complex" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876" +checksum = "b6b19411a9719e753aff12e5187b74d60d3dc449ec3f4dc21e3989c3f554bc95" dependencies = [ - "futures-channel", - "futures-core", - "futures-executor", - "futures-io", - "futures-sink", - "futures-task", - "futures-util", + "autocfg", + "num-traits", ] [[package]] -name = "futures-channel" -version = "0.3.31" +name = "num-conv" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" + +[[package]] +name = "num-derive" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10" +checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ - "futures-core", - "futures-sink", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "futures-core" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e" - -[[package]] -name = "futures-executor" -version = "0.3.31" +name = "num-integer" +version = "0.1.46" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" dependencies = [ - "futures-core", - "futures-task", - "futures-util", + "num-traits", ] [[package]] -name = "futures-io" -version = "0.3.31" +name = "num-iter" +version = "0.1.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6" +checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] [[package]] -name = "futures-locks" -version = "0.7.1" +name = "num-rational" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45ec6fe3675af967e67c5536c0b9d44e34e6c52f86bedc4ea49c5317b8e94d06" +checksum = "5c000134b5dbf44adc5cb772486d335293351644b801551abe8f75c84cfa4aef" dependencies = [ - "futures-channel", - "futures-task", + "autocfg", + "num-bigint 0.2.6", + "num-integer", + "num-traits", ] [[package]] -name = "futures-macro" -version = "0.3.31" +name = "num-traits" +version = "0.2.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", + "autocfg", + "libm", ] [[package]] -name = "futures-sink" -version = "0.3.31" +name = "num_cpus" +version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7" +checksum = "91df4bbde75afed763b708b7eee1e8e7651e02d97f6d5dd763e89367e957b23b" +dependencies = [ + "hermit-abi", + "libc", +] [[package]] -name = "futures-task" -version = "0.3.31" +name = "num_enum" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988" +checksum = "b1207a7e20ad57b847bbddc6776b968420d38292bbfe2089accff5e19e82454c" +dependencies = [ + "num_enum_derive", + "rustversion", +] [[package]] -name = "futures-timer" -version = "3.0.3" +name = "num_enum_derive" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f288b0a4f20f9a56b5d1da57e2227c661b7b16168e2f72365f57b63326e29b24" +checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7" dependencies = [ - "gloo-timers", - "send_wrapper 0.4.0", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "futures-util" -version = "0.3.31" +name = "oid-registry" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81" +checksum = "9bedf36ffb6ba96c2eb7144ef6270557b52e54b20c0a8e1eb2ff99a6c6959bff" dependencies = [ - "futures-channel", - "futures-core", - "futures-io", - "futures-macro", - "futures-sink", - "futures-task", - "memchr", - "pin-project-lite", - "pin-utils", - "slab", + "asn1-rs", ] [[package]] -name = "futures-utils-wasm" -version = "0.1.0" +name = "once_cell" +version = "1.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42012b0f064e01aa58b545fe3727f90f7dd4020f4a3ea735b50344965f5a57e9" +checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" [[package]] -name = "fxhash" -version = "0.2.1" +name = "oorandom" +version = "11.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" -dependencies = [ - "byteorder", -] +checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e" [[package]] -name = "generic-array" -version = "0.14.7" +name = "opaque-debug" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" -dependencies = [ - "typenum", - "version_check", - "zeroize", -] +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" [[package]] -name = "getrandom" -version = "0.2.16" +name = "openssl" +version = "0.10.72" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" +checksum = "fedfea7d58a1f73118430a55da6a286e7b044961736ce96a16a17068ea25e5da" dependencies = [ + "bitflags", "cfg-if", - "js-sys", + "foreign-types", "libc", - "wasi 0.11.0+wasi-snapshot-preview1", - "wasm-bindgen", + "once_cell", + "openssl-macros", + "openssl-sys", ] [[package]] -name = "getrandom" -version = "0.3.2" +name = "openssl-macros" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73fea8450eea4bac3940448fb7ae50d91f034f941199fcd9d909a5a07aa455f0" +checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ - "cfg-if", - "js-sys", - "libc", - "r-efi", - "wasi 0.14.2+wasi-0.2.4", - "wasm-bindgen", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "gimli" -version = "0.31.1" +name = "openssl-probe" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f" +checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" [[package]] -name = "glob" -version = "0.3.2" +name = "openssl-src" +version = "300.5.4+3.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" +checksum = "a507b3792995dae9b0df8a1c1e3771e8418b7c2d9f0baeba32e6fe8b06c7cb72" +dependencies = [ + "cc", +] [[package]] -name = "gloo-timers" -version = "0.2.6" +name = "openssl-sys" +version = "0.9.107" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b995a66bb87bebce9a0f4a95aed01daca4872c050bfcb21653361c03bc35e5c" +checksum = "8288979acd84749c744a9014b4382d42b8f7b2592847b5afb2ed29e5d16ede07" dependencies = [ - "futures-channel", - "futures-core", - "js-sys", - "wasm-bindgen", + "cc", + "libc", + "openssl-src", + "pkg-config", + "vcpkg", ] [[package]] -name = "governor" -version = "0.6.3" +name = "opentelemetry" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68a7f542ee6b35af73b06abc0dad1c1bae89964e4e253bc4b587b91c9637867b" +checksum = "6105e89802af13fdf48c49d7646d3b533a70e536d818aae7e78ba0433d01acb8" dependencies = [ - "cfg-if", - "dashmap 5.5.3", - "futures", - "futures-timer", - "no-std-compat", - "nonzero_ext", - "parking_lot", - "portable-atomic", - "quanta", + "async-trait", + "crossbeam-channel", + "futures-channel", + "futures-executor", + "futures-util", + "js-sys", + "lazy_static", + "percent-encoding", + "pin-project", "rand 0.8.5", - "smallvec", - "spinning_top", + "thiserror 1.0.69", ] [[package]] -name = "group" -version = "0.13.0" +name = "opentelemetry" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +checksum = "236e667b670a5cdf90c258f5a55794ec5ac5027e960c224bff8367a59e1e6426" dependencies = [ - "ff", - "rand_core 0.6.4", - "subtle", + "futures-core", + "futures-sink", + "js-sys", + "pin-project-lite", + "thiserror 2.0.17", + "tracing", ] [[package]] -name = "h2" -version = "0.3.26" +name = "opentelemetry-http" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" +checksum = "a8863faf2910030d139fb48715ad5ff2f35029fc5f244f6d5f689ddcf4d26253" dependencies = [ + "async-trait", "bytes", - "fnv", - "futures-core", - "futures-sink", - "futures-util", - "http 0.2.12", - "indexmap 2.9.0", - "slab", - "tokio", - "tokio-util", + "http 1.3.1", + "opentelemetry 0.28.0", + "reqwest", "tracing", ] [[package]] -name = "h2" -version = "0.4.9" +name = "opentelemetry-otlp" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75249d144030531f8dee69fe9cea04d3edf809a017ae445e2abdff6629e86633" +checksum = "5bef114c6d41bea83d6dc60eb41720eedd0261a67af57b66dd2b84ac46c01d91" dependencies = [ - "atomic-waker", - "bytes", - "fnv", + "async-trait", "futures-core", - "futures-sink", "http 1.3.1", - "indexmap 2.9.0", - "slab", - "tokio", - "tokio-util", + "opentelemetry 0.28.0", + "opentelemetry-http", + "opentelemetry-proto", + "opentelemetry_sdk", + "prost", + "reqwest", + "thiserror 2.0.17", "tracing", ] [[package]] -name = "half" -version = "2.6.0" +name = "opentelemetry-proto" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9" +checksum = "56f8870d3024727e99212eb3bb1762ec16e255e3e6f58eeb3dc8db1aa226746d" dependencies = [ - "cfg-if", - "crunchy", + "opentelemetry 0.28.0", + "opentelemetry_sdk", + "prost", + "tonic", ] [[package]] -name = "hashbrown" -version = "0.12.3" +name = "opentelemetry_sdk" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84dfad6042089c7fc1f6118b7040dc2eb4ab520abbf410b79dc481032af39570" +dependencies = [ + "async-trait", + "futures-channel", + "futures-executor", + "futures-util", + "glob", + "opentelemetry 0.28.0", + "percent-encoding", + "rand 0.8.5", + "serde_json", + "thiserror 2.0.17", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "overload" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" [[package]] -name = "hashbrown" +name = "p256" version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" +checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" +dependencies = [ + "ecdsa", + "elliptic-curve", + "primeorder", + "sha2 0.10.8", +] [[package]] -name = "hashbrown" -version = "0.14.5" +name = "parking" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" [[package]] -name = "hashbrown" -version = "0.15.2" +name = "parking_lot" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" dependencies = [ - "allocator-api2", - "equivalent", - "foldhash", - "serde", + "lock_api", + "parking_lot_core", ] [[package]] -name = "hashers" -version = "1.0.1" +name = "parking_lot_core" +version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2bca93b15ea5a746f220e56587f71e73c6165eab783df9e26590069953e3c30" +checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ - "fxhash", + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-targets 0.52.6", ] [[package]] -name = "heck" +name = "password-hash" version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" +checksum = "346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166" +dependencies = [ + "base64ct", + "rand_core 0.6.4", + "subtle", +] [[package]] -name = "hermit-abi" -version = "0.3.9" +name = "paste" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" [[package]] -name = "hermit-abi" -version = "0.5.0" +name = "pbkdf2" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbd780fe5cc30f81464441920d82ac8740e2e46b29a6fad543ddd075229ce37e" +checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" +dependencies = [ + "digest 0.10.7", +] [[package]] -name = "hex" -version = "0.4.3" +name = "pbkdf2" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" dependencies = [ - "serde", + "digest 0.10.7", + "hmac 0.12.1", ] [[package]] -name = "hkdf" -version = "0.12.4" +name = "pem" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" +checksum = "a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8" dependencies = [ - "hmac", + "base64 0.13.1", ] [[package]] -name = "hmac" -version = "0.12.1" +name = "pem-rfc7468" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" +checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" dependencies = [ - "digest 0.10.7", + "base64ct", ] [[package]] -name = "home" -version = "0.5.11" +name = "percent-encoding" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" + +[[package]] +name = "percentage" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" +checksum = "2fd23b938276f14057220b707937bcb42fa76dda7560e57a2da30cb52d557937" dependencies = [ - "windows-sys 0.59.0", + "num", ] [[package]] -name = "http" -version = "0.2.12" +name = "petgraph" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" +checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772" dependencies = [ - "bytes", - "fnv", - "itoa", + "fixedbitset", + "indexmap", ] [[package]] -name = "http" -version = "1.3.1" +name = "pin-project" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565" +checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" dependencies = [ - "bytes", - "fnv", - "itoa", + "pin-project-internal", ] [[package]] -name = "http-body" -version = "0.4.6" +name = "pin-project-internal" +version = "1.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" +checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ - "bytes", - "http 0.2.12", - "pin-project-lite", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "http-body" -version = "1.0.1" +name = "pin-project-lite" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" +checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkcs8" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" dependencies = [ - "bytes", - "http 1.3.1", + "der", + "spki", ] [[package]] -name = "http-body-util" -version = "0.1.3" +name = "pkg-config" +version = "0.3.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a" +checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" + +[[package]] +name = "plotters" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747" dependencies = [ - "bytes", - "futures-core", - "http 1.3.1", - "http-body 1.0.1", - "pin-project-lite", + "num-traits", + "plotters-backend", + "plotters-svg", + "wasm-bindgen", + "web-sys", ] [[package]] -name = "httparse" -version = "1.10.1" +name = "plotters-backend" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87" +checksum = "df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a" [[package]] -name = "httpdate" -version = "1.0.3" +name = "plotters-svg" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" +checksum = "51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670" +dependencies = [ + "plotters-backend", +] [[package]] -name = "hyper" -version = "0.14.32" +name = "poly1305" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41dfc780fdec9373c01bae43289ea34c972e40ee3c9f6b3c8801a35f35586ce7" +checksum = "8159bd90725d2df49889a078b54f4f79e87f1f8a8444194cdca81d38f5393abf" dependencies = [ - "bytes", - "futures-channel", - "futures-core", - "futures-util", - "h2 0.3.26", - "http 0.2.12", - "http-body 0.4.6", - "httparse", - "httpdate", - "itoa", - "pin-project-lite", - "socket2", - "tokio", - "tower-service", - "tracing", - "want", + "cpufeatures", + "opaque-debug", + "universal-hash", ] [[package]] -name = "hyper" -version = "1.6.0" +name = "polyval" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80" +checksum = "9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25" dependencies = [ - "bytes", - "futures-channel", - "futures-util", - "h2 0.4.9", - "http 1.3.1", - "http-body 1.0.1", - "httparse", - "httpdate", - "itoa", - "pin-project-lite", - "smallvec", - "tokio", - "want", + "cfg-if", + "cpufeatures", + "opaque-debug", + "universal-hash", ] [[package]] -name = "hyper-rustls" -version = "0.24.2" +name = "portable-atomic" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590" +checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" + +[[package]] +name = "portable-atomic-util" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8a2f0d8d040d7848a709caf78912debcc3f33ee4b3cac47d73d1e1069e83507" dependencies = [ - "futures-util", - "http 0.2.12", - "hyper 0.14.32", - "rustls 0.21.12", - "tokio", - "tokio-rustls 0.24.1", + "portable-atomic", ] [[package]] -name = "hyper-rustls" -version = "0.27.5" +name = "powerfmt" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d191583f3da1305256f22463b9bb0471acad48a4e534a5218b9963e9c1f59b2" -dependencies = [ - "futures-util", - "http 1.3.1", - "hyper 1.6.0", - "hyper-util", - "rustls 0.23.26", - "rustls-pki-types", - "tokio", - "tokio-rustls 0.26.2", - "tower-service", - "webpki-roots 0.26.9", +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "ppv-lite86" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" +dependencies = [ + "zerocopy 0.8.25", ] [[package]] -name = "hyper-tls" -version = "0.6.0" +name = "predicates" +version = "2.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" +checksum = "59230a63c37f3e18569bdb90e4a89cbf5bf8b06fea0b84e65ea10cc4df47addd" dependencies = [ - "bytes", - "http-body-util", - "hyper 1.6.0", - "hyper-util", - "native-tls", - "tokio", - "tokio-native-tls", - "tower-service", + "difflib", + "float-cmp", + "itertools 0.10.5", + "normalize-line-endings", + "predicates-core", + "regex", ] [[package]] -name = "hyper-util" -version = "0.1.11" +name = "predicates-core" +version = "1.0.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "727e462b119fe9c93fd0eb1429a5f7647394014cf3c04ab2c0350eeb09095ffa" + +[[package]] +name = "predicates-tree" +version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "497bbc33a26fdd4af9ed9c70d63f61cf56a938375fbb32df34db9b1cd6d643f2" +checksum = "72dd2d6d381dfb73a193c7fca536518d7caee39fc8503f74e7dc0be0531b425c" dependencies = [ - "bytes", - "futures-channel", - "futures-util", - "http 1.3.1", - "http-body 1.0.1", - "hyper 1.6.0", - "libc", - "pin-project-lite", - "socket2", - "tokio", - "tower-service", - "tracing", + "predicates-core", + "termtree", ] [[package]] -name = "iana-time-zone" -version = "0.1.63" +name = "prettyplease" +version = "0.2.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8" +checksum = "664ec5419c51e34154eec046ebcba56312d5a2fc3b09a06da188e1ad21afadf6" dependencies = [ - "android_system_properties", - "core-foundation-sys", - "iana-time-zone-haiku", - "js-sys", - "log", - "wasm-bindgen", - "windows-core", + "proc-macro2", + "syn 2.0.101", ] [[package]] -name = "iana-time-zone-haiku" -version = "0.1.2" +name = "primeorder" +version = "0.13.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" dependencies = [ - "cc", + "elliptic-curve", ] [[package]] -name = "icu_collections" -version = "1.5.0" +name = "proc-macro-crate" +version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" +checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" dependencies = [ - "displaydoc", - "yoke", - "zerofrom", - "zerovec", + "toml_edit", ] [[package]] -name = "icu_locid" -version = "1.5.0" +name = "proc-macro-error-attr2" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" +checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" dependencies = [ - "displaydoc", - "litemap", - "tinystr", - "writeable", - "zerovec", + "proc-macro2", + "quote", ] [[package]] -name = "icu_locid_transform" -version = "1.5.0" +name = "proc-macro-error2" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" +checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" dependencies = [ - "displaydoc", - "icu_locid", - "icu_locid_transform_data", - "icu_provider", - "tinystr", - "zerovec", + "proc-macro-error-attr2", + "proc-macro2", + "quote", ] [[package]] -name = "icu_locid_transform_data" -version = "1.5.1" +name = "proc-macro2" +version = "1.0.95" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7515e6d781098bf9f7205ab3fc7e9709d34554ae0b21ddbcb5febfa4bc7df11d" +checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" +dependencies = [ + "unicode-ident", +] [[package]] -name = "icu_normalizer" -version = "1.5.0" +name = "prometheus-client" +version = "0.22.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" +checksum = "504ee9ff529add891127c4827eb481bd69dc0ebc72e9a682e187db4caa60c3ca" dependencies = [ - "displaydoc", - "icu_collections", - "icu_normalizer_data", - "icu_properties", - "icu_provider", - "smallvec", - "utf16_iter", - "utf8_iter", - "write16", - "zerovec", + "dtoa", + "itoa", + "parking_lot", + "prometheus-client-derive-encode", ] [[package]] -name = "icu_normalizer_data" -version = "1.5.1" +name = "prometheus-client" +version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c5e8338228bdc8ab83303f16b797e177953730f601a96c25d10cb3ab0daa0cb7" +checksum = "cf41c1a7c32ed72abe5082fb19505b969095c12da9f5732a4bc9878757fd087c" +dependencies = [ + "dtoa", + "itoa", + "parking_lot", + "prometheus-client-derive-encode", +] [[package]] -name = "icu_properties" -version = "1.5.1" +name = "prometheus-client-derive-encode" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" +checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8" dependencies = [ - "displaydoc", - "icu_collections", - "icu_locid_transform", - "icu_properties_data", - "icu_provider", - "tinystr", - "zerovec", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "icu_properties_data" -version = "1.5.1" +name = "prost" +version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85fb8799753b75aee8d2a21d7c14d9f38921b54b3dbda10f5a3c7a7b82dba5e2" +checksum = "2796faa41db3ec313a31f7624d9286acf277b52de526150b7e69f3debf891ee5" +dependencies = [ + "bytes", + "prost-derive", +] [[package]] -name = "icu_provider" -version = "1.5.0" +name = "prost-build" +version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" +checksum = "be769465445e8c1474e9c5dac2018218498557af32d9ed057325ec9a41ae81bf" dependencies = [ - "displaydoc", - "icu_locid", - "icu_provider_macros", - "stable_deref_trait", - "tinystr", - "writeable", - "yoke", - "zerofrom", - "zerovec", + "heck 0.5.0", + "itertools 0.14.0", + "log", + "multimap", + "once_cell", + "petgraph", + "prettyplease", + "prost", + "prost-types", + "regex", + "syn 2.0.101", + "tempfile", ] [[package]] -name = "icu_provider_macros" -version = "1.5.0" +name = "prost-derive" +version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" +checksum = "8a56d757972c98b346a9b766e3f02746cde6dd1cd1d1d563472929fdd74bec4d" dependencies = [ + "anyhow", + "itertools 0.14.0", "proc-macro2", "quote", "syn 2.0.101", ] [[package]] -name = "ident_case" -version = "1.0.1" +name = "prost-types" +version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" +checksum = "52c2c1bf36ddb1a1c396b3601a3cec27c2462e45f07c386894ec3ccf5332bd16" +dependencies = [ + "prost", +] [[package]] -name = "idna" -version = "1.0.3" +name = "qstring" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e" +checksum = "d464fae65fff2680baf48019211ce37aaec0c78e9264c84a3e484717f965104e" dependencies = [ - "idna_adapter", - "smallvec", - "utf8_iter", + "percent-encoding", ] [[package]] -name = "idna_adapter" -version = "1.2.0" +name = "qualifier_attr" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71" +checksum = "9e2e25ee72f5b24d773cae88422baddefff7714f97aab68d96fe2b6fc4a28fb2" dependencies = [ - "icu_normalizer", - "icu_properties", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "impl-codec" -version = "0.6.0" +name = "quanta" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" +checksum = "3bd1fe6824cea6538803de3ff1bc0cf3949024db3d43c9643024bfb33a807c0e" dependencies = [ - "parity-scale-codec", + "crossbeam-utils", + "libc", + "once_cell", + "raw-cpuid", + "wasi 0.11.0+wasi-snapshot-preview1", + "web-sys", + "winapi", ] [[package]] -name = "impl-rlp" -version = "0.3.0" +name = "quinn" +version = "0.11.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e20a958963c291dc322d98411f541009df2ced7b5a4f2bd52337638cfccf20" +dependencies = [ + "bytes", + "cfg_aliases", + "pin-project-lite", + "quinn-proto", + "quinn-udp", + "rustc-hash", + "rustls 0.23.35", + "socket2 0.5.9", + "thiserror 2.0.17", + "tokio", + "tracing", + "web-time", +] + +[[package]] +name = "quinn-proto" +version = "0.11.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f28220f89297a075ddc7245cd538076ee98b01f2a9c23a53a4f1105d5a322808" +checksum = "f1906b49b0c3bc04b5fe5d86a77925ae6524a19b816ae38ce1e426255f1d8a31" dependencies = [ - "rlp", + "bytes", + "fastbloom", + "getrandom 0.3.2", + "lru-slab", + "rand 0.9.1", + "ring", + "rustc-hash", + "rustls 0.23.35", + "rustls-pki-types", + "rustls-platform-verifier", + "slab", + "thiserror 2.0.17", + "tinyvec", + "tracing", + "web-time", ] [[package]] -name = "impl-serde" -version = "0.4.0" +name = "quinn-udp" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebc88fc67028ae3db0c853baa36269d398d5f45b6982f95549ff5def78c935cd" +checksum = "541d0f57c6ec747a90738a52741d3221f7960e8ac2f0ff4b1a63680e033b4ab5" dependencies = [ - "serde", + "cfg_aliases", + "libc", + "once_cell", + "socket2 0.5.9", + "tracing", + "windows-sys 0.59.0", ] [[package]] -name = "impl-trait-for-tuples" -version = "0.2.3" +name = "quote" +version = "1.0.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" +checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" dependencies = [ "proc-macro2", - "quote", - "syn 2.0.101", ] [[package]] -name = "indenter" -version = "0.3.3" +name = "r-efi" +version = "5.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" +checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" [[package]] -name = "indexmap" -version = "1.9.3" +name = "rand" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" dependencies = [ - "autocfg", - "hashbrown 0.12.3", - "serde", + "getrandom 0.1.16", + "libc", + "rand_chacha 0.2.2", + "rand_core 0.5.1", + "rand_hc", ] [[package]] -name = "indexmap" -version = "2.9.0" +name = "rand" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cea70ddb795996207ad57735b50c5982d8844f38ba9ee5f1aedcfb708a2aa11e" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ - "equivalent", - "hashbrown 0.15.2", - "serde", + "libc", + "rand_chacha 0.3.1", + "rand_core 0.6.4", ] [[package]] -name = "inout" -version = "0.1.4" +name = "rand" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" +checksum = "9fbfd9d094a40bf3ae768db9361049ace4c0e04a4fd6b359518bd7b73a73dd97" dependencies = [ - "generic-array", + "rand_chacha 0.9.0", + "rand_core 0.9.3", ] [[package]] -name = "instant" -version = "0.1.13" +name = "rand_chacha" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" +checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" dependencies = [ - "cfg-if", + "ppv-lite86", + "rand_core 0.5.1", ] [[package]] -name = "interprocess" -version = "2.2.3" +name = "rand_chacha" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d941b405bd2322993887859a8ee6ac9134945a24ec5ec763a8a962fc64dfec2d" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ - "doctest-file", - "futures-core", - "libc", - "recvmsg", - "tokio", - "widestring", - "windows-sys 0.52.0", + "ppv-lite86", + "rand_core 0.6.4", ] [[package]] -name = "ipnet" -version = "2.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" - -[[package]] -name = "is-terminal" -version = "0.4.16" +name = "rand_chacha" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e04d7f318608d35d4b61ddd75cbdaee86b023ebe2bd5a66ee0915f0bf93095a9" +checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" dependencies = [ - "hermit-abi 0.5.0", - "libc", - "windows-sys 0.59.0", + "ppv-lite86", + "rand_core 0.9.3", ] [[package]] -name = "is_terminal_polyfill" -version = "1.70.1" +name = "rand_core" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" +checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" +dependencies = [ + "getrandom 0.1.16", +] [[package]] -name = "itertools" -version = "0.10.5" +name = "rand_core" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "either", + "getrandom 0.2.16", ] [[package]] -name = "itertools" -version = "0.11.0" +name = "rand_core" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" dependencies = [ - "either", + "getrandom 0.3.2", ] [[package]] -name = "itertools" -version = "0.13.0" +name = "rand_distr" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31" dependencies = [ - "either", + "num-traits", + "rand 0.8.5", ] [[package]] -name = "itertools" -version = "0.14.0" +name = "rand_hc" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" +checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" dependencies = [ - "either", + "rand_core 0.5.1", ] [[package]] -name = "itoa" -version = "1.0.15" +name = "rand_xoshiro" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" +checksum = "6f97cdb2a36ed4183de61b2f824cc45c9f1037f28afe0a322e9fff4c108b5aaa" +dependencies = [ + "rand_core 0.6.4", +] [[package]] -name = "jobserver" -version = "0.1.33" +name = "raw-cpuid" +version = "11.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a" +checksum = "c6df7ab838ed27997ba19a4664507e6f82b41fe6e20be42929332156e5e85146" dependencies = [ - "getrandom 0.3.2", - "libc", + "bitflags", ] [[package]] -name = "js-sys" -version = "0.3.77" +name = "rayon" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" dependencies = [ - "once_cell", - "wasm-bindgen", + "either", + "rayon-core", ] [[package]] -name = "jsonwebtoken" -version = "8.3.0" +name = "rayon-core" +version = "1.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6971da4d9c3aa03c3d8f3ff0f4155b534aad021292003895a469716b2a230378" +checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" dependencies = [ - "base64 0.21.7", - "pem", - "ring 0.16.20", - "serde", - "serde_json", - "simple_asn1", + "crossbeam-deque", + "crossbeam-utils", ] [[package]] -name = "k256" -version = "0.13.4" +name = "redox_syscall" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" +checksum = "d2f103c6d277498fbceb16e84d317e2a400f160f46904d5f5410848c829511a3" dependencies = [ - "cfg-if", - "ecdsa", - "elliptic-curve", - "once_cell", - "serdect", - "sha2 0.10.8", - "signature", + "bitflags", ] [[package]] -name = "keccak" -version = "0.1.5" +name = "regex" +version = "1.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" +checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" dependencies = [ - "cpufeatures", + "aho-corasick", + "memchr", + "regex-automata 0.4.9", + "regex-syntax 0.8.5", ] [[package]] -name = "keccak-asm" -version = "0.1.4" +name = "regex-automata" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "505d1856a39b200489082f90d897c3f07c455563880bc5952e38eabf731c83b6" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" dependencies = [ - "digest 0.10.7", - "sha3-asm", + "regex-syntax 0.6.29", ] [[package]] -name = "lalrpop" -version = "0.20.2" +name = "regex-automata" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55cb077ad656299f160924eb2912aa147d7339ea7d69e1b5517326fdcec3c1ca" +checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" dependencies = [ - "ascii-canvas", - "bit-set 0.5.3", - "ena", - "itertools 0.11.0", - "lalrpop-util", - "petgraph 0.6.5", - "regex", + "aho-corasick", + "memchr", "regex-syntax 0.8.5", - "string_cache", - "term", - "tiny-keccak", - "unicode-xid", - "walkdir", ] [[package]] -name = "lalrpop-util" -version = "0.20.2" +name = "regex-syntax" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + +[[package]] +name = "regex-syntax" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" + +[[package]] +name = "reqwest" +version = "0.12.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "507460a910eb7b32ee961886ff48539633b788a36b65692b95f225b844c82553" +checksum = "9d0946410b9f7b082a427e4ef5c8ff541a88b357bc6c637c40db3a68ac70a36f" dependencies = [ - "regex-automata 0.4.9", + "async-compression", + "base64 0.22.1", + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "http 1.3.1", + "http-body", + "http-body-util", + "hyper", + "hyper-rustls", + "hyper-util", + "js-sys", + "log", + "percent-encoding", + "pin-project-lite", + "quinn", + "rustls 0.23.35", + "rustls-pki-types", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper", + "tokio", + "tokio-rustls 0.26.2", + "tokio-util 0.7.17", + "tower 0.5.2", + "tower-http 0.6.6", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", + "webpki-roots 1.0.4", ] [[package]] -name = "lazy_static" -version = "1.5.0" +name = "reqwest-middleware" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" +checksum = "57f17d28a6e6acfe1733fe24bcd30774d13bffa4b8a22535b4c8c98423088d4e" +dependencies = [ + "anyhow", + "async-trait", + "http 1.3.1", + "reqwest", + "serde", + "thiserror 1.0.69", + "tower-service", +] [[package]] -name = "libc" -version = "0.2.172" +name = "rfc6979" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa" +checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" +dependencies = [ + "hmac 0.12.1", + "subtle", +] [[package]] -name = "libm" -version = "0.2.13" +name = "ring" +version = "0.17.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9627da5196e5d8ed0b0495e61e518847578da83483c37288316d9b2e03a7f72" +checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" +dependencies = [ + "cc", + "cfg-if", + "getrandom 0.2.16", + "libc", + "untrusted", + "windows-sys 0.52.0", +] [[package]] -name = "libredox" -version = "0.1.3" +name = "rust-bls-bn254" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" +checksum = "84ab37c09dbee7ec3b610ecd703c6a79708aef66d52052ee7bfec0bbb9e7a8cd" dependencies = [ - "bitflags 2.9.0", - "libc", + "aes", + "ark-bn254 0.5.0", + "ark-ec 0.5.0", + "ark-ff 0.5.0", + "ark-serialize 0.5.0", + "ark-std 0.5.0", + "ctr", + "hex", + "hkdf", + "num-bigint 0.4.6", + "num-traits", + "pbkdf2 0.12.2", + "rand 0.8.5", + "scrypt", + "serde", + "serde_json", + "sha2 0.10.8", + "thiserror 1.0.69", + "unicode-normalization", + "uuid", ] [[package]] -name = "linux-raw-sys" -version = "0.9.4" +name = "rustc-demangle" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" +checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" [[package]] -name = "litemap" -version = "0.7.5" +name = "rustc-hash" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23fb14cb19457329c82206317a5663005a4d404783dc74f4252769b0d5f42856" +checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" [[package]] -name = "lock_api" -version = "0.4.12" +name = "rustc_version" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "autocfg", - "scopeguard", + "semver", ] [[package]] -name = "log" -version = "0.4.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94" - -[[package]] -name = "lru" -version = "0.12.5" +name = "rusticata-macros" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" +checksum = "faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632" dependencies = [ - "hashbrown 0.15.2", + "nom", ] [[package]] -name = "lru" -version = "0.13.0" +name = "rustix" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "227748d55f2f0ab4735d87fd623798cb6b664512fe979705f829c9f81c934465" +checksum = "d97817398dd4bb2e6da002002db259209759911da105da92bec29ccb12cf58bf" dependencies = [ - "hashbrown 0.15.2", + "bitflags", + "errno", + "libc", + "linux-raw-sys", + "windows-sys 0.59.0", ] [[package]] -name = "macro-string" -version = "0.1.4" +name = "rustls" +version = "0.21.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b27834086c65ec3f9387b096d66e99f221cf081c2b738042aa252bcd41204e3" +checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", + "log", + "ring", + "rustls-webpki 0.101.7", + "sct", ] [[package]] -name = "matchers" -version = "0.1.0" +name = "rustls" +version = "0.23.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +checksum = "533f54bc6a7d4f647e46ad909549eda97bf5afc1585190ef692b4286b198bd8f" dependencies = [ - "regex-automata 0.1.10", + "once_cell", + "ring", + "rustls-pki-types", + "rustls-webpki 0.103.8", + "subtle", + "zeroize", ] [[package]] -name = "matchit" -version = "0.7.3" +name = "rustls-native-certs" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" +checksum = "9980d917ebb0c0536119ba501e90834767bffc3d60641457fd84a1f3fd337923" +dependencies = [ + "openssl-probe", + "rustls-pki-types", + "schannel", + "security-framework", +] [[package]] -name = "matchit" -version = "0.8.4" +name = "rustls-pki-types" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47e1ffaa40ddd1f3ed91f717a33c8c0ee23fff369e3aa8772b9605cc1d22f4c3" +checksum = "94182ad936a0c91c324cd46c6511b9510ed16af436d7b5bab34beab0afd55f7a" +dependencies = [ + "web-time", + "zeroize", +] [[package]] -name = "md-5" -version = "0.10.6" +name = "rustls-platform-verifier" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" +checksum = "1d99feebc72bae7ab76ba994bb5e121b8d83d910ca40b36e0921f53becc41784" dependencies = [ - "cfg-if", - "digest 0.10.7", + "core-foundation", + "core-foundation-sys", + "jni", + "log", + "once_cell", + "rustls 0.23.35", + "rustls-native-certs", + "rustls-platform-verifier-android", + "rustls-webpki 0.103.8", + "security-framework", + "security-framework-sys", + "webpki-root-certs", + "windows-sys 0.59.0", ] [[package]] -name = "memchr" -version = "2.7.4" +name = "rustls-platform-verifier-android" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +checksum = "f87165f0995f63a9fbeea62b64d10b4d9d8e78ec6d7d51fb2125fda7bb36788f" [[package]] -name = "mime" -version = "0.3.17" +name = "rustls-webpki" +version = "0.101.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" +checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" +dependencies = [ + "ring", + "untrusted", +] [[package]] -name = "miniz_oxide" -version = "0.8.8" +name = "rustls-webpki" +version = "0.103.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3be647b768db090acb35d5ec5db2b0e1f1de11133ca123b9eacf5137868f892a" +checksum = "2ffdfa2f5286e2247234e03f680868ac2815974dc39e00ea15adc445d0aafe52" dependencies = [ - "adler2", + "ring", + "rustls-pki-types", + "untrusted", ] [[package]] -name = "mio" -version = "1.0.3" +name = "rustversion" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd" -dependencies = [ - "libc", - "wasi 0.11.0+wasi-snapshot-preview1", - "windows-sys 0.52.0", -] +checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" [[package]] -name = "multimap" -version = "0.10.0" +name = "ryu" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" +checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" [[package]] -name = "native-tls" -version = "0.2.14" +name = "salsa20" +version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" +checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213" dependencies = [ - "libc", - "log", - "openssl", - "openssl-probe", - "openssl-sys", - "schannel", - "security-framework", - "security-framework-sys", - "tempfile", + "cipher", ] [[package]] -name = "new_debug_unreachable" +name = "same-file" version = "1.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] [[package]] -name = "no-std-compat" -version = "0.4.1" +name = "schannel" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b93853da6d84c2e3c7d730d6473e8817692dd89be387eb01b94d7f108ecb5b8c" +checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d" +dependencies = [ + "windows-sys 0.59.0", +] [[package]] -name = "nonzero_ext" -version = "0.3.0" +name = "scopeguard" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38bf9645c8b145698bb0b18a4637dcacbc421ea49bef2317e4fd8065a387cf21" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] -name = "nu-ansi-term" -version = "0.46.0" +name = "scrypt" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +checksum = "0516a385866c09368f0b5bcd1caff3366aace790fcd46e2bb032697bb172fd1f" dependencies = [ - "overload", - "winapi", + "password-hash", + "pbkdf2 0.12.2", + "salsa20", + "sha2 0.10.8", ] [[package]] -name = "num-bigint" -version = "0.4.6" +name = "sct" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" +checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" dependencies = [ - "num-integer", - "num-traits", - "serde", + "ring", + "untrusted", ] [[package]] -name = "num-conv" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" - -[[package]] -name = "num-integer" -version = "0.1.46" +name = "sec1" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" dependencies = [ - "num-traits", + "base16ct", + "der", + "generic-array", + "pkcs8", + "subtle", + "zeroize", ] [[package]] -name = "num-traits" -version = "0.2.19" +name = "security-framework" +version = "3.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +checksum = "b3297343eaf830f66ede390ea39da1d462b6b0c1b000f420d0a83f898bbbe6ef" dependencies = [ - "autocfg", - "libm", + "bitflags", + "core-foundation", + "core-foundation-sys", + "libc", + "security-framework-sys", ] [[package]] -name = "num_cpus" -version = "1.16.0" +name = "security-framework-sys" +version = "2.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +checksum = "cc1f0cbffaac4852523ce30d8bd3c5cdc873501d96ff467ca09b6767bb8cd5c0" dependencies = [ - "hermit-abi 0.3.9", + "core-foundation-sys", "libc", ] [[package]] -name = "num_enum" -version = "0.7.3" +name = "semver" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" -dependencies = [ - "num_enum_derive", -] +checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" [[package]] -name = "num_enum_derive" -version = "0.7.3" +name = "seqlock" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" +checksum = "b5c67b6f14ecc5b86c66fa63d76b5092352678545a8a3cdae80aef5128371910" dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.101", + "parking_lot", ] [[package]] -name = "nybbles" -version = "0.3.4" +name = "serde" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8983bb634df7248924ee0c4c3a749609b5abcb082c28fffe3254b3eb3602b307" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" dependencies = [ - "alloy-rlp", - "const-hex", - "proptest", - "serde", - "smallvec", + "serde_core", + "serde_derive", ] [[package]] -name = "object" -version = "0.36.7" +name = "serde-big-array" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87" +checksum = "11fc7cc2c76d73e0f27ee52abbd64eec84d46f370c88371120433196934e4b7f" dependencies = [ - "memchr", + "serde", ] [[package]] -name = "once_cell" -version = "1.21.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" - -[[package]] -name = "oorandom" -version = "11.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e" - -[[package]] -name = "opaque-debug" -version = "0.3.1" +name = "serde_bytes" +version = "0.11.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" +checksum = "a5d440709e79d88e51ac01c4b72fc6cb7314017bb7da9eeff678aa94c10e3ea8" +dependencies = [ + "serde", + "serde_core", +] [[package]] -name = "open-fastrlp" -version = "0.1.4" +name = "serde_core" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "786393f80485445794f6043fd3138854dd109cc6c4bd1a6383db304c9ce9b9ce" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" dependencies = [ - "arrayvec", - "auto_impl", - "bytes", - "ethereum-types", - "open-fastrlp-derive", + "serde_derive", ] [[package]] -name = "open-fastrlp-derive" -version = "0.1.1" +name = "serde_derive" +version = "1.0.228" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "003b2be5c6c53c1cfeb0a238b8a1c3915cd410feb684457a36c10038f764bb1c" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ - "bytes", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.101", ] [[package]] -name = "openssl" -version = "0.10.72" +name = "serde_json" +version = "1.0.145" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fedfea7d58a1f73118430a55da6a286e7b044961736ce96a16a17068ea25e5da" +checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" dependencies = [ - "bitflags 2.9.0", - "cfg-if", - "foreign-types", - "libc", - "once_cell", - "openssl-macros", - "openssl-sys", + "itoa", + "memchr", + "ryu", + "serde", + "serde_core", ] [[package]] -name = "openssl-macros" -version = "0.1.1" +name = "serde_path_to_error" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" +checksum = "59fab13f937fa393d08645bf3a84bdfe86e296747b506ada67bb15f10f218b2a" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", + "itoa", + "serde", ] [[package]] -name = "openssl-probe" -version = "0.1.6" +name = "serde_urlencoded" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" +checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +dependencies = [ + "form_urlencoded", + "itoa", + "ryu", + "serde", +] [[package]] -name = "openssl-sys" -version = "0.9.107" +name = "serde_with" +version = "3.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8288979acd84749c744a9014b4382d42b8f7b2592847b5afb2ed29e5d16ede07" +checksum = "aa66c845eee442168b2c8134fec70ac50dc20e760769c8ba0ad1319ca1959b04" dependencies = [ - "cc", - "libc", - "pkg-config", - "vcpkg", + "serde_core", + "serde_with_macros", ] [[package]] -name = "opentelemetry" -version = "0.28.0" +name = "serde_with_macros" +version = "3.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "236e667b670a5cdf90c258f5a55794ec5ac5027e960c224bff8367a59e1e6426" +checksum = "b91a903660542fced4e99881aa481bdbaec1634568ee02e0b8bd57c64cb38955" dependencies = [ - "futures-core", - "futures-sink", - "js-sys", - "pin-project-lite", - "thiserror 2.0.12", - "tracing", + "darling", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "opentelemetry-http" -version = "0.28.0" +name = "serde_yaml" +version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8863faf2910030d139fb48715ad5ff2f35029fc5f244f6d5f689ddcf4d26253" +checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "async-trait", - "bytes", - "http 1.3.1", - "opentelemetry", - "reqwest 0.12.15", - "tracing", + "indexmap", + "itoa", + "ryu", + "serde", + "unsafe-libyaml", ] [[package]] -name = "opentelemetry-otlp" -version = "0.28.0" +name = "sha1" +version = "0.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bef114c6d41bea83d6dc60eb41720eedd0261a67af57b66dd2b84ac46c01d91" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" dependencies = [ - "async-trait", - "futures-core", - "http 1.3.1", - "opentelemetry", - "opentelemetry-http", - "opentelemetry-proto", - "opentelemetry_sdk", - "prost", - "reqwest 0.12.15", - "thiserror 2.0.12", - "tracing", + "cfg-if", + "cpufeatures", + "digest 0.10.7", ] [[package]] -name = "opentelemetry-proto" -version = "0.28.0" +name = "sha2" +version = "0.9.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56f8870d3024727e99212eb3bb1762ec16e255e3e6f58eeb3dc8db1aa226746d" +checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" dependencies = [ - "opentelemetry", - "opentelemetry_sdk", - "prost", - "tonic", + "block-buffer 0.9.0", + "cfg-if", + "cpufeatures", + "digest 0.9.0", + "opaque-debug", ] [[package]] -name = "opentelemetry_sdk" -version = "0.28.0" +name = "sha2" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84dfad6042089c7fc1f6118b7040dc2eb4ab520abbf410b79dc481032af39570" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" dependencies = [ - "async-trait", - "futures-channel", - "futures-executor", - "futures-util", - "glob", - "opentelemetry", - "percent-encoding", - "rand 0.8.5", - "serde_json", - "thiserror 2.0.12", - "tokio", - "tokio-stream", - "tracing", + "cfg-if", + "cpufeatures", + "digest 0.10.7", ] [[package]] -name = "option-ext" -version = "0.2.0" +name = "sha3" +version = "0.10.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" +checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" +dependencies = [ + "digest 0.10.7", + "keccak", +] [[package]] -name = "outref" -version = "0.5.2" +name = "sharded-slab" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +dependencies = [ + "lazy_static", +] [[package]] -name = "overload" -version = "0.1.1" +name = "shlex" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" [[package]] -name = "p256" -version = "0.13.2" +name = "signal-hook" +version = "0.3.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" +checksum = "d881a16cf4426aa584979d30bd82cb33429027e42122b169753d6ef1085ed6e2" dependencies = [ - "ecdsa", - "elliptic-curve", - "primeorder", - "sha2 0.10.8", + "libc", + "signal-hook-registry", ] [[package]] -name = "parity-scale-codec" -version = "3.7.4" +name = "signal-hook-registry" +version = "1.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9fde3d0718baf5bc92f577d652001da0f8d54cd03a7974e118d04fc888dc23d" +checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410" dependencies = [ - "arrayvec", - "bitvec", - "byte-slice-cast", - "const_format", - "impl-trait-for-tuples", - "parity-scale-codec-derive", - "rustversion", - "serde", + "libc", ] [[package]] -name = "parity-scale-codec-derive" -version = "3.7.4" +name = "signature" +version = "1.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" + +[[package]] +name = "signature" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "581c837bb6b9541ce7faa9377c20616e4fb7650f6b0f68bc93c827ee504fb7b3" +checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.101", + "digest 0.10.7", + "rand_core 0.6.4", ] [[package]] -name = "parking" -version = "2.2.1" +name = "siphasher" +version = "0.3.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" +checksum = "38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d" [[package]] -name = "parking_lot" -version = "0.12.3" +name = "siphasher" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" -dependencies = [ - "lock_api", - "parking_lot_core", -] +checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" [[package]] -name = "parking_lot_core" -version = "0.9.10" +name = "sized-chunks" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" +checksum = "16d69225bde7a69b235da73377861095455d298f2b970996eec25ddbb42b3d1e" dependencies = [ - "cfg-if", - "libc", - "redox_syscall", - "smallvec", - "windows-targets 0.52.6", + "bitmaps", + "typenum", ] [[package]] -name = "password-hash" -version = "0.4.2" +name = "slab" +version = "0.4.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7676374caaee8a325c9e7a2ae557f216c5563a171d6997b0ef8a65af35147700" -dependencies = [ - "base64ct", - "rand_core 0.6.4", - "subtle", -] +checksum = "7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589" [[package]] -name = "password-hash" -version = "0.5.0" +name = "smallvec" +version = "1.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166" -dependencies = [ - "base64ct", - "rand_core 0.6.4", - "subtle", -] +checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" [[package]] -name = "paste" -version = "1.0.15" +name = "socket2" +version = "0.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" +checksum = "4f5fd57c80058a56cf5c777ab8a126398ece8e442983605d280a44ce79d0edef" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] [[package]] -name = "path-slash" -version = "0.2.1" +name = "socket2" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e91099d4268b0e11973f036e885d652fb0b21fedcf69738c627f94db6a44f42" +checksum = "17129e116933cf371d018bb80ae557e889637989d8638274fb25622827b03881" +dependencies = [ + "libc", + "windows-sys 0.60.2", +] [[package]] -name = "pbkdf2" -version = "0.11.0" +name = "solana-account" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83a0692ec44e4cf1ef28ca317f14f8f07da2d95ec3fa01f86e4467b725e60917" +checksum = "014dcb9293341241dd153b35f89ea906e4170914f4a347a95e7fb07ade47cd6f" dependencies = [ - "digest 0.10.7", - "hmac", - "password-hash 0.4.2", - "sha2 0.10.8", + "bincode", + "serde", + "serde_bytes", + "serde_derive", + "solana-account-info", + "solana-clock", + "solana-instruction-error", + "solana-pubkey", + "solana-sdk-ids", + "solana-sysvar", ] [[package]] -name = "pbkdf2" -version = "0.12.2" +name = "solana-account-decoder-client-types" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8ed6a7761f76e3b9f92dfb0a60a6a6477c61024b775147ff0973a02653abaf2" +checksum = "a254419b647ca675bd0d55749c24a3383691a00e633e38ae58d070223ac01bf2" dependencies = [ - "digest 0.10.7", - "hmac", + "base64 0.22.1", + "bs58", + "serde", + "serde_derive", + "serde_json", + "solana-account", + "solana-pubkey", + "zstd", ] [[package]] -name = "pem" -version = "1.1.1" +name = "solana-account-info" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8" +checksum = "82f4691b69b172c687d218dd2f1f23fc7ea5e9aa79df9ac26dab3d8dd829ce48" dependencies = [ - "base64 0.13.1", + "bincode", + "serde", + "solana-program-error", + "solana-program-memory", + "solana-pubkey", ] [[package]] -name = "pem-rfc7468" -version = "0.7.0" +name = "solana-accounts-db" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" +checksum = "81e38e11de48b1f91fcf918bede16d56c961cdbb465dbd7d83d56ac45f4999f4" dependencies = [ - "base64ct", + "agave-io-uring", + "ahash 0.8.11", + "bincode", + "blake3", + "bv", + "bytemuck", + "bytemuck_derive", + "bzip2", + "crossbeam-channel", + "dashmap", + "indexmap", + "io-uring", + "itertools 0.12.1", + "libc", + "log", + "lz4", + "memmap2 0.9.9", + "modular-bitfield", + "num_cpus", + "num_enum", + "rand 0.8.5", + "rayon", + "seqlock", + "serde", + "serde_derive", + "slab", + "smallvec", + "solana-account", + "solana-address-lookup-table-interface", + "solana-bucket-map", + "solana-clock", + "solana-epoch-schedule", + "solana-fee-calculator", + "solana-genesis-config", + "solana-hash 3.1.0", + "solana-lattice-hash", + "solana-measure", + "solana-message", + "solana-metrics", + "solana-nohash-hasher", + "solana-pubkey", + "solana-rayon-threadlimit", + "solana-reward-info", + "solana-sha256-hasher", + "solana-slot-hashes", + "solana-svm-transaction", + "solana-system-interface", + "solana-sysvar", + "solana-time-utils", + "solana-transaction", + "solana-transaction-context", + "solana-transaction-error", + "spl-generic-token", + "static_assertions", + "tar", + "tempfile", + "thiserror 2.0.17", ] [[package]] -name = "percent-encoding" -version = "2.3.1" +name = "solana-address" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" +checksum = "a2ecac8e1b7f74c2baa9e774c42817e3e75b20787134b76cc4d45e8a604488f5" +dependencies = [ + "solana-address 2.0.0", +] [[package]] -name = "pest" -version = "2.8.0" +name = "solana-address" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "198db74531d58c70a361c42201efde7e2591e976d518caf7662a47dc5720e7b6" +checksum = "e37320fd2945c5d654b2c6210624a52d66c3f1f73b653ed211ab91a703b35bdd" dependencies = [ - "memchr", - "thiserror 2.0.12", - "ucd-trie", + "borsh", + "bytemuck", + "bytemuck_derive", + "curve25519-dalek 4.1.3", + "five8 1.0.0", + "five8_const", + "rand 0.8.5", + "serde", + "serde_derive", + "solana-atomic-u64", + "solana-define-syscall 4.0.1", + "solana-program-error", + "solana-sanitize", + "solana-sha256-hasher", ] [[package]] -name = "petgraph" -version = "0.6.5" +name = "solana-address-lookup-table-interface" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" +checksum = "e2f56cac5e70517a2f27d05e5100b20de7182473ffd0035b23ea273307905987" dependencies = [ - "fixedbitset 0.4.2", - "indexmap 2.9.0", + "bincode", + "bytemuck", + "serde", + "serde_derive", + "solana-clock", + "solana-instruction", + "solana-instruction-error", + "solana-pubkey", + "solana-sdk-ids", + "solana-slot-hashes", ] [[package]] -name = "petgraph" -version = "0.7.1" +name = "solana-atomic-u64" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772" +checksum = "a933ff1e50aff72d02173cfcd7511bd8540b027ee720b75f353f594f834216d0" dependencies = [ - "fixedbitset 0.5.7", - "indexmap 2.9.0", + "parking_lot", ] [[package]] -name = "pharos" -version = "0.5.3" +name = "solana-banks-client" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9567389417feee6ce15dd6527a8a1ecac205ef62c2932bcf3d9f6fc5b78b414" +checksum = "ac0c8780d1c4216925f72d28d809b172ab83466b687e8110154f39066e228c3d" dependencies = [ + "borsh", "futures", - "rustc_version 0.4.1", + "solana-account", + "solana-banks-interface", + "solana-clock", + "solana-commitment-config", + "solana-hash 3.1.0", + "solana-message", + "solana-program-pack", + "solana-pubkey", + "solana-rent", + "solana-signature", + "solana-sysvar", + "solana-transaction", + "solana-transaction-context", + "solana-transaction-error", + "tarpc", + "thiserror 2.0.17", + "tokio", + "tokio-serde", ] [[package]] -name = "phf" -version = "0.11.3" +name = "solana-banks-interface" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" +checksum = "0114282a0c18cdca6beae1d5cd9c92be7b8a2140aa92e3f0a2536f86303b05d8" dependencies = [ - "phf_macros", - "phf_shared", + "serde", + "serde_derive", + "solana-account", + "solana-clock", + "solana-commitment-config", + "solana-hash 3.1.0", + "solana-message", + "solana-pubkey", + "solana-signature", + "solana-transaction", + "solana-transaction-context", + "solana-transaction-error", + "tarpc", ] [[package]] -name = "phf_generator" -version = "0.11.3" +name = "solana-banks-server" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" +checksum = "2aa01a4c68080b6e91a4d236300612631185a5e0f421caacdf2e53f1ba74fb2a" dependencies = [ - "phf_shared", - "rand 0.8.5", + "agave-feature-set", + "bincode", + "crossbeam-channel", + "futures", + "solana-account", + "solana-banks-interface", + "solana-client", + "solana-clock", + "solana-commitment-config", + "solana-hash 3.1.0", + "solana-message", + "solana-pubkey", + "solana-runtime", + "solana-runtime-transaction", + "solana-send-transaction-service", + "solana-signature", + "solana-svm", + "solana-transaction", + "solana-transaction-error", + "tarpc", + "tokio", + "tokio-serde", ] [[package]] -name = "phf_macros" -version = "0.11.3" +name = "solana-big-mod-exp" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" +checksum = "30c80fb6d791b3925d5ec4bf23a7c169ef5090c013059ec3ed7d0b2c04efa085" dependencies = [ - "phf_generator", - "phf_shared", - "proc-macro2", - "quote", - "syn 2.0.101", + "num-bigint 0.4.6", + "num-traits", + "solana-define-syscall 3.0.0", ] [[package]] -name = "phf_shared" -version = "0.11.3" +name = "solana-bincode" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" +checksum = "534a37aecd21986089224d0c01006a75b96ac6fb2f418c24edc15baf0d2a4c99" dependencies = [ - "siphasher", + "bincode", + "serde", + "solana-instruction-error", ] [[package]] -name = "pin-project" -version = "1.1.10" +name = "solana-blake3-hasher" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a" +checksum = "ffa2e3bdac3339c6d0423275e45dafc5ac25f4d43bf344d026a3cc9a85e244a6" dependencies = [ - "pin-project-internal", + "blake3", + "solana-define-syscall 3.0.0", + "solana-hash 3.1.0", ] [[package]] -name = "pin-project-internal" -version = "1.1.10" +name = "solana-bn254" +version = "3.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" +checksum = "8d08583be08d2d5f19aa21efbb6fbdb968ba7fd0de74562441437a7d776772bf" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", + "ark-bn254 0.4.0", + "ark-ec 0.4.2", + "ark-ff 0.4.2", + "ark-serialize 0.4.2", + "bytemuck", + "solana-define-syscall 3.0.0", + "thiserror 2.0.17", ] [[package]] -name = "pin-project-lite" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" - -[[package]] -name = "pin-utils" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" - -[[package]] -name = "pkcs8" -version = "0.10.2" +name = "solana-borsh" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +checksum = "dc402b16657abbfa9991cd5cbfac5a11d809f7e7d28d3bb291baeb088b39060e" dependencies = [ - "der", - "spki", + "borsh", ] [[package]] -name = "pkg-config" -version = "0.3.32" +name = "solana-bpf-loader-program" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c" +checksum = "a5a2b7914cebd827003d2a1c21cc48bcad2c1857a9ec34656a2caa578707f53a" +dependencies = [ + "agave-syscalls", + "bincode", + "qualifier_attr", + "solana-account", + "solana-bincode", + "solana-clock", + "solana-instruction", + "solana-loader-v3-interface", + "solana-loader-v4-interface", + "solana-packet", + "solana-program-entrypoint", + "solana-program-runtime", + "solana-pubkey", + "solana-sbpf", + "solana-sdk-ids", + "solana-svm-feature-set", + "solana-svm-log-collector", + "solana-svm-measure", + "solana-svm-type-overrides", + "solana-system-interface", + "solana-transaction-context", +] [[package]] -name = "plotters" -version = "0.3.7" +name = "solana-bucket-map" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747" +checksum = "96189a1964ca8a8eba213ad3f81a88012a95b5e237aa0a4620b10259371e48a6" dependencies = [ - "num-traits", - "plotters-backend", - "plotters-svg", - "wasm-bindgen", - "web-sys", + "bv", + "bytemuck", + "bytemuck_derive", + "memmap2 0.9.9", + "modular-bitfield", + "num_enum", + "rand 0.8.5", + "solana-clock", + "solana-measure", + "solana-pubkey", + "tempfile", ] [[package]] -name = "plotters-backend" -version = "0.3.7" +name = "solana-builtins" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a" +checksum = "bf88128e19b680ac1dee682e3271e39d7176db8e2345c3fd19799f4e58889155" +dependencies = [ + "agave-feature-set", + "solana-bpf-loader-program", + "solana-compute-budget-program", + "solana-hash 3.1.0", + "solana-loader-v4-program", + "solana-program-runtime", + "solana-pubkey", + "solana-sdk-ids", + "solana-stake-program", + "solana-system-program", + "solana-vote-program", + "solana-zk-elgamal-proof-program", + "solana-zk-token-proof-program", +] [[package]] -name = "plotters-svg" -version = "0.3.7" +name = "solana-builtins-default-costs" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670" +checksum = "8ac0ed2127d61fa4be2978cf692a04106b1e868d9f700d63a7e5934330b8e061" dependencies = [ - "plotters-backend", + "agave-feature-set", + "ahash 0.8.11", + "log", + "solana-bpf-loader-program", + "solana-compute-budget-program", + "solana-loader-v4-program", + "solana-pubkey", + "solana-sdk-ids", + "solana-stake-program", + "solana-system-program", + "solana-vote-program", ] [[package]] -name = "poly1305" -version = "0.8.0" +name = "solana-client" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8159bd90725d2df49889a078b54f4f79e87f1f8a8444194cdca81d38f5393abf" +checksum = "f29482023b8e799e02b35bff330e1cbe963bd7e0cdd20eb1941bede9a66b944d" dependencies = [ - "cpufeatures", - "opaque-debug", - "universal-hash", + "async-trait", + "bincode", + "dashmap", + "futures", + "futures-util", + "indexmap", + "indicatif", + "log", + "quinn", + "rayon", + "solana-account", + "solana-client-traits", + "solana-commitment-config", + "solana-connection-cache", + "solana-epoch-info", + "solana-hash 3.1.0", + "solana-instruction", + "solana-keypair", + "solana-measure", + "solana-message", + "solana-pubkey", + "solana-pubsub-client", + "solana-quic-client", + "solana-quic-definitions", + "solana-rpc-client", + "solana-rpc-client-api", + "solana-rpc-client-nonce-utils", + "solana-signature", + "solana-signer", + "solana-streamer", + "solana-time-utils", + "solana-tpu-client", + "solana-transaction", + "solana-transaction-error", + "solana-transaction-status-client-types", + "solana-udp-client", + "thiserror 2.0.17", + "tokio", ] [[package]] -name = "portable-atomic" -version = "1.11.0" +name = "solana-client-traits" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "350e9b48cbc6b0e028b0473b114454c6316e57336ee184ceab6e53f72c178b3e" +checksum = "08618ed587e128105510c54ae3e456b9a06d674d8640db75afe66dad65cb4e02" +dependencies = [ + "solana-account", + "solana-commitment-config", + "solana-epoch-info", + "solana-hash 3.1.0", + "solana-instruction", + "solana-keypair", + "solana-message", + "solana-pubkey", + "solana-signature", + "solana-signer", + "solana-system-interface", + "solana-transaction", + "solana-transaction-error", +] [[package]] -name = "powerfmt" -version = "0.2.0" +name = "solana-clock" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" +checksum = "fb62e9381182459a4520b5fe7fb22d423cae736239a6427fc398a88743d0ed59" +dependencies = [ + "serde", + "serde_derive", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-sysvar-id", +] [[package]] -name = "ppv-lite86" -version = "0.2.21" +name = "solana-cluster-type" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9" +checksum = "eb7692fa6bf10a1a86b450c4775526f56d7e0e2116a53313f2533b5694abea64" dependencies = [ - "zerocopy 0.8.25", + "serde", + "serde_derive", + "solana-hash 3.1.0", ] [[package]] -name = "precomputed-hash" -version = "0.1.1" +name = "solana-commitment-config" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c" +checksum = "5fa5933a62dadb7d3ed35e6329de5cebb0678acc8f9cfdf413269084eeccc63f" +dependencies = [ + "serde", + "serde_derive", +] [[package]] -name = "prettyplease" -version = "0.2.32" +name = "solana-compute-budget" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "664ec5419c51e34154eec046ebcba56312d5a2fc3b09a06da188e1ad21afadf6" +checksum = "df3b2d4cca7050320d13653ab369e21a0573b4a4f5dd82c509b0640e87f34d84" dependencies = [ - "proc-macro2", - "syn 2.0.101", + "solana-fee-structure", + "solana-program-runtime", ] [[package]] -name = "primeorder" -version = "0.13.6" +name = "solana-compute-budget-instruction" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" +checksum = "0ac29452169f23259fa6c60ff4be6dd389d45458256a1d74efa62e22cc169f05" dependencies = [ - "elliptic-curve", + "agave-feature-set", + "log", + "solana-borsh", + "solana-builtins-default-costs", + "solana-compute-budget", + "solana-compute-budget-interface", + "solana-instruction", + "solana-packet", + "solana-pubkey", + "solana-sdk-ids", + "solana-svm-transaction", + "solana-transaction-error", + "thiserror 2.0.17", ] [[package]] -name = "primitive-types" -version = "0.12.2" +name = "solana-compute-budget-interface" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b34d9fd68ae0b74a41b21c03c2f62847aa0ffea044eee893b4c140b37e244e2" +checksum = "8292c436b269ad23cecc8b24f7da3ab07ca111661e25e00ce0e1d22771951ab9" dependencies = [ - "fixed-hash", - "impl-codec", - "impl-rlp", - "impl-serde", - "scale-info", - "uint", + "borsh", + "solana-instruction", + "solana-sdk-ids", ] [[package]] -name = "proc-macro-crate" -version = "3.3.0" +name = "solana-compute-budget-program" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35" +checksum = "d2c1993650e417ef1ee1fc9e81ef5d7704cee080a5cff0de429c2ce187b5a505" dependencies = [ - "toml_edit", + "solana-program-runtime", ] [[package]] -name = "proc-macro-error-attr2" +name = "solana-config-interface" version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" +checksum = "63e401ae56aed512821cc7a0adaa412ff97fecd2dff4602be7b1330d2daec0c4" dependencies = [ - "proc-macro2", - "quote", + "bincode", + "serde", + "serde_derive", + "solana-account", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", + "solana-short-vec", + "solana-system-interface", ] [[package]] -name = "proc-macro-error2" -version = "2.0.1" +name = "solana-connection-cache" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" +checksum = "0432922673ca595f778e1895497020291fdb59aa9098b5a93b99f132d439299f" dependencies = [ - "proc-macro-error-attr2", - "proc-macro2", - "quote", - "syn 2.0.101", + "async-trait", + "bincode", + "crossbeam-channel", + "futures-util", + "indexmap", + "log", + "rand 0.8.5", + "rayon", + "solana-keypair", + "solana-measure", + "solana-metrics", + "solana-time-utils", + "solana-transaction-error", + "thiserror 2.0.17", + "tokio", ] [[package]] -name = "proc-macro2" -version = "1.0.95" +name = "solana-cost-model" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778" +checksum = "377e2608100cf9d7ec21db895f67b9f0822471848a76374fe84065b9ece7f93c" dependencies = [ - "unicode-ident", + "agave-feature-set", + "ahash 0.8.11", + "log", + "solana-bincode", + "solana-borsh", + "solana-builtins-default-costs", + "solana-clock", + "solana-compute-budget", + "solana-compute-budget-instruction", + "solana-compute-budget-interface", + "solana-fee-structure", + "solana-metrics", + "solana-packet", + "solana-pubkey", + "solana-runtime-transaction", + "solana-sdk-ids", + "solana-svm-transaction", + "solana-system-interface", + "solana-transaction-error", + "solana-vote-program", +] + +[[package]] +name = "solana-cpi" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16238feb63d1cbdf915fb287f29ef7a7ebf81469bd6214f8b72a53866b593f8f" +dependencies = [ + "solana-account-info", + "solana-define-syscall 3.0.0", + "solana-instruction", + "solana-program-error", + "solana-pubkey", + "solana-stable-layout", ] [[package]] -name = "prometheus-client" -version = "0.22.3" +name = "solana-curve25519" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "504ee9ff529add891127c4827eb481bd69dc0ebc72e9a682e187db4caa60c3ca" +checksum = "be2ca224d51d8a1cc20f221706968d8f851586e6b05937cb518bedc156596dee" dependencies = [ - "dtoa", - "itoa", - "parking_lot", - "prometheus-client-derive-encode", + "bytemuck", + "bytemuck_derive", + "curve25519-dalek 4.1.3", + "solana-define-syscall 3.0.0", + "subtle", + "thiserror 2.0.17", ] [[package]] -name = "prometheus-client" -version = "0.23.1" +name = "solana-define-syscall" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf41c1a7c32ed72abe5082fb19505b969095c12da9f5732a4bc9878757fd087c" -dependencies = [ - "dtoa", - "itoa", - "parking_lot", - "prometheus-client-derive-encode", -] +checksum = "f9697086a4e102d28a156b8d6b521730335d6951bd39a5e766512bbe09007cee" [[package]] -name = "prometheus-client-derive-encode" -version = "0.4.2" +name = "solana-define-syscall" +version = "4.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", -] +checksum = "57e5b1c0bc1d4a4d10c88a4100499d954c09d3fecfae4912c1a074dff68b1738" [[package]] -name = "proptest" -version = "1.6.0" +name = "solana-derivation-path" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" +checksum = "ff71743072690fdbdfcdc37700ae1cb77485aaad49019473a81aee099b1e0b8c" dependencies = [ - "bit-set 0.8.0", - "bit-vec 0.8.0", - "bitflags 2.9.0", - "lazy_static", - "num-traits", - "rand 0.8.5", - "rand_chacha 0.3.1", - "rand_xorshift", - "regex-syntax 0.8.5", - "rusty-fork", - "tempfile", - "unarray", + "derivation-path", + "qstring", + "uriparse", ] [[package]] -name = "prost" -version = "0.13.5" +name = "solana-ed25519-program" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2796faa41db3ec313a31f7624d9286acf277b52de526150b7e69f3debf891ee5" +checksum = "e1419197f1c06abf760043f6d64ba9d79a03ad5a43f18c7586471937122094da" dependencies = [ - "bytes", - "prost-derive", + "bytemuck", + "bytemuck_derive", + "solana-instruction", + "solana-sdk-ids", ] [[package]] -name = "prost-build" -version = "0.13.5" +name = "solana-epoch-info" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be769465445e8c1474e9c5dac2018218498557af32d9ed057325ec9a41ae81bf" +checksum = "f8a6b69bd71386f61344f2bcf0f527f5fd6dd3b22add5880e2e1bf1dd1fa8059" dependencies = [ - "heck", - "itertools 0.14.0", - "log", - "multimap", - "once_cell", - "petgraph 0.7.1", - "prettyplease", - "prost", - "prost-types", - "regex", - "syn 2.0.101", - "tempfile", + "serde", + "serde_derive", ] [[package]] -name = "prost-derive" -version = "0.13.5" +name = "solana-epoch-rewards" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a56d757972c98b346a9b766e3f02746cde6dd1cd1d1d563472929fdd74bec4d" +checksum = "b319a4ed70390af911090c020571f0ff1f4ec432522d05ab89f5c08080381995" dependencies = [ - "anyhow", - "itertools 0.14.0", - "proc-macro2", - "quote", - "syn 2.0.101", + "serde", + "serde_derive", + "solana-hash 3.1.0", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-sysvar-id", ] [[package]] -name = "prost-types" -version = "0.13.5" +name = "solana-epoch-rewards-hasher" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52c2c1bf36ddb1a1c396b3601a3cec27c2462e45f07c386894ec3ccf5332bd16" +checksum = "e507099d0c2c5d7870c9b1848281ea67bbeee80d171ca85003ee5767994c9c38" dependencies = [ - "prost", + "siphasher 0.3.11", + "solana-hash 3.1.0", + "solana-pubkey", ] [[package]] -name = "quanta" -version = "0.12.5" +name = "solana-epoch-schedule" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bd1fe6824cea6538803de3ff1bc0cf3949024db3d43c9643024bfb33a807c0e" +checksum = "6e5481e72cc4d52c169db73e4c0cd16de8bc943078aac587ec4817a75cc6388f" dependencies = [ - "crossbeam-utils", - "libc", - "once_cell", - "raw-cpuid", - "wasi 0.11.0+wasi-snapshot-preview1", - "web-sys", - "winapi", + "serde", + "serde_derive", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-sysvar-id", ] [[package]] -name = "quick-error" -version = "1.2.3" +name = "solana-epoch-stake" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" +checksum = "fcc6693d0ea833b880514b9b88d95afb80b42762dca98b0712465d1fcbbcb89e" +dependencies = [ + "solana-define-syscall 3.0.0", + "solana-pubkey", +] [[package]] -name = "quinn" -version = "0.11.7" +name = "solana-example-mocks" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3bd15a6f2967aef83887dcb9fec0014580467e33720d073560cf015a5683012" +checksum = "978855d164845c1b0235d4b4d101cadc55373fffaf0b5b6cfa2194d25b2ed658" dependencies = [ - "bytes", - "cfg_aliases", - "pin-project-lite", - "quinn-proto", - "quinn-udp", - "rustc-hash", - "rustls 0.23.26", - "socket2", - "thiserror 2.0.12", - "tokio", - "tracing", - "web-time", + "serde", + "serde_derive", + "solana-address-lookup-table-interface", + "solana-clock", + "solana-hash 3.1.0", + "solana-instruction", + "solana-keccak-hasher", + "solana-message", + "solana-nonce", + "solana-pubkey", + "solana-sdk-ids", + "solana-system-interface", + "thiserror 2.0.17", ] [[package]] -name = "quinn-proto" -version = "0.11.11" +name = "solana-feature-gate-interface" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bcbafbbdbb0f638fe3f35f3c56739f77a8a1d070cb25603226c83339b391472b" +checksum = "7347ab62e6d47a82e340c865133795b394feea7c2b2771d293f57691c6544c3f" dependencies = [ - "bytes", - "getrandom 0.3.2", - "rand 0.9.1", - "ring 0.17.14", - "rustc-hash", - "rustls 0.23.26", - "rustls-pki-types", - "slab", - "thiserror 2.0.12", - "tinyvec", - "tracing", - "web-time", + "bincode", + "serde", + "serde_derive", + "solana-account", + "solana-account-info", + "solana-instruction", + "solana-program-error", + "solana-pubkey", + "solana-rent", + "solana-sdk-ids", + "solana-system-interface", ] [[package]] -name = "quinn-udp" -version = "0.5.11" +name = "solana-fee" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "541d0f57c6ec747a90738a52741d3221f7960e8ac2f0ff4b1a63680e033b4ab5" +checksum = "b438bf9ad402491785a4195bc1bc26ca6c01903ef19e94e6c12a8ac29f0267e8" dependencies = [ - "cfg_aliases", - "libc", - "once_cell", - "socket2", - "tracing", - "windows-sys 0.59.0", + "agave-feature-set", + "solana-fee-structure", + "solana-svm-transaction", ] [[package]] -name = "quote" -version = "1.0.40" +name = "solana-fee-calculator" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d" +checksum = "2a73cc03ca4bed871ca174558108835f8323e85917bb38b9c81c7af2ab853efe" dependencies = [ - "proc-macro2", + "log", + "serde", + "serde_derive", ] [[package]] -name = "r-efi" -version = "5.2.0" +name = "solana-fee-structure" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5" +checksum = "5e2abdb1223eea8ec64136f39cb1ffcf257e00f915c957c35c0dd9e3f4e700b0" +dependencies = [ + "serde", + "serde_derive", +] [[package]] -name = "radium" -version = "0.7.0" +name = "solana-genesis-config" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" - -[[package]] -name = "rand" -version = "0.8.5" +checksum = "749eccc960e85c9b33608450093d256006253e1cb436b8380e71777840a3f675" +dependencies = [ + "bincode", + "chrono", + "memmap2 0.5.10", + "serde", + "serde_derive", + "solana-account", + "solana-clock", + "solana-cluster-type", + "solana-epoch-schedule", + "solana-fee-calculator", + "solana-hash 3.1.0", + "solana-inflation", + "solana-keypair", + "solana-poh-config", + "solana-pubkey", + "solana-rent", + "solana-sdk-ids", + "solana-sha256-hasher", + "solana-shred-version", + "solana-signer", + "solana-time-utils", +] + +[[package]] +name = "solana-hard-forks" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +checksum = "0abacc4b66ce471f135f48f22facf75cbbb0f8a252fbe2c1e0aa59d5b203f519" dependencies = [ - "libc", - "rand_chacha 0.3.1", - "rand_core 0.6.4", "serde", + "serde_derive", ] [[package]] -name = "rand" -version = "0.9.1" +name = "solana-hash" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fbfd9d094a40bf3ae768db9361049ace4c0e04a4fd6b359518bd7b73a73dd97" +checksum = "337c246447142f660f778cf6cb582beba8e28deb05b3b24bfb9ffd7c562e5f41" dependencies = [ - "rand_chacha 0.9.0", - "rand_core 0.9.3", + "solana-hash 4.0.1", ] [[package]] -name = "rand_chacha" -version = "0.3.1" +name = "solana-hash" +version = "4.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +checksum = "6a5d48a6ee7b91fc7b998944ab026ed7b3e2fc8ee3bc58452644a86c2648152f" dependencies = [ - "ppv-lite86", - "rand_core 0.6.4", + "borsh", + "bytemuck", + "bytemuck_derive", + "five8 1.0.0", + "serde", + "serde_derive", + "solana-atomic-u64", + "solana-sanitize", ] [[package]] -name = "rand_chacha" -version = "0.9.0" +name = "solana-inflation" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" +checksum = "e92f37a14e7c660628752833250dd3dcd8e95309876aee751d7f8769a27947c6" dependencies = [ - "ppv-lite86", - "rand_core 0.9.3", + "serde", + "serde_derive", ] [[package]] -name = "rand_core" -version = "0.6.4" +name = "solana-instruction" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +checksum = "8df4e8fcba01d7efa647ed20a081c234475df5e11a93acb4393cc2c9a7b99bab" dependencies = [ - "getrandom 0.2.16", + "bincode", + "serde", + "serde_derive", + "solana-define-syscall 3.0.0", + "solana-instruction-error", + "solana-pubkey", ] [[package]] -name = "rand_core" -version = "0.9.3" +name = "solana-instruction-error" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" +checksum = "b1f0d483b8ae387178d9210e0575b666b05cdd4bd0f2f188128249f6e454d39d" dependencies = [ - "getrandom 0.3.2", + "num-traits", + "serde", + "serde_derive", + "solana-program-error", ] [[package]] -name = "rand_distr" -version = "0.4.3" +name = "solana-instructions-sysvar" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31" +checksum = "7ddf67876c541aa1e21ee1acae35c95c6fbc61119814bfef70579317a5e26955" dependencies = [ - "num-traits", - "rand 0.8.5", + "bitflags", + "solana-account-info", + "solana-instruction", + "solana-instruction-error", + "solana-program-error", + "solana-pubkey", + "solana-sanitize", + "solana-sdk-ids", + "solana-serialize-utils", + "solana-sysvar-id", ] [[package]] -name = "rand_xorshift" -version = "0.3.0" +name = "solana-keccak-hasher" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" +checksum = "57eebd3012946913c8c1b8b43cdf8a6249edb09c0b6be3604ae910332a3acd97" dependencies = [ - "rand_core 0.6.4", + "sha3", + "solana-define-syscall 3.0.0", + "solana-hash 3.1.0", ] [[package]] -name = "raw-cpuid" -version = "11.5.0" +name = "solana-keypair" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6df7ab838ed27997ba19a4664507e6f82b41fe6e20be42929332156e5e85146" +checksum = "952ed9074c12edd2060cb09c2a8c664303f4ab7f7056a407ac37dd1da7bdaa3e" dependencies = [ - "bitflags 2.9.0", + "ed25519-dalek 2.2.0", + "ed25519-dalek-bip32", + "five8 0.2.1", + "rand 0.8.5", + "solana-derivation-path", + "solana-pubkey", + "solana-seed-derivable", + "solana-seed-phrase", + "solana-signature", + "solana-signer", ] [[package]] -name = "rayon" -version = "1.10.0" +name = "solana-last-restart-slot" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +checksum = "dcda154ec827f5fc1e4da0af3417951b7e9b8157540f81f936c4a8b1156134d0" dependencies = [ - "either", - "rayon-core", + "serde", + "serde_derive", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-sysvar-id", ] [[package]] -name = "rayon-core" -version = "1.12.1" +name = "solana-lattice-hash" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +checksum = "30443bf8af65ad7ec2a7493d14e70b2d26b925fd0750fa9048a44a441b0a23bf" dependencies = [ - "crossbeam-deque", - "crossbeam-utils", + "base64 0.22.1", + "blake3", + "bs58", + "bytemuck", ] [[package]] -name = "recvmsg" -version = "1.0.0" +name = "solana-loader-v3-interface" +version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3edd4d5d42c92f0a659926464d4cce56b562761267ecf0f469d85b7de384175" +checksum = "dee44c9b1328c5c712c68966fb8de07b47f3e7bac006e74ddd1bb053d3e46e5d" +dependencies = [ + "serde", + "serde_bytes", + "serde_derive", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", + "solana-system-interface", +] [[package]] -name = "redox_syscall" -version = "0.5.11" +name = "solana-loader-v4-interface" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2f103c6d277498fbceb16e84d317e2a400f160f46904d5f5410848c829511a3" +checksum = "e4c948b33ff81fa89699911b207059e493defdba9647eaf18f23abdf3674e0fb" dependencies = [ - "bitflags 2.9.0", + "serde", + "serde_bytes", + "serde_derive", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", + "solana-system-interface", ] [[package]] -name = "redox_users" -version = "0.4.6" +name = "solana-loader-v4-program" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" +checksum = "4b4ce5ca27d4b16be527583738bac230fa0e62867e6c8b4bd6345cf09a3c941c" dependencies = [ - "getrandom 0.2.16", - "libredox", - "thiserror 1.0.69", + "log", + "qualifier_attr", + "solana-account", + "solana-bincode", + "solana-bpf-loader-program", + "solana-instruction", + "solana-loader-v3-interface", + "solana-loader-v4-interface", + "solana-packet", + "solana-program-runtime", + "solana-pubkey", + "solana-sbpf", + "solana-sdk-ids", + "solana-svm-log-collector", + "solana-svm-measure", + "solana-svm-type-overrides", + "solana-transaction-context", +] + +[[package]] +name = "solana-logger" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef7421d1092680d72065edbf5c7605856719b021bf5f173656c71febcdd5d003" +dependencies = [ + "env_logger", + "lazy_static", + "libc", + "log", + "signal-hook", ] [[package]] -name = "regex" -version = "1.11.1" +name = "solana-measure" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" +checksum = "ec1c31d6a2213afe934a46f61a2f7512d32dab05247efca046d0713fdc0c8a9e" + +[[package]] +name = "solana-message" +version = "3.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85666605c9fd727f865ed381665db0a8fc29f984a030ecc1e40f43bfb2541623" dependencies = [ - "aho-corasick", - "memchr", - "regex-automata 0.4.9", - "regex-syntax 0.8.5", + "bincode", + "blake3", + "lazy_static", + "serde", + "serde_derive", + "solana-address 1.1.0", + "solana-hash 3.1.0", + "solana-instruction", + "solana-sanitize", + "solana-sdk-ids", + "solana-short-vec", + "solana-transaction-error", ] [[package]] -name = "regex-automata" -version = "0.1.10" +name = "solana-metrics" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +checksum = "bb5c1cc9f378f38108827a50d7e7c988915c855378c99443728e852b5d3e5ee9" dependencies = [ - "regex-syntax 0.6.29", + "crossbeam-channel", + "gethostname", + "log", + "reqwest", + "solana-cluster-type", + "solana-sha256-hasher", + "solana-time-utils", + "thiserror 2.0.17", ] [[package]] -name = "regex-automata" -version = "0.4.9" +name = "solana-msg" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" +checksum = "264275c556ea7e22b9d3f87d56305546a38d4eee8ec884f3b126236cb7dcbbb4" dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax 0.8.5", + "solana-define-syscall 3.0.0", ] [[package]] -name = "regex-lite" -version = "0.1.6" +name = "solana-native-token" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53a49587ad06b26609c52e423de037e7f57f20d53535d66e08c695f347df952a" +checksum = "ae8dd4c280dca9d046139eb5b7a5ac9ad10403fbd64964c7d7571214950d758f" [[package]] -name = "regex-syntax" -version = "0.6.29" +name = "solana-net-utils" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" +checksum = "cccd09673923a9766a43d540eb10ed62e598582039178a71ec4ba9a7be237c83" +dependencies = [ + "anyhow", + "bincode", + "bytes", + "itertools 0.12.1", + "log", + "nix", + "rand 0.8.5", + "serde", + "serde_derive", + "socket2 0.6.1", + "solana-serde", + "tokio", + "url", +] [[package]] -name = "regex-syntax" -version = "0.8.5" +name = "solana-nohash-hasher" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" +checksum = "8b8a731ed60e89177c8a7ab05fe0f1511cedd3e70e773f288f9de33a9cfdc21e" [[package]] -name = "reqwest" -version = "0.11.27" +name = "solana-nonce" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd67538700a17451e7cba03ac727fb961abb7607553461627b97de0b89cf4a62" +checksum = "abbdc6c8caf1c08db9f36a50967539d0f72b9f1d4aea04fec5430f532e5afadc" dependencies = [ - "base64 0.21.7", - "bytes", - "encoding_rs", - "futures-core", - "futures-util", - "h2 0.3.26", - "http 0.2.12", - "http-body 0.4.6", - "hyper 0.14.32", - "hyper-rustls 0.24.2", - "ipnet", - "js-sys", - "log", - "mime", - "once_cell", - "percent-encoding", - "pin-project-lite", - "rustls 0.21.12", - "rustls-pemfile 1.0.4", "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper 0.1.2", - "system-configuration 0.5.1", - "tokio", - "tokio-rustls 0.24.1", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "webpki-roots 0.25.4", - "winreg", + "serde_derive", + "solana-fee-calculator", + "solana-hash 3.1.0", + "solana-pubkey", + "solana-sha256-hasher", +] + +[[package]] +name = "solana-nonce-account" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "805fd25b29e5a1a0e6c3dd6320c9da80f275fbe4ff6e392617c303a2085c435e" +dependencies = [ + "solana-account", + "solana-hash 3.1.0", + "solana-nonce", + "solana-sdk-ids", +] + +[[package]] +name = "solana-packet" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6edf2f25743c95229ac0fdc32f8f5893ef738dbf332c669e9861d33ddb0f469d" +dependencies = [ + "bincode", + "bitflags", + "cfg_eval", + "serde", + "serde_derive", + "serde_with", ] [[package]] -name = "reqwest" -version = "0.12.15" +name = "solana-perf" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d19c46a6fdd48bc4dab94b6103fccc55d34c67cc0ad04653aad4ea2a07cd7bbb" +checksum = "acd85605438c9eaae275815ae34c56e4dc2c1e35a4156d4fd66873a1045c382e" dependencies = [ - "base64 0.22.1", + "ahash 0.8.11", + "bincode", + "bv", "bytes", - "encoding_rs", - "futures-channel", - "futures-core", - "futures-util", - "h2 0.4.9", - "http 1.3.1", - "http-body 1.0.1", - "http-body-util", - "hyper 1.6.0", - "hyper-rustls 0.27.5", - "hyper-tls", - "hyper-util", - "ipnet", - "js-sys", + "caps", + "curve25519-dalek 4.1.3", + "dlopen2", + "fnv", + "libc", "log", - "mime", - "native-tls", - "once_cell", - "percent-encoding", - "pin-project-lite", - "quinn", - "rustls 0.23.26", - "rustls-pemfile 2.2.0", - "rustls-pki-types", + "nix", + "rand 0.8.5", + "rayon", "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper 1.0.2", - "system-configuration 0.6.1", - "tokio", - "tokio-native-tls", - "tokio-rustls 0.26.2", - "tower 0.5.2", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", - "webpki-roots 0.26.9", - "windows-registry", + "solana-hash 3.1.0", + "solana-message", + "solana-metrics", + "solana-packet", + "solana-pubkey", + "solana-rayon-threadlimit", + "solana-sdk-ids", + "solana-short-vec", + "solana-signature", + "solana-time-utils", ] [[package]] -name = "rfc6979" -version = "0.4.0" +name = "solana-poh-config" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" +checksum = "2f1fef1f2ff2480fdbcc64bef5e3c47bec6e1647270db88b43f23e3a55f8d9cf" dependencies = [ - "hmac", - "subtle", + "serde", + "serde_derive", ] [[package]] -name = "ring" -version = "0.16.20" +name = "solana-poseidon" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" +checksum = "794ff76c70d6f4c5d9c86c626069225c0066043405c0c9d6b96f00c8525dade5" dependencies = [ - "cc", - "libc", - "once_cell", - "spin", - "untrusted 0.7.1", - "web-sys", - "winapi", + "ark-bn254 0.4.0", + "light-poseidon", + "solana-define-syscall 3.0.0", + "thiserror 2.0.17", ] [[package]] -name = "ring" -version = "0.17.14" +name = "solana-precompile-error" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" +checksum = "cafcd950de74c6c39d55dc8ca108bbb007799842ab370ef26cf45a34453c31e1" dependencies = [ - "cc", - "cfg-if", - "getrandom 0.2.16", - "libc", - "untrusted 0.9.0", - "windows-sys 0.52.0", + "num-traits", ] [[package]] -name = "ripemd" -version = "0.1.3" +name = "solana-program" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91b12305dd81045d705f427acd0435a2e46444b65367d7179d7bdcfc3bc5f5eb" +dependencies = [ + "memoffset", + "solana-account-info", + "solana-big-mod-exp", + "solana-blake3-hasher", + "solana-clock", + "solana-cpi", + "solana-define-syscall 3.0.0", + "solana-epoch-rewards", + "solana-epoch-schedule", + "solana-epoch-stake", + "solana-example-mocks", + "solana-fee-calculator", + "solana-hash 3.1.0", + "solana-instruction", + "solana-instruction-error", + "solana-instructions-sysvar", + "solana-keccak-hasher", + "solana-last-restart-slot", + "solana-msg", + "solana-native-token", + "solana-program-entrypoint", + "solana-program-error", + "solana-program-memory", + "solana-program-option", + "solana-program-pack", + "solana-pubkey", + "solana-rent", + "solana-sdk-ids", + "solana-secp256k1-recover", + "solana-serde-varint", + "solana-serialize-utils", + "solana-sha256-hasher", + "solana-short-vec", + "solana-slot-hashes", + "solana-slot-history", + "solana-stable-layout", + "solana-sysvar", + "solana-sysvar-id", +] + +[[package]] +name = "solana-program-entrypoint" +version = "3.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6557cf5b5e91745d1667447438a1baa7823c6086e4ece67f8e6ebfa7a8f72660" +dependencies = [ + "solana-account-info", + "solana-define-syscall 3.0.0", + "solana-msg", + "solana-program-error", + "solana-pubkey", +] + +[[package]] +name = "solana-program-error" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd124222d17ad93a644ed9d011a40f4fb64aa54275c08cc216524a9ea82fb09f" +checksum = "a1af32c995a7b692a915bb7414d5f8e838450cf7c70414e763d8abcae7b51f28" dependencies = [ - "digest 0.10.7", + "serde", + "serde_derive", ] [[package]] -name = "rlp" -version = "0.5.2" +name = "solana-program-memory" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb919243f34364b6bd2fc10ef797edbfa75f33c252e7998527479c6d6b47e1ec" +checksum = "10e5660c60749c7bfb30b447542529758e4dbcecd31b1e8af1fdc92e2bdde90a" dependencies = [ - "bytes", - "rlp-derive", - "rustc-hex", + "solana-define-syscall 3.0.0", ] [[package]] -name = "rlp-derive" -version = "0.1.0" +name = "solana-program-option" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e33d7b2abe0c340d8797fe2907d3f20d3b5ea5908683618bfe80df7f621f672a" +checksum = "8e7b4ddb464f274deb4a497712664c3b612e3f5f82471d4e47710fc4ab1c3095" + +[[package]] +name = "solana-program-pack" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c169359de21f6034a63ebf96d6b380980307df17a8d371344ff04a883ec4e9d0" dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", + "solana-program-error", ] [[package]] -name = "ruint" -version = "1.14.0" +name = "solana-program-runtime" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78a46eb779843b2c4f21fac5773e25d6d5b7c8f0922876c91541790d2ca27eef" +checksum = "8d6ec3fec9e5f8c01aa76e0d63911af6acb4ee840b6f7ec5ddee284552c0de60" dependencies = [ - "alloy-rlp", - "ark-ff 0.3.0", - "ark-ff 0.4.2", - "bytes", - "fastrlp 0.3.1", - "fastrlp 0.4.0", - "num-bigint", - "num-integer", - "num-traits", - "parity-scale-codec", - "primitive-types", - "proptest", + "base64 0.22.1", + "bincode", + "itertools 0.12.1", + "log", + "percentage", "rand 0.8.5", - "rand 0.9.1", - "rlp", - "ruint-macro", "serde", - "valuable", - "zeroize", + "solana-account", + "solana-clock", + "solana-epoch-rewards", + "solana-epoch-schedule", + "solana-fee-structure", + "solana-hash 3.1.0", + "solana-instruction", + "solana-last-restart-slot", + "solana-program-entrypoint", + "solana-pubkey", + "solana-rent", + "solana-sbpf", + "solana-sdk-ids", + "solana-slot-hashes", + "solana-stake-interface", + "solana-svm-callback", + "solana-svm-feature-set", + "solana-svm-log-collector", + "solana-svm-measure", + "solana-svm-timings", + "solana-svm-transaction", + "solana-svm-type-overrides", + "solana-system-interface", + "solana-sysvar", + "solana-sysvar-id", + "solana-transaction-context", +] + +[[package]] +name = "solana-program-test" +version = "3.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d828f0e8ff75dd2b745206ee4b965613a6f0caf7f502fc70d7c3e627abde46ff" +dependencies = [ + "agave-feature-set", + "assert_matches", + "async-trait", + "base64 0.22.1", + "bincode", + "chrono-humanize", + "crossbeam-channel", + "log", + "serde", + "solana-account", + "solana-account-info", + "solana-accounts-db", + "solana-banks-client", + "solana-banks-interface", + "solana-banks-server", + "solana-clock", + "solana-cluster-type", + "solana-commitment-config", + "solana-compute-budget", + "solana-epoch-rewards", + "solana-epoch-schedule", + "solana-fee-calculator", + "solana-genesis-config", + "solana-hash 3.1.0", + "solana-instruction", + "solana-keypair", + "solana-loader-v3-interface", + "solana-logger", + "solana-message", + "solana-msg", + "solana-native-token", + "solana-poh-config", + "solana-program-entrypoint", + "solana-program-error", + "solana-program-runtime", + "solana-pubkey", + "solana-rent", + "solana-runtime", + "solana-sbpf", + "solana-sdk-ids", + "solana-signer", + "solana-stable-layout", + "solana-stake-interface", + "solana-svm", + "solana-svm-log-collector", + "solana-svm-timings", + "solana-system-interface", + "solana-sysvar", + "solana-sysvar-id", + "solana-transaction", + "solana-transaction-context", + "solana-transaction-error", + "solana-vote-program", + "spl-generic-token", + "thiserror 2.0.17", + "tokio", ] [[package]] -name = "ruint-macro" -version = "1.2.1" +name = "solana-pubkey" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" +checksum = "8909d399deb0851aa524420beeb5646b115fd253ef446e35fe4504c904da3941" +dependencies = [ + "rand 0.8.5", + "solana-address 1.1.0", +] [[package]] -name = "rust-bls-bn254" -version = "0.2.1" +name = "solana-pubsub-client" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84ab37c09dbee7ec3b610ecd703c6a79708aef66d52052ee7bfec0bbb9e7a8cd" +checksum = "1dc18dc70532b72eaa8df04683560b99b7177d1fea29f2f5bf3a4a79796df425" dependencies = [ - "aes", - "ark-bn254", - "ark-ec", - "ark-ff 0.5.0", - "ark-serialize 0.5.0", - "ark-std 0.5.0", - "ctr", - "hex", - "hkdf", - "num-bigint", - "num-traits", - "pbkdf2 0.12.2", - "rand 0.8.5", - "scrypt 0.11.0", + "crossbeam-channel", + "futures-util", + "http 0.2.12", + "log", + "semver", "serde", + "serde_derive", "serde_json", - "sha2 0.10.8", - "thiserror 1.0.69", - "unicode-normalization", - "uuid 0.8.2", + "solana-account-decoder-client-types", + "solana-clock", + "solana-pubkey", + "solana-rpc-client-types", + "solana-signature", + "thiserror 2.0.17", + "tokio", + "tokio-stream", + "tokio-tungstenite", + "tungstenite", + "url", ] [[package]] -name = "rustc-demangle" -version = "0.1.24" +name = "solana-quic-client" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" +checksum = "831453427ac891cba2eaa30051a8a1f1c0a7c8eb9d283cc75ee09ce16245d007" +dependencies = [ + "async-lock", + "async-trait", + "futures", + "itertools 0.12.1", + "log", + "quinn", + "quinn-proto", + "rustls 0.23.35", + "solana-connection-cache", + "solana-keypair", + "solana-measure", + "solana-metrics", + "solana-net-utils", + "solana-pubkey", + "solana-quic-definitions", + "solana-rpc-client-api", + "solana-signer", + "solana-streamer", + "solana-tls-utils", + "solana-transaction-error", + "thiserror 2.0.17", + "tokio", +] [[package]] -name = "rustc-hash" -version = "2.1.1" +name = "solana-quic-definitions" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" +checksum = "15319accf7d3afd845817aeffa6edd8cc185f135cefbc6b985df29cfd8c09609" +dependencies = [ + "solana-keypair", +] [[package]] -name = "rustc-hex" -version = "2.1.0" +name = "solana-rayon-threadlimit" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e75f6a532d0fd9f7f13144f392b6ad56a32696bfcd9c78f797f16bbb6f072d6" +checksum = "d977cc0f8132e2f7c317a03bc8cec328a4eacccba231cf12d7624bb97cb39ae3" +dependencies = [ + "log", + "num_cpus", +] [[package]] -name = "rustc_version" -version = "0.3.3" +name = "solana-rent" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee" +checksum = "b702d8c43711e3c8a9284a4f1bbc6a3de2553deb25b0c8142f9a44ef0ce5ddc1" dependencies = [ - "semver 0.11.0", + "serde", + "serde_derive", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-sysvar-id", ] [[package]] -name = "rustc_version" -version = "0.4.1" +name = "solana-reward-info" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" +checksum = "82be7946105c2ee6be9f9ee7bd18a068b558389221d29efa92b906476102bfcc" dependencies = [ - "semver 1.0.26", + "serde", + "serde_derive", ] [[package]] -name = "rustix" -version = "1.0.5" +name = "solana-rpc-client" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d97817398dd4bb2e6da002002db259209759911da105da92bec29ccb12cf58bf" +checksum = "2cc97cd8bbbe8fb74a76b2812629dae284e6f5446f7e84a98c3f854e4dc2621b" dependencies = [ - "bitflags 2.9.0", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.59.0", + "async-trait", + "base64 0.22.1", + "bincode", + "bs58", + "futures", + "indicatif", + "log", + "reqwest", + "reqwest-middleware", + "semver", + "serde", + "serde_derive", + "serde_json", + "solana-account", + "solana-account-decoder-client-types", + "solana-clock", + "solana-commitment-config", + "solana-epoch-info", + "solana-epoch-schedule", + "solana-feature-gate-interface", + "solana-hash 3.1.0", + "solana-instruction", + "solana-message", + "solana-pubkey", + "solana-rpc-client-api", + "solana-signature", + "solana-transaction", + "solana-transaction-error", + "solana-transaction-status-client-types", + "solana-version", + "solana-vote-interface", + "tokio", ] [[package]] -name = "rustls" -version = "0.21.12" +name = "solana-rpc-client-api" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" +checksum = "26e5f5a813f457dff5a66dfe83eaa7e0e766be5251fc99922e9f2e48a2ebca2e" +dependencies = [ + "anyhow", + "jsonrpc-core", + "reqwest", + "reqwest-middleware", + "serde", + "serde_derive", + "serde_json", + "solana-account-decoder-client-types", + "solana-clock", + "solana-rpc-client-types", + "solana-signer", + "solana-transaction-error", + "solana-transaction-status-client-types", + "thiserror 2.0.17", +] + +[[package]] +name = "solana-rpc-client-nonce-utils" +version = "3.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9902af67012d1e92b4a737e26329ae17c4678b5322ed841aa0018bfcfd7a033" +dependencies = [ + "solana-account", + "solana-commitment-config", + "solana-hash 3.1.0", + "solana-message", + "solana-nonce", + "solana-pubkey", + "solana-rpc-client", + "solana-sdk-ids", + "thiserror 2.0.17", +] + +[[package]] +name = "solana-rpc-client-types" +version = "3.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a6d3a5969b7ccd2863012fa06daa35e152e264181d24b5153b974351faa9c40" dependencies = [ + "base64 0.22.1", + "bs58", + "semver", + "serde", + "serde_derive", + "serde_json", + "solana-account", + "solana-account-decoder-client-types", + "solana-clock", + "solana-commitment-config", + "solana-fee-calculator", + "solana-inflation", + "solana-pubkey", + "solana-transaction-error", + "solana-transaction-status-client-types", + "solana-version", + "spl-generic-token", + "thiserror 2.0.17", +] + +[[package]] +name = "solana-runtime" +version = "3.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a3e92c3f0652c772afd524d91119b70a4163bbf3449cf867444cb0efbdc3c0ed" +dependencies = [ + "agave-feature-set", + "agave-precompiles", + "agave-reserved-account-keys", + "agave-syscalls", + "ahash 0.8.11", + "aquamarine", + "arc-swap", + "arrayref", + "assert_matches", + "base64 0.22.1", + "bincode", + "blake3", + "bv", + "bytemuck", + "crossbeam-channel", + "dashmap", + "dir-diff", + "fnv", + "im", + "itertools 0.12.1", + "libc", "log", - "ring 0.17.14", - "rustls-webpki 0.101.7", - "sct", + "lz4", + "memmap2 0.9.9", + "mockall", + "modular-bitfield", + "num-derive", + "num-traits", + "num_cpus", + "num_enum", + "percentage", + "qualifier_attr", + "rand 0.8.5", + "rayon", + "regex", + "serde", + "serde_derive", + "serde_json", + "serde_with", + "solana-account", + "solana-account-info", + "solana-accounts-db", + "solana-address-lookup-table-interface", + "solana-bpf-loader-program", + "solana-bucket-map", + "solana-builtins", + "solana-client-traits", + "solana-clock", + "solana-cluster-type", + "solana-commitment-config", + "solana-compute-budget", + "solana-compute-budget-instruction", + "solana-compute-budget-interface", + "solana-cost-model", + "solana-cpi", + "solana-ed25519-program", + "solana-epoch-info", + "solana-epoch-rewards-hasher", + "solana-epoch-schedule", + "solana-feature-gate-interface", + "solana-fee", + "solana-fee-calculator", + "solana-fee-structure", + "solana-genesis-config", + "solana-hard-forks", + "solana-hash 3.1.0", + "solana-inflation", + "solana-instruction", + "solana-keypair", + "solana-lattice-hash", + "solana-loader-v3-interface", + "solana-loader-v4-interface", + "solana-measure", + "solana-message", + "solana-metrics", + "solana-native-token", + "solana-nohash-hasher", + "solana-nonce", + "solana-nonce-account", + "solana-packet", + "solana-perf", + "solana-poh-config", + "solana-precompile-error", + "solana-program-runtime", + "solana-pubkey", + "solana-rayon-threadlimit", + "solana-rent", + "solana-reward-info", + "solana-runtime-transaction", + "solana-sdk-ids", + "solana-secp256k1-program", + "solana-seed-derivable", + "solana-serde", + "solana-sha256-hasher", + "solana-signature", + "solana-signer", + "solana-slot-hashes", + "solana-slot-history", + "solana-stake-interface", + "solana-stake-program", + "solana-svm", + "solana-svm-callback", + "solana-svm-timings", + "solana-svm-transaction", + "solana-system-interface", + "solana-system-transaction", + "solana-sysvar", + "solana-sysvar-id", + "solana-time-utils", + "solana-transaction", + "solana-transaction-context", + "solana-transaction-error", + "solana-transaction-status-client-types", + "solana-unified-scheduler-logic", + "solana-version", + "solana-vote", + "solana-vote-interface", + "solana-vote-program", + "spl-generic-token", + "static_assertions", + "strum", + "strum_macros", + "symlink", + "tar", + "tempfile", + "thiserror 2.0.17", + "zstd", ] [[package]] -name = "rustls" -version = "0.23.26" +name = "solana-runtime-transaction" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df51b5869f3a441595eac5e8ff14d486ff285f7b8c0df8770e49c3b56351f0f0" +checksum = "eefe5fab5fd673124acd1445b25e69a86a35b4cc06c21f41d15e2c6389120ff0" dependencies = [ - "once_cell", - "ring 0.17.14", - "rustls-pki-types", - "rustls-webpki 0.103.1", - "subtle", - "zeroize", + "agave-transaction-view", + "log", + "solana-compute-budget", + "solana-compute-budget-instruction", + "solana-hash 3.1.0", + "solana-message", + "solana-pubkey", + "solana-sdk-ids", + "solana-signature", + "solana-svm-transaction", + "solana-transaction", + "solana-transaction-error", + "thiserror 2.0.17", ] [[package]] -name = "rustls-pemfile" -version = "1.0.4" +name = "solana-sanitize" +version = "3.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dcf09694a0fc14e5ffb18f9b7b7c0f15ecb6eac5b5610bf76a1853459d19daf9" + +[[package]] +name = "solana-sbpf" +version = "0.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" +checksum = "0f224d906c14efc7ed7f42bc5fe9588f3f09db8cabe7f6023adda62a69678e1a" dependencies = [ - "base64 0.21.7", + "byteorder", + "combine 3.8.1", + "hash32", + "libc", + "log", + "rand 0.8.5", + "rustc-demangle", + "thiserror 2.0.17", + "winapi", ] [[package]] -name = "rustls-pemfile" -version = "2.2.0" +name = "solana-sdk-ids" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" +checksum = "b1b6d6aaf60669c592838d382266b173881c65fb1cdec83b37cb8ce7cb89f9ad" dependencies = [ - "rustls-pki-types", + "solana-pubkey", ] [[package]] -name = "rustls-pki-types" -version = "1.11.0" +name = "solana-sdk-macro" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "917ce264624a4b4db1c364dcc35bfca9ded014d0a958cd47ad3e960e988ea51c" +checksum = "d6430000e97083460b71d9fbadc52a2ab2f88f53b3a4c5e58c5ae3640a0e8c00" dependencies = [ - "web-time", + "bs58", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "rustls-webpki" -version = "0.101.7" +name = "solana-secp256k1-program" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" +checksum = "8efa767b0188f577edae7080e8bf080e5db9458e2b6ee5beaa73e2e6bb54e99d" dependencies = [ - "ring 0.17.14", - "untrusted 0.9.0", + "digest 0.10.7", + "k256", + "serde", + "serde_derive", + "sha3", + "solana-signature", ] [[package]] -name = "rustls-webpki" -version = "0.103.1" +name = "solana-secp256k1-recover" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fef8b8769aaccf73098557a87cd1816b4f9c7c16811c9c77142aa695c16f2c03" +checksum = "394a4470477d66296af5217970a905b1c5569032a7732c367fb69e5666c8607e" dependencies = [ - "ring 0.17.14", - "rustls-pki-types", - "untrusted 0.9.0", + "k256", + "solana-define-syscall 3.0.0", + "thiserror 2.0.17", ] [[package]] -name = "rustversion" -version = "1.0.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eded382c5f5f786b989652c49544c4877d9f015cc22e145a5ea8ea66c2921cd2" - -[[package]] -name = "rusty-fork" -version = "0.3.0" +name = "solana-secp256r1-program" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f" +checksum = "445d8e12592631d76fc4dc57858bae66c9fd7cc838c306c62a472547fc9d0ce6" dependencies = [ - "fnv", - "quick-error", - "tempfile", - "wait-timeout", + "bytemuck", + "openssl", + "solana-instruction", + "solana-sdk-ids", ] [[package]] -name = "ryu" -version = "1.0.20" +name = "solana-security-txt" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +checksum = "468aa43b7edb1f9b7b7b686d5c3aeb6630dc1708e86e31343499dd5c4d775183" [[package]] -name = "salsa20" -version = "0.10.2" +name = "solana-seed-derivable" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213" +checksum = "ff7bdb72758e3bec33ed0e2658a920f1f35dfb9ed576b951d20d63cb61ecd95c" dependencies = [ - "cipher", + "solana-derivation-path", ] [[package]] -name = "same-file" -version = "1.0.6" +name = "solana-seed-phrase" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +checksum = "dc905b200a95f2ea9146e43f2a7181e3aeb55de6bc12afb36462d00a3c7310de" dependencies = [ - "winapi-util", + "hmac 0.12.1", + "pbkdf2 0.11.0", + "sha2 0.10.8", ] [[package]] -name = "scale-info" -version = "2.11.6" +name = "solana-send-transaction-service" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "346a3b32eba2640d17a9cb5927056b08f3de90f65b72fe09402c2ad07d684d0b" +checksum = "9a9ef499f45da422018cb8d9274d7bb10b71115d728f10edc8352a5d79c7359b" dependencies = [ - "cfg-if", - "derive_more 1.0.0", - "parity-scale-codec", - "scale-info-derive", + "async-trait", + "crossbeam-channel", + "itertools 0.12.1", + "log", + "solana-client", + "solana-clock", + "solana-connection-cache", + "solana-hash 3.1.0", + "solana-keypair", + "solana-measure", + "solana-metrics", + "solana-nonce-account", + "solana-pubkey", + "solana-quic-definitions", + "solana-runtime", + "solana-signature", + "solana-time-utils", + "solana-tpu-client-next", + "tokio", + "tokio-util 0.7.17", ] [[package]] -name = "scale-info-derive" -version = "2.11.6" +name = "solana-serde" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6630024bf739e2179b91fb424b28898baf819414262c5d376677dbff1fe7ebf" +checksum = "709a93cab694c70f40b279d497639788fc2ccbcf9b4aa32273d4b361322c02dd" dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.101", + "serde", ] [[package]] -name = "schannel" -version = "0.1.27" +name = "solana-serde-varint" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d" +checksum = "3e5174c57d5ff3c1995f274d17156964664566e2cde18a07bba1586d35a70d3b" dependencies = [ - "windows-sys 0.59.0", + "serde", ] [[package]] -name = "schnellru" -version = "0.2.4" +name = "solana-serialize-utils" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "356285bbf17bea63d9e52e96bd18f039672ac92b55b8cb997d6162a2a37d1649" +checksum = "56e41dd8feea239516c623a02f0a81c2367f4b604d7965237fed0751aeec33ed" dependencies = [ - "ahash", - "cfg-if", - "hashbrown 0.13.2", + "solana-instruction-error", + "solana-pubkey", + "solana-sanitize", ] [[package]] -name = "scopeguard" -version = "1.2.0" +name = "solana-sha256-hasher" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" +checksum = "b2ab77481366a966f895abbc11896d4803d285d258281a992ca89aca3ed0658c" +dependencies = [ + "sha2 0.10.8", + "solana-define-syscall 3.0.0", + "solana-hash 3.1.0", +] [[package]] -name = "scrypt" -version = "0.10.0" +name = "solana-short-vec" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f9e24d2b632954ded8ab2ef9fea0a0c769ea56ea98bddbafbad22caeeadf45d" +checksum = "b69d029da5428fc1c57f7d49101b2077c61f049d4112cd5fb8456567cc7d2638" dependencies = [ - "hmac", - "pbkdf2 0.11.0", - "salsa20", - "sha2 0.10.8", + "serde", ] [[package]] -name = "scrypt" -version = "0.11.0" +name = "solana-shred-version" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0516a385866c09368f0b5bcd1caff3366aace790fcd46e2bb032697bb172fd1f" +checksum = "94953e22ca28fe4541a3447d6baeaf519cc4ddc063253bfa673b721f34c136bb" dependencies = [ - "password-hash 0.5.0", - "pbkdf2 0.12.2", - "salsa20", - "sha2 0.10.8", + "solana-hard-forks", + "solana-hash 3.1.0", + "solana-sha256-hasher", ] [[package]] -name = "sct" -version = "0.7.1" +name = "solana-signature" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" +checksum = "4bb8057cc0e9f7b5e89883d49de6f407df655bb6f3a71d0b7baf9986a2218fd9" dependencies = [ - "ring 0.17.14", - "untrusted 0.9.0", + "ed25519-dalek 2.2.0", + "five8 0.2.1", + "serde", + "serde-big-array", + "serde_derive", + "solana-sanitize", ] [[package]] -name = "sec1" -version = "0.7.3" +name = "solana-signer" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" +checksum = "5bfea97951fee8bae0d6038f39a5efcb6230ecdfe33425ac75196d1a1e3e3235" dependencies = [ - "base16ct", - "der", - "generic-array", - "pkcs8", - "serdect", - "subtle", - "zeroize", + "solana-pubkey", + "solana-signature", + "solana-transaction-error", ] [[package]] -name = "security-framework" -version = "2.11.1" +name = "solana-slot-hashes" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" +checksum = "80a293f952293281443c04f4d96afd9d547721923d596e92b4377ed2360f1746" dependencies = [ - "bitflags 2.9.0", - "core-foundation", - "core-foundation-sys", - "libc", - "security-framework-sys", + "serde", + "serde_derive", + "solana-hash 3.1.0", + "solana-sdk-ids", + "solana-sysvar-id", ] [[package]] -name = "security-framework-sys" -version = "2.14.0" +name = "solana-slot-history" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32" +checksum = "f914f6b108f5bba14a280b458d023e3621c9973f27f015a4d755b50e88d89e97" dependencies = [ - "core-foundation-sys", - "libc", + "bv", + "serde", + "serde_derive", + "solana-sdk-ids", + "solana-sysvar-id", ] [[package]] -name = "semver" -version = "0.11.0" +name = "solana-stable-layout" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" +checksum = "1da74507795b6e8fb60b7c7306c0c36e2c315805d16eaaf479452661234685ac" dependencies = [ - "semver-parser", + "solana-instruction", + "solana-pubkey", ] [[package]] -name = "semver" -version = "1.0.26" +name = "solana-stake-interface" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0" +checksum = "f6f912ae679b683365348dea482dbd9468d22ff258b554fd36e3d3683c2122e3" dependencies = [ + "num-traits", "serde", + "serde_derive", + "solana-clock", + "solana-cpi", + "solana-instruction", + "solana-program-error", + "solana-pubkey", + "solana-system-interface", + "solana-sysvar", + "solana-sysvar-id", ] [[package]] -name = "semver-parser" -version = "0.10.3" +name = "solana-stake-program" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9900206b54a3527fdc7b8a938bffd94a568bac4f4aa8113b209df75a09c0dec2" +checksum = "06f174d24c78d8874c4c28cb855bfe87f720c7e40362ea1b856c4a65abdc6209" dependencies = [ - "pest", + "agave-feature-set", + "bincode", + "log", + "solana-account", + "solana-bincode", + "solana-clock", + "solana-config-interface", + "solana-genesis-config", + "solana-instruction", + "solana-native-token", + "solana-packet", + "solana-program-runtime", + "solana-pubkey", + "solana-rent", + "solana-sdk-ids", + "solana-stake-interface", + "solana-svm-log-collector", + "solana-svm-type-overrides", + "solana-sysvar", + "solana-transaction-context", + "solana-vote-interface", +] + +[[package]] +name = "solana-streamer" +version = "3.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93b8636508e20281a495a33b213f2e19c6b6828419d5c2daa3766411355144e3" +dependencies = [ + "arc-swap", + "async-channel", + "bytes", + "crossbeam-channel", + "dashmap", + "futures", + "futures-util", + "governor", + "histogram", + "indexmap", + "itertools 0.12.1", + "libc", + "log", + "nix", + "num_cpus", + "pem", + "percentage", + "quinn", + "quinn-proto", + "rand 0.8.5", + "rustls 0.23.35", + "smallvec", + "socket2 0.6.1", + "solana-keypair", + "solana-measure", + "solana-metrics", + "solana-net-utils", + "solana-packet", + "solana-perf", + "solana-pubkey", + "solana-quic-definitions", + "solana-signature", + "solana-signer", + "solana-time-utils", + "solana-tls-utils", + "solana-transaction-error", + "solana-transaction-metrics-tracker", + "thiserror 2.0.17", + "tokio", + "tokio-util 0.7.17", + "x509-parser", ] [[package]] -name = "send_wrapper" -version = "0.4.0" +name = "solana-svm" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f638d531eccd6e23b980caf34876660d38e265409d8e99b397ab71eb3612fad0" +checksum = "0ef1ffa2586ff7023f6dde1b8fd0523557938ef08ac0b7c19b092da2eea6e834" +dependencies = [ + "ahash 0.8.11", + "log", + "percentage", + "serde", + "serde_derive", + "solana-account", + "solana-clock", + "solana-fee-structure", + "solana-hash 3.1.0", + "solana-instruction", + "solana-instructions-sysvar", + "solana-loader-v3-interface", + "solana-loader-v4-interface", + "solana-loader-v4-program", + "solana-message", + "solana-nonce", + "solana-nonce-account", + "solana-program-entrypoint", + "solana-program-pack", + "solana-program-runtime", + "solana-pubkey", + "solana-rent", + "solana-sdk-ids", + "solana-svm-callback", + "solana-svm-feature-set", + "solana-svm-log-collector", + "solana-svm-measure", + "solana-svm-timings", + "solana-svm-transaction", + "solana-svm-type-overrides", + "solana-system-interface", + "solana-sysvar-id", + "solana-transaction-context", + "solana-transaction-error", + "spl-generic-token", + "thiserror 2.0.17", +] + +[[package]] +name = "solana-svm-callback" +version = "3.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d2211ecefc92a3d6db1206eca32aa579bb112eb1a2823ac227d8cbd5cdb0465" +dependencies = [ + "solana-account", + "solana-clock", + "solana-precompile-error", + "solana-pubkey", +] + +[[package]] +name = "solana-svm-feature-set" +version = "3.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a35cded5bc9e32d84c98d81bb9811239d3aea03d0f5ef09aa2f1e8cdaf2d0ff" + +[[package]] +name = "solana-svm-log-collector" +version = "3.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "455455f9ef91bb738c2363284cd8b6f5956726b0a366ab85976dca23ee1611a4" +dependencies = [ + "log", +] [[package]] -name = "send_wrapper" -version = "0.6.0" +name = "solana-svm-measure" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73" +checksum = "3e3c0ecb1caf08e9d70e41ca99bb18550e05e9a40dce8866fd1c360e67fa78c5" [[package]] -name = "serde" -version = "1.0.219" +name = "solana-svm-timings" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6" +checksum = "62606f820fe99b72ee8e26b8e20eed3c2ccc2f6e3146f537c4cb22a442c69170" dependencies = [ - "serde_derive", + "eager", + "enum-iterator", + "solana-pubkey", ] [[package]] -name = "serde_derive" -version = "1.0.219" +name = "solana-svm-transaction" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00" +checksum = "336583f8418964f7050b98996e13151857995604fe057c0d8f2f3512a16d3a8b" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.101", + "solana-hash 3.1.0", + "solana-message", + "solana-pubkey", + "solana-sdk-ids", + "solana-signature", + "solana-transaction", ] [[package]] -name = "serde_json" -version = "1.0.140" +name = "solana-svm-type-overrides" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373" +checksum = "f802b43ced1f9c6a2bf3b8c740dd43e194f33b3c98a6b3e3d0f989f632ec3ccc" dependencies = [ - "itoa", - "memchr", - "ryu", - "serde", + "rand 0.8.5", ] [[package]] -name = "serde_path_to_error" -version = "0.1.17" +name = "solana-system-interface" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59fab13f937fa393d08645bf3a84bdfe86e296747b506ada67bb15f10f218b2a" +checksum = "4e1790547bfc3061f1ee68ea9d8dc6c973c02a163697b24263a8e9f2e6d4afa2" dependencies = [ - "itoa", + "num-traits", "serde", + "serde_derive", + "solana-instruction", + "solana-msg", + "solana-program-error", + "solana-pubkey", ] [[package]] -name = "serde_spanned" -version = "0.6.8" +name = "solana-system-program" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" +checksum = "b4c68c4e74ea2d55e59cab3346781156c456850a781f07cb6bc0fdbd52fba55b" dependencies = [ + "bincode", + "log", "serde", -] - -[[package]] -name = "serde_urlencoded" -version = "0.7.1" + "serde_derive", + "solana-account", + "solana-bincode", + "solana-fee-calculator", + "solana-instruction", + "solana-nonce", + "solana-nonce-account", + "solana-packet", + "solana-program-runtime", + "solana-pubkey", + "solana-sdk-ids", + "solana-svm-log-collector", + "solana-svm-type-overrides", + "solana-system-interface", + "solana-sysvar", + "solana-transaction-context", +] + +[[package]] +name = "solana-system-transaction" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +checksum = "a31b5699ec533621515e714f1533ee6b3b0e71c463301d919eb59b8c1e249d30" dependencies = [ - "form_urlencoded", - "itoa", - "ryu", - "serde", + "solana-hash 3.1.0", + "solana-keypair", + "solana-message", + "solana-pubkey", + "solana-signer", + "solana-system-interface", + "solana-transaction", ] [[package]] -name = "serde_with" -version = "3.12.0" +name = "solana-sysvar" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6b6f7f2fcb69f747921f79f3926bd1e203fce4fef62c268dd3abfb6d86029aa" +checksum = "63205e68d680bcc315337dec311b616ab32fea0a612db3b883ce4de02e0953f9" dependencies = [ "base64 0.22.1", - "chrono", - "hex", - "indexmap 1.9.3", - "indexmap 2.9.0", + "bincode", + "bytemuck", + "bytemuck_derive", + "lazy_static", "serde", "serde_derive", - "serde_json", - "serde_with_macros", - "time", -] - -[[package]] -name = "serde_with_macros" -version = "3.12.0" + "solana-account-info", + "solana-clock", + "solana-define-syscall 3.0.0", + "solana-epoch-rewards", + "solana-epoch-schedule", + "solana-fee-calculator", + "solana-hash 3.1.0", + "solana-instruction", + "solana-last-restart-slot", + "solana-program-entrypoint", + "solana-program-error", + "solana-program-memory", + "solana-pubkey", + "solana-rent", + "solana-sdk-ids", + "solana-sdk-macro", + "solana-slot-hashes", + "solana-slot-history", + "solana-sysvar-id", +] + +[[package]] +name = "solana-sysvar-id" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d00caa5193a3c8362ac2b73be6b9e768aa5a4b2f721d8f4b339600c3cb51f8e" +checksum = "5051bc1a16d5d96a96bc33b5b2ec707495c48fe978097bdaba68d3c47987eb32" dependencies = [ - "darling", - "proc-macro2", - "quote", - "syn 2.0.101", + "solana-pubkey", + "solana-sdk-ids", ] [[package]] -name = "serde_yaml" -version = "0.9.34+deprecated" +name = "solana-time-utils" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" -dependencies = [ - "indexmap 2.9.0", - "itoa", - "ryu", - "serde", - "unsafe-libyaml", -] +checksum = "0ced92c60aa76ec4780a9d93f3bd64dfa916e1b998eacc6f1c110f3f444f02c9" [[package]] -name = "serdect" -version = "0.2.0" +name = "solana-tls-utils" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a84f14a19e9a014bb9f4512488d9829a68e04ecabffb0f9904cd1ace94598177" +checksum = "213b0b783dc59c113821478ab18da70b7b143ef69b194b7975fcdda20372130c" dependencies = [ - "base16ct", - "serde", + "rustls 0.23.35", + "solana-keypair", + "solana-pubkey", + "solana-signer", + "x509-parser", ] [[package]] -name = "sha1" -version = "0.10.6" +name = "solana-tpu-client" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +checksum = "eebf10061d061815585f32ea318e6dc71aa253dde5c4ad527bd973b71656c0b4" dependencies = [ - "cfg-if", - "cpufeatures", - "digest 0.10.7", + "async-trait", + "bincode", + "futures-util", + "indexmap", + "indicatif", + "log", + "rayon", + "solana-client-traits", + "solana-clock", + "solana-commitment-config", + "solana-connection-cache", + "solana-epoch-schedule", + "solana-measure", + "solana-message", + "solana-net-utils", + "solana-pubkey", + "solana-pubsub-client", + "solana-quic-definitions", + "solana-rpc-client", + "solana-rpc-client-api", + "solana-signature", + "solana-signer", + "solana-transaction", + "solana-transaction-error", + "thiserror 2.0.17", + "tokio", ] [[package]] -name = "sha2" -version = "0.9.9" +name = "solana-tpu-client-next" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" +checksum = "8091cd93c843a7a7d3496002590aea8796b7c5f55ffc03d34746fc0674804286" dependencies = [ - "block-buffer 0.9.0", - "cfg-if", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", + "async-trait", + "log", + "lru", + "quinn", + "rustls 0.23.35", + "solana-clock", + "solana-connection-cache", + "solana-keypair", + "solana-measure", + "solana-metrics", + "solana-quic-definitions", + "solana-rpc-client", + "solana-streamer", + "solana-time-utils", + "solana-tls-utils", + "solana-tpu-client", + "thiserror 2.0.17", + "tokio", + "tokio-util 0.7.17", ] [[package]] -name = "sha2" -version = "0.10.8" +name = "solana-transaction" +version = "3.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +checksum = "64928e6af3058dcddd6da6680cbe08324b4e071ad73115738235bbaa9e9f72a5" dependencies = [ - "cfg-if", - "cpufeatures", - "digest 0.10.7", + "bincode", + "serde", + "serde_derive", + "solana-address 1.1.0", + "solana-hash 3.1.0", + "solana-instruction", + "solana-instruction-error", + "solana-message", + "solana-sanitize", + "solana-sdk-ids", + "solana-short-vec", + "solana-signature", + "solana-signer", + "solana-transaction-error", ] [[package]] -name = "sha3" -version = "0.10.8" +name = "solana-transaction-context" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75872d278a8f37ef87fa0ddbda7802605cb18344497949862c0d4dcb291eba60" +checksum = "f9c6820c3a14bd07b2256640bd64af4a44ac49f505dca93cc11f77bc79cfd44a" dependencies = [ - "digest 0.10.7", - "keccak", + "bincode", + "serde", + "serde_derive", + "solana-account", + "solana-instruction", + "solana-instructions-sysvar", + "solana-pubkey", + "solana-rent", + "solana-sbpf", + "solana-sdk-ids", ] [[package]] -name = "sha3-asm" -version = "0.1.4" +name = "solana-transaction-error" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c28efc5e327c837aa837c59eae585fc250715ef939ac32881bcc11677cd02d46" +checksum = "4222065402340d7e6aec9dc3e54d22992ddcf923d91edcd815443c2bfca3144a" dependencies = [ - "cc", - "cfg-if", + "serde", + "serde_derive", + "solana-instruction-error", + "solana-sanitize", ] [[package]] -name = "sharded-slab" -version = "0.1.7" +name = "solana-transaction-metrics-tracker" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +checksum = "f80e292c487f87712db7962dbe648054e362c37bd5dbdc7d28efcfc4d9ef1217" dependencies = [ - "lazy_static", + "base64 0.22.1", + "bincode", + "log", + "rand 0.8.5", + "solana-packet", + "solana-perf", + "solana-short-vec", + "solana-signature", ] [[package]] -name = "shlex" -version = "1.3.0" +name = "solana-transaction-status-client-types" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" +checksum = "42333c56ebbbaab0a354c0a5ad621c0640b136e4ba0db3ba56d12b0500b27071" +dependencies = [ + "base64 0.22.1", + "bincode", + "bs58", + "serde", + "serde_derive", + "serde_json", + "solana-account-decoder-client-types", + "solana-commitment-config", + "solana-instruction", + "solana-message", + "solana-pubkey", + "solana-reward-info", + "solana-signature", + "solana-transaction", + "solana-transaction-context", + "solana-transaction-error", + "thiserror 2.0.17", +] [[package]] -name = "signal-hook-registry" -version = "1.4.5" +name = "solana-udp-client" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9203b8055f63a2a00e2f593bb0510367fe707d7ff1e5c872de2f537b339e5410" +checksum = "f25cf8797c360193e9500aa8c96fa969cd27ac5f4a03928616bb45acedda391a" dependencies = [ - "libc", + "async-trait", + "solana-connection-cache", + "solana-keypair", + "solana-net-utils", + "solana-streamer", + "solana-transaction-error", + "thiserror 2.0.17", + "tokio", ] [[package]] -name = "signature" -version = "2.2.0" +name = "solana-unified-scheduler-logic" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +checksum = "9151a3f80cb570d848fe8ff2985d2e8f84df49b832a9434ed255065c5e670e9c" dependencies = [ - "digest 0.10.7", - "rand_core 0.6.4", + "assert_matches", + "solana-pubkey", + "solana-runtime-transaction", + "solana-transaction", + "static_assertions", + "unwrap_none", ] [[package]] -name = "simple_asn1" -version = "0.6.3" +name = "solana-version" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "297f631f50729c8c99b84667867963997ec0b50f32b2a7dbcab828ef0541e8bb" +checksum = "44177fea32b10c8b9f3c19ba13ea21c5abc163d1cfb7a134fe16449f13f7c5b2" dependencies = [ - "num-bigint", - "num-traits", - "thiserror 2.0.12", - "time", + "agave-feature-set", + "rand 0.8.5", + "semver", + "serde", + "serde_derive", + "solana-sanitize", + "solana-serde-varint", ] [[package]] -name = "siphasher" -version = "1.0.1" +name = "solana-vote" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d" - -[[package]] -name = "slab" -version = "0.4.9" +checksum = "073d95f8c00bc11ec692d3b3ce896f84e16e9ac107f32a73c9b2224d84b5fced" +dependencies = [ + "itertools 0.12.1", + "log", + "serde", + "serde_derive", + "solana-account", + "solana-bincode", + "solana-clock", + "solana-hash 3.1.0", + "solana-instruction", + "solana-keypair", + "solana-packet", + "solana-pubkey", + "solana-sdk-ids", + "solana-serialize-utils", + "solana-signature", + "solana-signer", + "solana-svm-transaction", + "solana-transaction", + "solana-vote-interface", + "thiserror 2.0.17", +] + +[[package]] +name = "solana-vote-interface" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +checksum = "66631ddbe889dab5ec663294648cd1df395ec9df7a4476e7b3e095604cfdb539" dependencies = [ - "autocfg", + "bincode", + "cfg_eval", + "num-derive", + "num-traits", + "serde", + "serde_derive", + "serde_with", + "solana-clock", + "solana-hash 3.1.0", + "solana-instruction", + "solana-instruction-error", + "solana-pubkey", + "solana-rent", + "solana-sdk-ids", + "solana-serde-varint", + "solana-serialize-utils", + "solana-short-vec", + "solana-system-interface", ] [[package]] -name = "smallvec" -version = "1.15.0" +name = "solana-vote-program" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8917285742e9f3e1683f0a9c4e6b57960b7314d0b08d30d1ecd426713ee2eee9" +checksum = "76271ecc50cdb46fd4c792f9d6078e60d1e2fb6ac2e21e3134085f9bf4159554" dependencies = [ + "agave-feature-set", + "bincode", + "log", + "num-derive", + "num-traits", "serde", + "serde_derive", + "solana-account", + "solana-bincode", + "solana-clock", + "solana-epoch-schedule", + "solana-hash 3.1.0", + "solana-instruction", + "solana-keypair", + "solana-packet", + "solana-program-runtime", + "solana-pubkey", + "solana-rent", + "solana-sdk-ids", + "solana-signer", + "solana-slot-hashes", + "solana-transaction", + "solana-transaction-context", + "solana-vote-interface", + "thiserror 2.0.17", +] + +[[package]] +name = "solana-zk-elgamal-proof-program" +version = "3.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "27a10e5f73160da55ab35471443edfaa551503514571cc63c34a4d0a10b0ff45" +dependencies = [ + "agave-feature-set", + "bytemuck", + "num-derive", + "num-traits", + "solana-instruction", + "solana-program-runtime", + "solana-sdk-ids", + "solana-svm-log-collector", + "solana-zk-sdk", ] [[package]] -name = "socket2" -version = "0.5.9" +name = "solana-zk-sdk" +version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f5fd57c80058a56cf5c777ab8a126398ece8e442983605d280a44ce79d0edef" +checksum = "9602bcb1f7af15caef92b91132ec2347e1c51a72ecdbefdaefa3eac4b8711475" dependencies = [ - "libc", - "windows-sys 0.52.0", + "aes-gcm-siv", + "base64 0.22.1", + "bincode", + "bytemuck", + "bytemuck_derive", + "curve25519-dalek 4.1.3", + "getrandom 0.2.16", + "itertools 0.12.1", + "js-sys", + "merlin", + "num-derive", + "num-traits", + "rand 0.8.5", + "serde", + "serde_derive", + "serde_json", + "sha3", + "solana-derivation-path", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", + "solana-seed-derivable", + "solana-seed-phrase", + "solana-signature", + "solana-signer", + "subtle", + "thiserror 2.0.17", + "wasm-bindgen", + "zeroize", ] [[package]] -name = "solang-parser" -version = "0.3.3" +name = "solana-zk-token-proof-program" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c425ce1c59f4b154717592f0bdf4715c3a1d55058883622d3157e1f0908a5b26" +checksum = "f48e57c79397d1c2bc34a5de7600ed09aad047958f1d36ba4aee4cb6993a5b01" dependencies = [ - "itertools 0.11.0", - "lalrpop", - "lalrpop-util", - "phf", - "thiserror 1.0.69", - "unicode-xid", + "agave-feature-set", + "bytemuck", + "num-derive", + "num-traits", + "solana-instruction", + "solana-program-runtime", + "solana-sdk-ids", + "solana-svm-log-collector", + "solana-zk-token-sdk", ] [[package]] -name = "spin" -version = "0.5.2" +name = "solana-zk-token-sdk" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" +checksum = "ef89a6d71457129ed9686cd24018b86c10de0c07697b6b6a572fd0bbcb9bed94" +dependencies = [ + "aes-gcm-siv", + "base64 0.22.1", + "bincode", + "bytemuck", + "bytemuck_derive", + "curve25519-dalek 4.1.3", + "itertools 0.12.1", + "merlin", + "num-derive", + "num-traits", + "rand 0.8.5", + "serde", + "serde_derive", + "serde_json", + "sha3", + "solana-curve25519", + "solana-derivation-path", + "solana-instruction", + "solana-pubkey", + "solana-sdk-ids", + "solana-seed-derivable", + "solana-seed-phrase", + "solana-signature", + "solana-signer", + "subtle", + "thiserror 2.0.17", + "zeroize", +] [[package]] name = "spinning_top" @@ -7782,77 +8173,83 @@ dependencies = [ ] [[package]] -name = "stable_deref_trait" -version = "1.2.0" +name = "spl-associated-token-account-interface" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" +checksum = "e6433917b60441d68d99a17e121d9db0ea15a9a69c0e5afa34649cf5ba12612f" +dependencies = [ + "solana-instruction", + "solana-pubkey", +] [[package]] -name = "static_assertions" -version = "1.1.0" +name = "spl-generic-token" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" +checksum = "233df81b75ab99b42f002b5cdd6e65a7505ffa930624f7096a7580a56765e9cf" +dependencies = [ + "bytemuck", + "solana-pubkey", +] [[package]] -name = "string_cache" -version = "0.8.9" +name = "spl-token-interface" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf776ba3fa74f83bf4b63c3dcbbf82173db2632ed8452cb2d891d33f459de70f" +checksum = "8c564ac05a7c8d8b12e988a37d82695b5ba4db376d07ea98bc4882c81f96c7f3" dependencies = [ - "new_debug_unreachable", - "parking_lot", - "phf_shared", - "precomputed-hash", + "arrayref", + "bytemuck", + "num-derive", + "num-traits", + "num_enum", + "solana-instruction", + "solana-program-error", + "solana-program-option", + "solana-program-pack", + "solana-pubkey", + "solana-sdk-ids", + "thiserror 2.0.17", ] [[package]] -name = "strsim" -version = "0.11.1" +name = "stable_deref_trait" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" +checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] -name = "strum" -version = "0.26.3" +name = "static_assertions" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" -dependencies = [ - "strum_macros 0.26.4", -] +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" [[package]] -name = "strum" -version = "0.27.1" +name = "strsim" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f64def088c51c9510a8579e3c5d67c65349dcf755e5479ad3d010aa6454e2c32" -dependencies = [ - "strum_macros 0.27.1", -] +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] -name = "strum_macros" -version = "0.26.4" +name = "strum" +version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" dependencies = [ - "heck", - "proc-macro2", - "quote", - "rustversion", - "syn 2.0.101", + "strum_macros", ] [[package]] name = "strum_macros" -version = "0.27.1" +version = "0.24.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c77a8c5abcaf0f9ce05d62342b7d298c346515365c36b673df4ebe3ced01fde8" +checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" dependencies = [ - "heck", + "heck 0.4.1", "proc-macro2", "quote", "rustversion", - "syn 2.0.101", + "syn 1.0.109", ] [[package]] @@ -7868,24 +8265,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "734676eb262c623cec13c3155096e08d1f8f29adce39ba17948b18dad1e54142" [[package]] -name = "svm-rs" -version = "0.3.5" +name = "symlink" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11297baafe5fa0c99d5722458eac6a5e25c01eb1b8e5cd137f54079093daa7a4" -dependencies = [ - "dirs", - "fs2", - "hex", - "once_cell", - "reqwest 0.11.27", - "semver 1.0.26", - "serde", - "serde_json", - "sha2 0.10.8", - "thiserror 1.0.69", - "url", - "zip", -] +checksum = "a7973cce6668464ea31f176d85b13c7ab3bba2cb3b77a2ed26abd7801688010a" [[package]] name = "syn" @@ -7909,24 +8292,6 @@ dependencies = [ "unicode-ident", ] -[[package]] -name = "syn-solidity" -version = "0.8.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4560533fbd6914b94a8fb5cc803ed6801c3455668db3b810702c57612bac9412" -dependencies = [ - "paste", - "proc-macro2", - "quote", - "syn 2.0.101", -] - -[[package]] -name = "sync_wrapper" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" - [[package]] name = "sync_wrapper" version = "1.0.2" @@ -7938,68 +8303,78 @@ dependencies = [ [[package]] name = "synstructure" -version = "0.13.1" +version = "0.12.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +checksum = "f36bdaa60a83aca3921b5259d5400cbf5e90fc51931376a9bd4a0eb79aa7210f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.101", + "syn 1.0.109", + "unicode-xid", ] [[package]] -name = "system-configuration" -version = "0.5.1" +name = "synstructure" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3a3adc5c275d719af8cb4272ea1c4a6d668a777f37e115f6d11ddbc1c8e0e7" +checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ - "bitflags 1.3.2", - "core-foundation", - "system-configuration-sys 0.5.0", + "proc-macro2", + "quote", + "syn 2.0.101", ] [[package]] -name = "system-configuration" -version = "0.6.1" +name = "tar" +version = "0.4.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" +checksum = "1d863878d212c87a19c1a610eb53bb01fe12951c0501cf5a0d65f724914a667a" dependencies = [ - "bitflags 2.9.0", - "core-foundation", - "system-configuration-sys 0.6.0", + "filetime", + "libc", + "xattr", ] [[package]] -name = "system-configuration-sys" -version = "0.5.0" +name = "tarpc" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +checksum = "1c38a012bed6fb9681d3bf71ffaa4f88f3b4b9ed3198cda6e4c8462d24d4bb80" dependencies = [ - "core-foundation-sys", - "libc", + "anyhow", + "fnv", + "futures", + "humantime", + "opentelemetry 0.17.0", + "pin-project", + "rand 0.8.5", + "serde", + "static_assertions", + "tarpc-plugins", + "thiserror 1.0.69", + "tokio", + "tokio-serde", + "tokio-util 0.6.10", + "tracing", + "tracing-opentelemetry 0.17.4", ] [[package]] -name = "system-configuration-sys" -version = "0.6.0" +name = "tarpc-plugins" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" +checksum = "0ee42b4e559f17bce0385ebf511a7beb67d5cc33c12c96b7f4e9789919d9c10f" dependencies = [ - "core-foundation-sys", - "libc", + "proc-macro2", + "quote", + "syn 1.0.109", ] -[[package]] -name = "tap" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" - [[package]] name = "tempfile" -version = "3.19.1" +version = "3.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7437ac7763b9b123ccf33c338a5cc1bac6f69b45a136c19bdd8a65e3916435bf" +checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16" dependencies = [ "fastrand", "getrandom 0.3.2", @@ -8009,15 +8384,10 @@ dependencies = [ ] [[package]] -name = "term" -version = "0.7.0" +name = "termtree" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f" -dependencies = [ - "dirs-next", - "rustversion", - "winapi", -] +checksum = "8f50febec83f5ee1df3015341d8bd429f2d1cc62bcba7ea2076759d315084683" [[package]] name = "thiserror" @@ -8030,11 +8400,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.12" +version = "2.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "567b8a2dae586314f7be2a752ec7474332959c6460e02bde30d702a66d488708" +checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8" dependencies = [ - "thiserror-impl 2.0.12", + "thiserror-impl 2.0.17", ] [[package]] @@ -8050,9 +8420,9 @@ dependencies = [ [[package]] name = "thiserror-impl" -version = "2.0.12" +version = "2.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d" +checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" dependencies = [ "proc-macro2", "quote", @@ -8109,15 +8479,6 @@ dependencies = [ "time-core", ] -[[package]] -name = "tiny-keccak" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" -dependencies = [ - "crunchy", -] - [[package]] name = "tinystr" version = "0.7.6" @@ -8155,43 +8516,32 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.44.2" +version = "1.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6b88822cbe49de4185e3a4cbf8321dd487cf5fe0c5c65695fef6346371e9c48" +checksum = "ff360e02eab121e0bc37a2d3b4d4dc622e6eda3a8e5253d5435ecf5bd4c68408" dependencies = [ - "backtrace", "bytes", "libc", "mio", "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2", + "socket2 0.6.1", "tokio-macros", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] name = "tokio-macros" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" +checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" dependencies = [ "proc-macro2", "quote", "syn 2.0.101", ] -[[package]] -name = "tokio-native-tls" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" -dependencies = [ - "native-tls", - "tokio", -] - [[package]] name = "tokio-rustls" version = "0.24.1" @@ -8208,10 +8558,26 @@ version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b" dependencies = [ - "rustls 0.23.26", + "rustls 0.23.35", "tokio", ] +[[package]] +name = "tokio-serde" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "911a61637386b789af998ee23f50aa30d5fd7edcec8d6d3dedae5e5815205466" +dependencies = [ + "bincode", + "bytes", + "educe 0.4.23", + "futures-core", + "futures-sink", + "pin-project", + "serde", + "serde_json", +] + [[package]] name = "tokio-stream" version = "0.1.17" @@ -8221,7 +8587,6 @@ dependencies = [ "futures-core", "pin-project-lite", "tokio", - "tokio-util", ] [[package]] @@ -8235,47 +8600,30 @@ dependencies = [ "rustls 0.21.12", "tokio", "tokio-rustls 0.24.1", - "tungstenite 0.20.1", + "tungstenite", "webpki-roots 0.25.4", ] [[package]] -name = "tokio-tungstenite" -version = "0.24.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edc5f74e248dc973e0dbb7b74c7e0d6fcc301c694ff50049504004ef4d0cdcd9" -dependencies = [ - "futures-util", - "log", - "rustls 0.23.26", - "rustls-pki-types", - "tokio", - "tokio-rustls 0.26.2", - "tungstenite 0.24.0", - "webpki-roots 0.26.9", -] - -[[package]] -name = "tokio-tungstenite" -version = "0.26.2" +name = "tokio-util" +version = "0.6.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a9daff607c6d2bf6c16fd681ccb7eecc83e4e2cdc1ca067ffaadfca5de7f084" +checksum = "36943ee01a6d67977dd3f84a5a1d2efeb4ada3a1ae771cadfaa535d9d9fc6507" dependencies = [ - "futures-util", + "bytes", + "futures-core", + "futures-sink", "log", - "rustls 0.23.26", - "rustls-pki-types", + "pin-project-lite", + "slab", "tokio", - "tokio-rustls 0.26.2", - "tungstenite 0.26.2", - "webpki-roots 0.26.9", ] [[package]] name = "tokio-util" -version = "0.7.15" +version = "0.7.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df" +checksum = "2efa149fe76073d6e8fd97ef4f4eca7b67f599660115591483572e406e165594" dependencies = [ "bytes", "futures-core", @@ -8284,26 +8632,11 @@ dependencies = [ "tokio", ] -[[package]] -name = "toml" -version = "0.8.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05ae329d1f08c4d17a59bed7ff5b5a769d062e64a62d34a3261b219e62cd5aae" -dependencies = [ - "serde", - "serde_spanned", - "toml_datetime", - "toml_edit", -] - [[package]] name = "toml_datetime" version = "0.6.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3" -dependencies = [ - "serde", -] +checksum = "3da5db5a963e24bc68be8b17b6fa82814bb22ee8660f192bb182771d498f09a3" [[package]] name = "toml_edit" @@ -8311,20 +8644,11 @@ version = "0.22.26" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "310068873db2c5b3e7659d2cc35d21855dbafa50d1ce336397c666e3cb08137e" dependencies = [ - "indexmap 2.9.0", - "serde", - "serde_spanned", + "indexmap", "toml_datetime", - "toml_write", "winnow", ] -[[package]] -name = "toml_write" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfb942dfe1d8e29a7ee7fcbde5bd2b9a25fb89aa70caea2eba3bee836ff41076" - [[package]] name = "tonic" version = "0.12.3" @@ -8335,7 +8659,7 @@ dependencies = [ "base64 0.22.1", "bytes", "http 1.3.1", - "http-body 1.0.1", + "http-body", "http-body-util", "percent-encoding", "pin-project", @@ -8366,7 +8690,7 @@ dependencies = [ "futures-core", "futures-util", "pin-project-lite", - "sync_wrapper 1.0.2", + "sync_wrapper", "tokio", "tower-layer", "tower-service", @@ -8379,16 +8703,34 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5" dependencies = [ - "bitflags 2.9.0", + "bitflags", "bytes", "http 1.3.1", - "http-body 1.0.1", + "http-body", "http-body-util", "pin-project-lite", "tower-layer", "tower-service", ] +[[package]] +name = "tower-http" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2" +dependencies = [ + "bitflags", + "bytes", + "futures-util", + "http 1.3.1", + "http-body", + "iri-string", + "pin-project-lite", + "tower 0.5.2", + "tower-layer", + "tower-service", +] + [[package]] name = "tower-layer" version = "0.3.3" @@ -8435,26 +8777,27 @@ dependencies = [ ] [[package]] -name = "tracing-futures" -version = "0.2.5" +name = "tracing-log" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2" +checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" dependencies = [ - "futures", - "futures-task", - "pin-project", - "tracing", + "log", + "once_cell", + "tracing-core", ] [[package]] -name = "tracing-log" -version = "0.2.0" +name = "tracing-opentelemetry" +version = "0.17.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" +checksum = "fbbe89715c1dbbb790059e2565353978564924ee85017b5fff365c872ff6721f" dependencies = [ - "log", "once_cell", + "opentelemetry 0.17.0", + "tracing", "tracing-core", + "tracing-subscriber 0.3.19", ] [[package]] @@ -8465,7 +8808,7 @@ checksum = "721f2d2569dce9f3dfbbddee5906941e953bfcdf736a62da3377f5751650cc36" dependencies = [ "js-sys", "once_cell", - "opentelemetry", + "opentelemetry 0.28.0", "opentelemetry_sdk", "smallvec", "tracing", @@ -8539,45 +8882,7 @@ dependencies = [ "thiserror 1.0.69", "url", "utf-8", -] - -[[package]] -name = "tungstenite" -version = "0.24.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18e5b8366ee7a95b16d32197d0b2604b43a0be89dc5fac9f8e96ccafbaedda8a" -dependencies = [ - "byteorder", - "bytes", - "data-encoding", - "http 1.3.1", - "httparse", - "log", - "rand 0.8.5", - "rustls 0.23.26", - "rustls-pki-types", - "sha1", - "thiserror 1.0.69", - "utf-8", -] - -[[package]] -name = "tungstenite" -version = "0.26.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4793cb5e56680ecbb1d843515b23b6de9a75eb04b66643e256a396d43be33c13" -dependencies = [ - "bytes", - "data-encoding", - "http 1.3.1", - "httparse", - "log", - "rand 0.9.1", - "rustls 0.23.26", - "rustls-pki-types", - "sha1", - "thiserror 2.0.12", - "utf-8", + "webpki-roots 0.24.0", ] [[package]] @@ -8586,30 +8891,6 @@ version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f" -[[package]] -name = "ucd-trie" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" - -[[package]] -name = "uint" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76f64bba2c53b04fcab63c01a7d7427eadc821e3bc48c34dc9ba29c501164b52" -dependencies = [ - "byteorder", - "crunchy", - "hex", - "static_assertions", -] - -[[package]] -name = "unarray" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" - [[package]] name = "unicode-ident" version = "1.0.18" @@ -8625,12 +8906,24 @@ dependencies = [ "tinyvec", ] +[[package]] +name = "unicode-width" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" + [[package]] name = "unicode-xid" version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853" +[[package]] +name = "unit-prefix" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "323402cff2dd658f39ca17c789b502021b3f18707c91cdf22e3838e1b4023817" + [[package]] name = "universal-hash" version = "0.5.1" @@ -8641,6 +8934,15 @@ dependencies = [ "subtle", ] +[[package]] +name = "unreachable" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" +dependencies = [ + "void", +] + [[package]] name = "unsafe-libyaml" version = "0.2.11" @@ -8649,15 +8951,25 @@ checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" [[package]] name = "untrusted" -version = "0.7.1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] -name = "untrusted" -version = "0.9.0" +name = "unwrap_none" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" +checksum = "461d0c5956fcc728ecc03a3a961e4adc9a7975d86f6f8371389a289517c02ca9" + +[[package]] +name = "uriparse" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0200d0fc04d809396c2ad43f3c95da3582a2556eba8d453c1087f4120ee352ff" +dependencies = [ + "fnv", + "lazy_static", +] [[package]] name = "url" @@ -8702,15 +9014,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" dependencies = [ "getrandom 0.2.16", - "serde", ] -[[package]] -name = "uuid" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "458f7a779bf54acc9f347480ac654f68407d3aab21269a6e3c9f922acd9e2da9" - [[package]] name = "valuable" version = "0.1.1" @@ -8730,19 +9035,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" [[package]] -name = "vsimd" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" - -[[package]] -name = "wait-timeout" -version = "0.2.1" +name = "void" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09ac3b126d3914f9849036f826e054cbabdc8519970b8998ddaf3b5bd3c65f11" -dependencies = [ - "libc", -] +checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" [[package]] name = "walkdir" @@ -8763,6 +9059,12 @@ dependencies = [ "try-lock", ] +[[package]] +name = "wasi" +version = "0.9.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" + [[package]] name = "wasi" version = "0.11.0+wasi-snapshot-preview1" @@ -8850,51 +9152,41 @@ dependencies = [ ] [[package]] -name = "wasmtimer" -version = "0.2.1" +name = "web-sys" +version = "0.3.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7ed9d8b15c7fb594d72bfb4b5a276f3d2029333cd93a932f376f5937f6f80ee" +checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" dependencies = [ - "futures", "js-sys", - "parking_lot", - "pin-utils", - "slab", "wasm-bindgen", ] [[package]] -name = "wasmtimer" -version = "0.4.1" +name = "web-time" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0048ad49a55b9deb3953841fa1fc5858f0efbcb7a18868c899a360269fac1b23" +checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" dependencies = [ - "futures", "js-sys", - "parking_lot", - "pin-utils", - "slab", "wasm-bindgen", ] [[package]] -name = "web-sys" -version = "0.3.77" +name = "webpki-root-certs" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" +checksum = "ee3e3b5f5e80bc89f30ce8d0343bf4e5f12341c51f3e26cbeecbc7c85443e85b" dependencies = [ - "js-sys", - "wasm-bindgen", + "rustls-pki-types", ] [[package]] -name = "web-time" -version = "1.1.0" +name = "webpki-roots" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb" +checksum = "b291546d5d9d1eab74f069c77749f2cb8504a12caa20f0f2de93ddbf6f411888" dependencies = [ - "js-sys", - "wasm-bindgen", + "rustls-webpki 0.101.7", ] [[package]] @@ -8913,10 +9205,13 @@ dependencies = [ ] [[package]] -name = "widestring" -version = "1.2.0" +name = "webpki-roots" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd7cf3379ca1aac9eea11fba24fd7e315d621f8dfe35c8d7d2be8b793726e07d" +checksum = "b2878ef029c47c6e8cf779119f20fcf52bde7ad42a731b2a304bc221df17571e" +dependencies = [ + "rustls-pki-types", +] [[package]] name = "winapi" @@ -8957,9 +9252,9 @@ checksum = "4763c1de310c86d75a878046489e2e5ba02c649d185f21c67d4cf8a56d098980" dependencies = [ "windows-implement", "windows-interface", - "windows-link", + "windows-link 0.1.1", "windows-result", - "windows-strings 0.4.0", + "windows-strings", ] [[package]] @@ -8991,15 +9286,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "76840935b766e1b0a05c0066835fb9ec80071d4c09a16f6bd5f7e655e3c14c38" [[package]] -name = "windows-registry" -version = "0.4.0" +name = "windows-link" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4286ad90ddb45071efd1a66dfa43eb02dd0dfbae1545ad6cc3c51cf34d7e8ba3" -dependencies = [ - "windows-result", - "windows-strings 0.3.1", - "windows-targets 0.53.0", -] +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" [[package]] name = "windows-result" @@ -9007,16 +9297,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c64fd11a4fd95df68efcfee5f44a294fe71b8bc6a91993e2791938abcc712252" dependencies = [ - "windows-link", -] - -[[package]] -name = "windows-strings" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87fa48cc5d406560701792be122a10132491cff9d0aeb23583cc2dcafc847319" -dependencies = [ - "windows-link", + "windows-link 0.1.1", ] [[package]] @@ -9025,16 +9306,16 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a2ba9642430ee452d5a7aa78d72907ebe8cfda358e8cb7918a2050581322f97" dependencies = [ - "windows-link", + "windows-link 0.1.1", ] [[package]] name = "windows-sys" -version = "0.48.0" +version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" dependencies = [ - "windows-targets 0.48.5", + "windows-targets 0.42.2", ] [[package]] @@ -9055,19 +9336,37 @@ dependencies = [ "windows-targets 0.52.6", ] +[[package]] +name = "windows-sys" +version = "0.60.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb" +dependencies = [ + "windows-targets 0.53.5", +] + +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link 0.2.1", +] + [[package]] name = "windows-targets" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", ] [[package]] @@ -9088,10 +9387,11 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.53.0" +version = "0.53.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1e4c7e8ceaaf9cb7d7507c974735728ab453b67ef8f18febdd7c11fe59dca8b" +checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3" dependencies = [ + "windows-link 0.2.1", "windows_aarch64_gnullvm 0.53.0", "windows_aarch64_msvc 0.53.0", "windows_i686_gnu 0.53.0", @@ -9104,9 +9404,9 @@ dependencies = [ [[package]] name = "windows_aarch64_gnullvm" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" [[package]] name = "windows_aarch64_gnullvm" @@ -9122,9 +9422,9 @@ checksum = "86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764" [[package]] name = "windows_aarch64_msvc" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" [[package]] name = "windows_aarch64_msvc" @@ -9140,9 +9440,9 @@ checksum = "c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c" [[package]] name = "windows_i686_gnu" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" [[package]] name = "windows_i686_gnu" @@ -9170,9 +9470,9 @@ checksum = "9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11" [[package]] name = "windows_i686_msvc" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" [[package]] name = "windows_i686_msvc" @@ -9188,9 +9488,9 @@ checksum = "581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d" [[package]] name = "windows_x86_64_gnu" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" [[package]] name = "windows_x86_64_gnu" @@ -9206,9 +9506,9 @@ checksum = "2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba" [[package]] name = "windows_x86_64_gnullvm" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" [[package]] name = "windows_x86_64_gnullvm" @@ -9224,9 +9524,9 @@ checksum = "0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57" [[package]] name = "windows_x86_64_msvc" -version = "0.48.5" +version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" [[package]] name = "windows_x86_64_msvc" @@ -9249,23 +9549,13 @@ dependencies = [ "memchr", ] -[[package]] -name = "winreg" -version = "0.50.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1" -dependencies = [ - "cfg-if", - "windows-sys 0.48.0", -] - [[package]] name = "wit-bindgen-rt" version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1" dependencies = [ - "bitflags 2.9.0", + "bitflags", ] [[package]] @@ -9281,51 +9571,45 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" [[package]] -name = "ws_stream_wasm" -version = "0.7.4" +name = "x25519-dalek" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7999f5f4217fe3818726b66257a4475f71e74ffd190776ad053fa159e50737f5" +checksum = "c7e468321c81fb07fa7f4c636c3972b9100f0346e5b6a9f2bd0603a52f7ed277" dependencies = [ - "async_io_stream", - "futures", - "js-sys", - "log", - "pharos", - "rustc_version 0.4.1", - "send_wrapper 0.6.0", - "thiserror 1.0.69", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", + "curve25519-dalek 4.1.3", + "rand_core 0.6.4", + "serde", + "zeroize", ] [[package]] -name = "wyz" -version = "0.5.1" +name = "x509-parser" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +checksum = "e0ecbeb7b67ce215e40e3cc7f2ff902f94a223acf44995934763467e7b1febc8" dependencies = [ - "tap", + "asn1-rs", + "base64 0.13.1", + "data-encoding", + "der-parser", + "lazy_static", + "nom", + "oid-registry", + "rusticata-macros", + "thiserror 1.0.69", + "time", ] [[package]] -name = "x25519-dalek" -version = "2.0.1" +name = "xattr" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7e468321c81fb07fa7f4c636c3972b9100f0346e5b6a9f2bd0603a52f7ed277" +checksum = "32e45ad4206f6d2479085147f02bc2ef834ac85886624a23575ae137c8aa8156" dependencies = [ - "curve25519-dalek", - "rand_core 0.6.4", - "serde", - "zeroize", + "libc", + "rustix", ] -[[package]] -name = "yansi" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" - [[package]] name = "yoke" version = "0.7.5" @@ -9347,7 +9631,7 @@ dependencies = [ "proc-macro2", "quote", "syn 2.0.101", - "synstructure", + "synstructure 0.13.1", ] [[package]] @@ -9408,7 +9692,7 @@ dependencies = [ "proc-macro2", "quote", "syn 2.0.101", - "synstructure", + "synstructure 0.13.1", ] [[package]] @@ -9453,42 +9737,21 @@ dependencies = [ "syn 2.0.101", ] -[[package]] -name = "zip" -version = "0.6.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "760394e246e4c28189f19d488c058bf16f564016aefac5d32bb1f3b51d5e9261" -dependencies = [ - "aes", - "byteorder", - "bzip2", - "constant_time_eq 0.1.5", - "crc32fast", - "crossbeam-utils", - "flate2", - "hmac", - "pbkdf2 0.11.0", - "sha1", - "time", - "zstd", -] - [[package]] name = "zstd" -version = "0.11.2+zstd.1.5.2" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "20cc960326ece64f010d2d2107537f26dc589a6573a316bd5b1dba685fa5fde4" +checksum = "e91ee311a569c327171651566e07972200e76fcfe2242a4fa446149a3881c08a" dependencies = [ "zstd-safe", ] [[package]] name = "zstd-safe" -version = "5.0.2+zstd.1.5.2" +version = "7.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d2a5585e04f9eea4b2a3d1eca508c4dee9592a89ef6f450c11719da0726f4db" +checksum = "8f49c4d5f0abb602a93fb8736af2a4f4dd9512e36f7f570d66e65ff867ed3b9d" dependencies = [ - "libc", "zstd-sys", ] diff --git a/Cargo.toml b/Cargo.toml index 1750b8f..c56bbf0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -6,14 +6,15 @@ version = "0.1.0" edition = "2024" [dependencies] -commonware-avs-router = { git = "https://github.com/BreadchainCoop/commonware-avs-router", branch = "22-update-commonware-to-0055-and-refactor-lookup-repository-for-authenticated-p2p" } +# commonware-avs-router = { git = "https://github.com/BreadchainCoop/commonware-avs-router", branch = "22-update-commonware-to-0055-and-refactor-lookup-repository-for-authenticated-p2p" } +commonware-avs-router = { path = "../" } -alloy = { version = "0.12.6" } -alloy-network = "0.5.4" -alloy-primitives = "0.8.25" -alloy-signer = "0.12.6" -alloy-signer-local = "0.12.6" -alloy-provider = "0.12.6" +# alloy = { version = "0.12.6" } +# alloy-network = "0.5.4" +# alloy-primitives = "0.8.25" +# alloy-signer = "0.12.6" +# alloy-signer-local = "0.12.6" +# alloy-provider = "0.12.6" anyhow = "1.0" ark-bn254 = "0.5.0" ark-ec = "0.5.0" @@ -29,16 +30,16 @@ commonware-p2p = "0.0.56" commonware-runtime = "0.0.56" commonware-utils = "0.0.56" dotenv = "0.15.0" -eigen-crypto-bls = "0.5.0" -eigen-crypto-bn254 = "0.5.0" -eigen-logging = "0.1.3" +# eigen-crypto-bls = "0.5.0" +# eigen-crypto-bn254 = "0.5.0" +# eigen-logging = "0.1.3" futures = "0.3.31" futures-util = "0.3.31" governor = "0.6.3" prometheus-client = "0.23.1" prost = "0.13.5" rand = "0.9.1" -commonware-eigenlayer = {git = "https://github.com/BreadchainCoop/commonware-avs-network-lookup"} +# commonware-eigenlayer = {git = "https://github.com/BreadchainCoop/commonware-avs-network-lookup"} serde = { version = "1.0.219", features = ["derive"] } serde_yaml = "0.9.34" tracing = "0.1.41" @@ -46,6 +47,13 @@ tracing-subscriber = "0.3.19" url = { version = "2.5.4", features = ["serde"] } serde_json = "1.0.140" +solana-pubkey = "3.0.0" +solana-keypair = "3.0.0" +solana-signer = "3.0.0" +jito-bls-ncn-clients = { git = "https://github.com/jito-foundation/jito-bls-ncn", branch = "ck/ncn", package = "jito-bls-ncn-clients" } +jito-bls-ncn-core = { git = "https://github.com/jito-foundation/jito-bls-ncn", branch = "ck/ncn", package = "jito-bls-ncn-core", features = ["commonware"] } +jito-bls-ncn-sdk = { git = "https://github.com/jito-foundation/jito-bls-ncn", branch = "ck/ncn", package = "jito-bls-ncn-sdk" } + [build-dependencies] prost-build = "0.13.5" diff --git a/example.env b/example.env index a52ca6e..a4ec28f 100644 --- a/example.env +++ b/example.env @@ -5,8 +5,8 @@ # ============================================================================= # TESTNET MODE (Holesky) - Default Configuration # ============================================================================= -HTTP_RPC=https://ethereum-holesky.publicnode.com # change to private rpc -WS_RPC=wss://ethereum-holesky.publicnode.com # Not a real endpoint +HTTP_RPC=https://ethereum-holesky.publicnode.com # change to private rpc +WS_RPC=wss://ethereum-holesky.publicnode.com # Not a real endpoint # ============================================================================= # LOCAL MODE - Uncomment these lines and comment the lines above for local development @@ -25,3 +25,9 @@ AVS_DEPLOYMENT_PATH="../eigenlayer-bls-local/.nodes/avs_deploy.json" CONTRIBUTOR_1_KEYFILE="../eigenlayer-bls-local/.nodes/operator_keys/testacc1.private.bls.key.json" CONTRIBUTOR_2_KEYFILE="../eigenlayer-bls-local/.nodes/operator_keys/testacc2.private.bls.key.json" CONTRIBUTOR_3_KEYFILE="../eigenlayer-bls-local/.nodes/operator_keys/testacc3.private.bls.key.json" + + +# ============================================================================= +# Solana Config +# ============================================================================= +TEST_BLS_NCN_CONFIG_FILE_PATH=../../jito-bls-ncn/cli/test_ncn_output.json diff --git a/src/bindings/abi/BLSSignatureChecker.abi b/src/bindings/abi/BLSSignatureChecker.abi deleted file mode 100644 index 170acfa..0000000 --- a/src/bindings/abi/BLSSignatureChecker.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[{"internalType":"contract ISlashingRegistryCoordinator","name":"_registryCoordinator","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"BitmapValueTooLarge","type":"error"},{"inputs":[],"name":"BytesArrayLengthTooLong","type":"error"},{"inputs":[],"name":"BytesArrayNotOrdered","type":"error"},{"inputs":[],"name":"ECAddFailed","type":"error"},{"inputs":[],"name":"ECMulFailed","type":"error"},{"inputs":[],"name":"ExpModFailed","type":"error"},{"inputs":[],"name":"InputArrayLengthMismatch","type":"error"},{"inputs":[],"name":"InputEmptyQuorumNumbers","type":"error"},{"inputs":[],"name":"InputNonSignerLengthMismatch","type":"error"},{"inputs":[],"name":"InvalidBLSPairingKey","type":"error"},{"inputs":[],"name":"InvalidBLSSignature","type":"error"},{"inputs":[],"name":"InvalidQuorumApkHash","type":"error"},{"inputs":[],"name":"InvalidReferenceBlocknumber","type":"error"},{"inputs":[],"name":"NonSignerPubkeysNotSorted","type":"error"},{"inputs":[],"name":"OnlyRegistryCoordinatorOwner","type":"error"},{"inputs":[],"name":"ScalarTooLarge","type":"error"},{"inputs":[],"name":"StaleStakesForbidden","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"value","type":"bool"}],"name":"StaleStakesForbiddenUpdate","type":"event"},{"inputs":[],"name":"blsApkRegistry","outputs":[{"internalType":"contract IBLSApkRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"msgHash","type":"bytes32"},{"internalType":"bytes","name":"quorumNumbers","type":"bytes"},{"internalType":"uint32","name":"referenceBlockNumber","type":"uint32"},{"components":[{"internalType":"uint32[]","name":"nonSignerQuorumBitmapIndices","type":"uint32[]"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point[]","name":"nonSignerPubkeys","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point[]","name":"quorumApks","type":"tuple[]"},{"components":[{"internalType":"uint256[2]","name":"X","type":"uint256[2]"},{"internalType":"uint256[2]","name":"Y","type":"uint256[2]"}],"internalType":"struct BN254.G2Point","name":"apkG2","type":"tuple"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"sigma","type":"tuple"},{"internalType":"uint32[]","name":"quorumApkIndices","type":"uint32[]"},{"internalType":"uint32[]","name":"totalStakeIndices","type":"uint32[]"},{"internalType":"uint32[][]","name":"nonSignerStakeIndices","type":"uint32[][]"}],"internalType":"struct IBLSSignatureCheckerTypes.NonSignerStakesAndSignature","name":"params","type":"tuple"}],"name":"checkSignatures","outputs":[{"components":[{"internalType":"uint96[]","name":"signedStakeForQuorum","type":"uint96[]"},{"internalType":"uint96[]","name":"totalStakeForQuorum","type":"uint96[]"}],"internalType":"struct IBLSSignatureCheckerTypes.QuorumStakeTotals","name":"","type":"tuple"},{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"delegation","outputs":[{"internalType":"contract IDelegationManager","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registryCoordinator","outputs":[{"internalType":"contract ISlashingRegistryCoordinator","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"value","type":"bool"}],"name":"setStaleStakesForbidden","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stakeRegistry","outputs":[{"internalType":"contract IStakeRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"staleStakesForbidden","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"msgHash","type":"bytes32"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"apk","type":"tuple"},{"components":[{"internalType":"uint256[2]","name":"X","type":"uint256[2]"},{"internalType":"uint256[2]","name":"Y","type":"uint256[2]"}],"internalType":"struct BN254.G2Point","name":"apkG2","type":"tuple"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"sigma","type":"tuple"}],"name":"trySignatureAndApkVerification","outputs":[{"internalType":"bool","name":"pairingSuccessful","type":"bool"},{"internalType":"bool","name":"siganatureIsValid","type":"bool"}],"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/BLSSignatureChecker.bin b/src/bindings/abi/BLSSignatureChecker.bin deleted file mode 100644 index d74d6c9..0000000 --- a/src/bindings/abi/BLSSignatureChecker.bin +++ /dev/null @@ -1 +0,0 @@ -610100806040523461017157602081611f378038038091610020828561020d565b83398101031261017157516001600160a01b0381169081810361017157608052604051636830483560e01b8152602081600481855afa90811561017d575f916101ca575b5060a052604051632efa2ca360e11b815290602090829060049082905afa90811561017d575f91610188575b5060c05260a05160405163df5cf72360e01b815290602090829060049082906001600160a01b03165afa90811561017d575f91610137575b5060e052604051611cf2908161024582396080518181816102c70152818161040601528181610d4a01528181610e3d0152611423015260a0518181816103c20152818161117001526112ce015260c05181818161037e01526110ac015260e05181818161080b0152610f5f0152f35b90506020813d602011610175575b816101526020938361020d565b8101031261017157516001600160a01b0381168103610171575f6100c8565b5f80fd5b3d9150610145565b6040513d5f823e3d90fd5b90506020813d6020116101c2575b816101a36020938361020d565b8101031261017157516001600160a01b0381168103610171575f610090565b3d9150610196565b90506020813d602011610205575b816101e56020938361020d565b8101031261017157516001600160a01b0381168103610171576004610064565b3d91506101d8565b601f909101601f19168101906001600160401b0382119082101761023057604052565b634e487b7160e01b5f52604160045260245ffdfe60806040526004361015610011575f80fd5b5f3560e01c8063171f1d5b14610094578063416c7e5e1461008f5780635df459461461008a57806368304835146100855780636d14a987146100805780636efb46361461007b578063b98d0908146100765763df5cf72314610071575f80fd5b6107f6565b6107d5565b61073c565b6103f1565b6103ad565b610369565b610295565b346100e0576101203660031901126100e05760406100d06004356100b736610168565b6100c036610228565b906100ca36610190565b92610878565b8251911515825215156020820152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b604081019081106001600160401b0382111761011357604052565b6100e4565b90601f801991011681019081106001600160401b0382111761011357604052565b6040519061014961010083610118565b565b60405190610149604083610118565b906101496040519283610118565b60409060231901126100e05760405190610181826100f8565b60243582526044356020830152565b60409060e31901126100e057604051906101a9826100f8565b60e4358252610104356020830152565b91908260409103126100e0576040516101d1816100f8565b6020808294803584520135910152565b9080601f830112156100e057604051916101fc604084610118565b8290604081019283116100e057905b8282106102185750505090565b813581526020918201910161020b565b9060806063198301126100e057604051610241816100f8565b602061025c82946102538160646101e1565b845260a46101e1565b910152565b91906080838203126100e057602061025c6040519261027f846100f8565b6040849661028d83826101e1565b8652016101e1565b346100e05760203660031901126100e05760043580151581036100e057604051638da5cb5b60e01b81526020816004817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610364575f9161031e575b61031c83610317336001600160a01b03861614610969565b6119ff565b005b90506020813d60201161035c575b8161033960209383610118565b810103126100e05751906001600160a01b03821682036100e057906103176102ff565b3d915061032c565b61095e565b346100e0575f3660031901126100e0576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b346100e0575f3660031901126100e0576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b346100e0575f3660031901126100e0576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b63ffffffff8116036100e057565b6044359061014982610435565b6001600160401b0381116101135760051b60200190565b9080601f830112156100e057813561047e81610450565b9261048c6040519485610118565b81845260208085019260051b8201019283116100e057602001905b8282106104b45750505090565b6020809183356104c381610435565b8152019101906104a7565b81601f820112156100e05780356104e481610450565b926104f26040519485610118565b81845260208085019260061b840101928184116100e057602001915b83831061051c575050505090565b602060409161052b84866101b9565b81520192019161050e565b9080601f830112156100e057813561054d81610450565b9261055b6040519485610118565b81845260208085019260051b820101918383116100e05760208201905b83821061058757505050505090565b81356001600160401b0381116100e0576020916105a987848094880101610467565b815201910190610578565b919091610180818403126100e0576105ca610139565b9281356001600160401b0381116100e057816105e7918401610467565b845260208201356001600160401b0381116100e057816106089184016104ce565b602085015260408201356001600160401b0381116100e0578161062c9184016104ce565b604085015261063e8160608401610261565b60608501526106508160e084016101b9565b60808501526101208201356001600160401b0381116100e05781610675918401610467565b60a08501526101408201356001600160401b0381116100e0578161069a918401610467565b60c08501526101608201356001600160401b0381116100e0576106bd9201610536565b60e0830152565b90602080835192838152019201905f5b8181106106e15750505090565b82516001600160601b03168452602093840193909201916001016106d4565b929190610737602091604086528261072382516040808a015260808901906106c4565b910151868203603f190160608801526106c4565b930152565b346100e05760803660031901126100e0576004356024356001600160401b0381116100e057366023820112156100e05780600401356001600160401b0381116100e05736602482840101116100e057610793610443565b90606435936001600160401b0385116100e05760246107b96107c19636906004016105b4565b940190610c6d565b906107d160405192839283610700565b0390f35b346100e0575f3660031901126100e057602060ff5f54166040519015158152f35b346100e0575f3660031901126100e0576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b634e487b7160e01b5f52603260045260245ffd5b90600281101561085f5760051b0190565b61083a565b634e487b7160e01b5f52601260045260245ffd5b61095461093161095a9561092b61092485875160208901518a515160208c51015160208d016020815151915101519189519360208b0151956040519760208901998a5260208a015260408901526060880152608087015260a086015260c085015260e08401526101008301526108fb81610120840103601f198101835282610118565b5190207f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001900690565b80966115cc565b90611612565b9261092b610946610940611674565b9461176b565b9161094f611887565b6115cc565b916118d1565b9091565b6040513d5f823e3d90fd5b1561097057565b637070f3b160e11b5f5260045ffd5b6040519061098c826100f8565b60606020838281520152565b1561099f57565b62f8202d60e51b5f5260045ffd5b156109b457565b6343714afd60e01b5f5260045ffd5b156109ca57565b635f832f4160e01b5f5260045ffd5b156109e057565b634b874f4560e01b5f5260045ffd5b906109f982610450565b610a066040519182610118565b8281528092610a17601f1991610450565b0190602036910137565b908160209103126100e0575160ff811681036100e05790565b9291926001600160401b0382116101135760405191610a63601f8201601f191660200184610118565b8294818452818301116100e0578281602093845f960137010152565b805182101561085f5760209160051b010190565b634e487b7160e01b5f52601160045260245ffd5b5f19810191908211610ab557565b610a93565b15610ac157565b633fdc650560e21b5f5260045ffd5b908160209103126100e057516001600160c01b03811681036100e05790565b908160209103126100e05751610b0481610435565b90565b9082101561085f570190565b908160209103126100e0575190565b9060018201809211610ab557565b9060028201809211610ab557565b9060038201809211610ab557565b9060048201809211610ab557565b9060058201809211610ab557565b91908201809211610ab557565b15610b7c57565b63affc5edb60e01b5f5260045ffd5b908160209103126100e0575167ffffffffffffffff19811681036100e05790565b15610bb357565b63e1310aed60e01b5f5260045ffd5b908160209103126100e057516001600160601b03811681036100e05790565b906001600160601b03809116911603906001600160601b038211610ab557565b15610c0857565b6367988d3360e01b5f5260045ffd5b15610c1e57565b63ab1b236b60e01b5f5260045ffd5b60049163ffffffff60e01b9060e01b1681520160208251919201905f5b818110610c575750505090565b8251845260209384019390920191600101610c4a565b949392909193610c7b61097f565b50610c87851515610998565b60408401515185148061157a575b8061156c575b8061155e575b610caa906109ad565b610cbc602085015151855151146109c3565b610cd363ffffffff431663ffffffff8416106109d9565b610cdb61014b565b5f81525f602082015292610ced61097f565b610cf6876109ef565b6020820152610d04876109ef565b8152610d0e61097f565b92610d1d6020880151516109ef565b8452610d2d6020880151516109ef565b602085810191909152604051639aa1653d60e01b815290816004817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa801561036457610d96915f9161152f575b50610d91368b87610a3a565b611a3b565b985f965b60208901518051891015610f2257602088610e07610dfd8c610df58f96868e610dda610dc7868095610a7f565b5180515f526020015160205260405f2090565b610de78484840151610a7f565b5282610eef575b0151610a7f565b519551610a7f565b5163ffffffff1690565b6040516304ec635160e01b8152600481019490945263ffffffff9182166024850152166044830152816064816001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165afa9182156103645761092b8a610eb48f610ead8f8460208f92610ea493610e9c8460019e610eba9e5f91610ec2575b508f8060c01b03169251610a7f565b520151610a7f565b51938d51610a7f565b5116611a66565b90611a97565b970196610d9a565b610ee29150863d8111610ee8575b610eda8183610118565b810190610ad0565b5f610e8d565b503d610ed0565b610f1d610eff8484840151610a7f565b51610f1684840151610f1087610aa7565b90610a7f565b5110610aba565b610dee565b50909597949650610f37919893929950611b54565b91610f435f5460ff1690565b908115611527576040516318891fd760e31b81526020816004817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610364575f916114f8575b5091905b5f925b81841061100257505050505092610fdb610fd6610fcf610ffc9585610fee9860806060602099015192015192610878565b9190610c01565b610c17565b0151604051928391602083019586610c2d565b03601f198101835282610118565b51902090565b92989596909399919794878b888c888d6113e2575b610dfd8260a061106b6110656110578461107397611051611043610dc78f9c604060209f9e0151610a7f565b67ffffffffffffffff191690565b9b610b07565b356001600160f81b03191690565b60f81c90565b970151610a7f565b604051631a2f32ab60e21b815260ff95909516600486015263ffffffff9182166024860152166044840152826064816001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165afa90811561036457611137610dfd8f958f9061112f8f978f96848f61112960c096611122848f60209f90610dee611057996040936110659c5f916113b4575b5067ffffffffffffffff19918216911614610bac565b5190611612565b9c610b07565b960151610a7f565b604051636414a62b60e11b815260ff94909416600485015263ffffffff9182166024850152166044830152816064816001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165afa908115610364576111c4918c8f925f92611390575b5060206111b692930151610a7f565b906001600160601b03169052565b6111f18c6111b68c6111ea6111dd826020860151610a7f565b516001600160601b031690565b9251610a7f565b5f985f5b60208a015151811015611377578b8d61123389611226611065611057868f8961121e9151610a7f565b519487610b07565b60ff161c60019081161490565b611242575b50506001016111f5565b8a8a6112ca859f948f96866112848f9360e061127b610dfd956020611273611065611057839f61128a9c8991610b07565b9a0151610a7f565b519b0151610a7f565b51610a7f565b60405163795f4a5760e11b815260ff909316600484015263ffffffff93841660248401526044830196909652919094166064850152839081906084820190565b03817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa908115610364578f611336908f936001959486955f92611341575b506113306111b69293519361132b6111dd8487610a7f565b610be1565b92610a7f565b019a90508b8d611238565b6111b692506113696113309160203d8111611370575b6113618183610118565b810190610bc2565b9250611313565b503d611357565b5093919796996001919699509a94929a01929190610f9e565b6111b692506113ad602091823d8111611370576113618183610118565b92506111a7565b60206113d592503d81116113db575b6113cd8183610118565b810190610b8b565b5f61110c565b503d6113c3565b61141f94506113fc92506110659161105791602095610b07565b60405163124d062160e11b815260ff909116600482015291829081906024820190565b03817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa8015610364576020896110738f938f60a08f976110656110578f8f90611051611043610dc78f60408b96918f8893610dfd9f6114a3906114a99361106b9f5f926114bf575b5063ffffffff809116931690610b68565b11610b75565b5050505050509750505050505092935050611017565b602063ffffffff92935082916114e9913d81116114f1575b6114e18183610118565b810190610b13565b929150611492565b503d6114d7565b61151a915060203d602011611520575b6115128183610118565b810190610aef565b5f610f97565b503d611508565b5f9190610f9b565b611551915060203d602011611557575b6115498183610118565b810190610a21565b5f610d85565b503d61153f565b5060e0840151518514610ca1565b5060c0840151518514610c9b565b5060a0840151518514610c95565b60405190611595826100f8565b5f6020838281520152565b604051906101806115b18184610118565b368337565b604051906115c5602083610118565b6020368337565b919060409060606115db611588565b94859260208551926115ed8585610118565b8436853780518452015160208301528482015260076107cf195a01fa1561161057565bfe5b602092916080604092611623611588565b958693818651936116348686610118565b85368637805185520151828401528051868401520151606082015260066107cf195a01fa8015611610571561166557565b63d4b68fd760e01b5f5260045ffd5b604051611680816100f8565b604090815161168f8382610118565b82368237815260208251916116a48484610118565b83368437015280516116b68282610118565b7f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c281527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed602082015281519061170c8383610118565b7f275dc4a288d1afb3cbb1ac09187524c7db36395df7be3b99e673b13a075a65ec82527f1d9befcd05a5323e6da4d435f3b617cdb3af83285c2df711ef39c01571827f9d602083015261176183519384610118565b8252602082015290565b5f516020611c9d5f395f51905f5290611782611588565b505f919006602060c0835b611882575f935f516020611c9d5f395f51905f52600381868181800909086040516117b88582610118565b843682378481856040516117cc8282610118565b813682378381528360208201528360408201528560608201527f0c19139cb84c680a6e14116da060561765e05aa45a1c72a34f082305b61f3f5260808201525f516020611c9d5f395f51905f5260a082015260056107cf195a01fa80156116105761183690611c86565b5191611882575f516020611c9d5f395f51905f528280091461186d57505f516020611c9d5f395f51905f5260015f9408929361178d565b9293505061187961014b565b92835282015290565b610864565b61188f611588565b5060405161189c816100f8565b600181526002602082015290565b90600682029180830460061490151715610ab557565b90600c81101561085f5760051b0190565b939290916118df604061015a565b94855260208501526118f1604061015a565b91825260208201526119016115a0565b925f5b6002811061192e5750505060206101809261191d6115b6565b93849160086201d4c0fa9151151590565b8061193a6001926118aa565b611944828561084e565b515161195082896118c0565b52602061195d838661084e565b51015161197261196c83610b22565b896118c0565b5261197d828661084e565b51515161198c61196c83610b30565b526119a261199a838761084e565b515160200190565b516119af61196c83610b3e565b5260206119bc838761084e565b510151516119cc61196c83610b4c565b526119f86119f26119eb60206119e2868a61084e565b51015160200190565b5192610b5a565b886118c0565b5201611904565b60207f40e4ed880a29e0f6ddce307457fb75cddf4feef7d3ecb0301bfdf4976a0e2dfc91151560ff195f541660ff8216175f55604051908152a1565b906001611a4960ff93611c00565b928392161b1115611a575790565b63ca95733360e01b5f5260045ffd5b805f915b611a72575090565b5f198101818111610ab55761ffff9116911661ffff8114610ab5576001019080611a6a565b90611aa0611588565b5061ffff811690610200821015611b455760018214611b4057611ac161014b565b5f81525f602082015292906001905f925b61ffff8316851015611ae657505050505090565b600161ffff831660ff86161c811614611b20575b6001611b16611b0b8360ff94611612565b9460011b61fffe1690565b9401169291611ad2565b946001611b16611b0b611b358960ff95611612565b989350505050611afa565b505090565b637fc4ea7d60e11b5f5260045ffd5b611b5c611588565b50805190811580611bcd575b15611b89575050604051611b7d604082610118565b5f81525f602082015290565b60205f516020611c9d5f395f51905f52910151065f516020611c9d5f395f51905f52035f516020611c9d5f395f51905f528111610ab55760405191611761836100f8565b50602081015115611b68565b90815181101561085f570160200190565b15611bf157565b631019106960e31b5f5260045ffd5b90610100825111611c7757815115611c7257602082015160019060f81c81901b5b8351821015611c6d57600190611c58611c4e611065611c408689611bd9565b516001600160f81b03191690565b60ff600191161b90565b90611c64818311611bea565b17910190611c21565b925050565b5f9150565b637da54e4760e11b5f5260045ffd5b15611c8d57565b63d51edae360e01b5f5260045ffdfe30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd47a264697066735822122000b6983733f17ffd6a0cd4a021283be41fe69c5ef7d1cab1bf31f5f180d2f68864736f6c634300081c0033 \ No newline at end of file diff --git a/src/bindings/abi/BLSSignatureCheckerStorage.abi b/src/bindings/abi/BLSSignatureCheckerStorage.abi deleted file mode 100644 index 13193bd..0000000 --- a/src/bindings/abi/BLSSignatureCheckerStorage.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"InputArrayLengthMismatch","type":"error"},{"inputs":[],"name":"InputEmptyQuorumNumbers","type":"error"},{"inputs":[],"name":"InputNonSignerLengthMismatch","type":"error"},{"inputs":[],"name":"InvalidBLSPairingKey","type":"error"},{"inputs":[],"name":"InvalidBLSSignature","type":"error"},{"inputs":[],"name":"InvalidQuorumApkHash","type":"error"},{"inputs":[],"name":"InvalidReferenceBlocknumber","type":"error"},{"inputs":[],"name":"NonSignerPubkeysNotSorted","type":"error"},{"inputs":[],"name":"OnlyRegistryCoordinatorOwner","type":"error"},{"inputs":[],"name":"StaleStakesForbidden","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"value","type":"bool"}],"name":"StaleStakesForbiddenUpdate","type":"event"},{"inputs":[],"name":"blsApkRegistry","outputs":[{"internalType":"contract IBLSApkRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"msgHash","type":"bytes32"},{"internalType":"bytes","name":"quorumNumbers","type":"bytes"},{"internalType":"uint32","name":"referenceBlockNumber","type":"uint32"},{"components":[{"internalType":"uint32[]","name":"nonSignerQuorumBitmapIndices","type":"uint32[]"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point[]","name":"nonSignerPubkeys","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point[]","name":"quorumApks","type":"tuple[]"},{"components":[{"internalType":"uint256[2]","name":"X","type":"uint256[2]"},{"internalType":"uint256[2]","name":"Y","type":"uint256[2]"}],"internalType":"struct BN254.G2Point","name":"apkG2","type":"tuple"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"sigma","type":"tuple"},{"internalType":"uint32[]","name":"quorumApkIndices","type":"uint32[]"},{"internalType":"uint32[]","name":"totalStakeIndices","type":"uint32[]"},{"internalType":"uint32[][]","name":"nonSignerStakeIndices","type":"uint32[][]"}],"internalType":"struct IBLSSignatureCheckerTypes.NonSignerStakesAndSignature","name":"nonSignerStakesAndSignature","type":"tuple"}],"name":"checkSignatures","outputs":[{"components":[{"internalType":"uint96[]","name":"signedStakeForQuorum","type":"uint96[]"},{"internalType":"uint96[]","name":"totalStakeForQuorum","type":"uint96[]"}],"internalType":"struct IBLSSignatureCheckerTypes.QuorumStakeTotals","name":"","type":"tuple"},{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"delegation","outputs":[{"internalType":"contract IDelegationManager","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registryCoordinator","outputs":[{"internalType":"contract ISlashingRegistryCoordinator","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"value","type":"bool"}],"name":"setStaleStakesForbidden","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stakeRegistry","outputs":[{"internalType":"contract IStakeRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"staleStakesForbidden","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"msgHash","type":"bytes32"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"apk","type":"tuple"},{"components":[{"internalType":"uint256[2]","name":"X","type":"uint256[2]"},{"internalType":"uint256[2]","name":"Y","type":"uint256[2]"}],"internalType":"struct BN254.G2Point","name":"apkG2","type":"tuple"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"sigma","type":"tuple"}],"name":"trySignatureAndApkVerification","outputs":[{"internalType":"bool","name":"pairingSuccessful","type":"bool"},{"internalType":"bool","name":"siganatureIsValid","type":"bool"}],"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/BLSSignatureCheckerStorage.bin b/src/bindings/abi/BLSSignatureCheckerStorage.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/BN254.abi b/src/bindings/abi/BN254.abi deleted file mode 100644 index 4d5b138..0000000 --- a/src/bindings/abi/BN254.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"ECAddFailed","type":"error"},{"inputs":[],"name":"ECMulFailed","type":"error"},{"inputs":[],"name":"ECPairingFailed","type":"error"},{"inputs":[],"name":"ExpModFailed","type":"error"},{"inputs":[],"name":"ScalarTooLarge","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/BN254.bin b/src/bindings/abi/BN254.bin deleted file mode 100644 index c36912f..0000000 --- a/src/bindings/abi/BN254.bin +++ /dev/null @@ -1 +0,0 @@ -6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea264697066735822122008688cf6bd037bf10149b5536cd0cf2cfa2020ce7553da9fb74bd426e532483864736f6c634300081c0033 \ No newline at end of file diff --git a/src/bindings/abi/BitmapUtils.abi b/src/bindings/abi/BitmapUtils.abi deleted file mode 100644 index dd22bf1..0000000 --- a/src/bindings/abi/BitmapUtils.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"BitmapValueTooLarge","type":"error"},{"inputs":[],"name":"BytesArrayLengthTooLong","type":"error"},{"inputs":[],"name":"BytesArrayNotOrdered","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/BitmapUtils.bin b/src/bindings/abi/BitmapUtils.bin deleted file mode 100644 index 36998cf..0000000 --- a/src/bindings/abi/BitmapUtils.bin +++ /dev/null @@ -1 +0,0 @@ -6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea2646970667358221220d47e17b9fa6a0035956d16a255effd2bae1aa22f29764d5104530a9c1539771164736f6c634300081c0033 \ No newline at end of file diff --git a/src/bindings/abi/Context.abi b/src/bindings/abi/Context.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/Context.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/Context.bin b/src/bindings/abi/Context.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IAVSRegistrar.abi b/src/bindings/abi/IAVSRegistrar.abi deleted file mode 100644 index 0ed8c8d..0000000 --- a/src/bindings/abi/IAVSRegistrar.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32[]","name":"operatorSetIds","type":"uint32[]"}],"name":"deregisterOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32[]","name":"operatorSetIds","type":"uint32[]"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"registerOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"avs","type":"address"}],"name":"supportsAVS","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IAVSRegistrar.bin b/src/bindings/abi/IAVSRegistrar.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IAllocationManager.abi b/src/bindings/abi/IAllocationManager.abi deleted file mode 100644 index 1631fbe..0000000 --- a/src/bindings/abi/IAllocationManager.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"AlreadyMemberOfSet","type":"error"},{"inputs":[],"name":"InputArrayLengthMismatch","type":"error"},{"inputs":[],"name":"InsufficientMagnitude","type":"error"},{"inputs":[],"name":"InvalidAVSRegistrar","type":"error"},{"inputs":[],"name":"InvalidAVSWithNoMetadataRegistered","type":"error"},{"inputs":[],"name":"InvalidCaller","type":"error"},{"inputs":[],"name":"InvalidOperator","type":"error"},{"inputs":[],"name":"InvalidOperatorSet","type":"error"},{"inputs":[],"name":"InvalidWadToSlash","type":"error"},{"inputs":[],"name":"ModificationAlreadyPending","type":"error"},{"inputs":[],"name":"NotMemberOfSet","type":"error"},{"inputs":[],"name":"OperatorNotSlashable","type":"error"},{"inputs":[],"name":"SameMagnitude","type":"error"},{"inputs":[],"name":"StrategiesMustBeInAscendingOrder","type":"error"},{"inputs":[],"name":"StrategyAlreadyInOperatorSet","type":"error"},{"inputs":[],"name":"StrategyNotInOperatorSet","type":"error"},{"inputs":[],"name":"UninitializedAllocationDelay","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"avs","type":"address"},{"indexed":false,"internalType":"string","name":"metadataURI","type":"string"}],"name":"AVSMetadataURIUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"avs","type":"address"},{"indexed":false,"internalType":"contract IAVSRegistrar","name":"registrar","type":"address"}],"name":"AVSRegistrarSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"uint32","name":"delay","type":"uint32"},{"indexed":false,"internalType":"uint32","name":"effectBlock","type":"uint32"}],"name":"AllocationDelaySet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint64","name":"magnitude","type":"uint64"},{"indexed":false,"internalType":"uint32","name":"effectBlock","type":"uint32"}],"name":"AllocationUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint64","name":"encumberedMagnitude","type":"uint64"}],"name":"EncumberedMagnitudeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint64","name":"maxMagnitude","type":"uint64"}],"name":"MaxMagnitudeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"}],"name":"OperatorAddedToOperatorSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"}],"name":"OperatorRemovedFromOperatorSet","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"}],"name":"OperatorSetCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"indexed":false,"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"indexed":false,"internalType":"uint256[]","name":"wadSlashed","type":"uint256[]"},{"indexed":false,"internalType":"string","name":"description","type":"string"}],"name":"OperatorSlashed","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"StrategyAddedToOperatorSet","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"StrategyRemovedFromOperatorSet","type":"event"},{"inputs":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"operatorSetId","type":"uint32"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"}],"name":"addStrategiesToOperatorSet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint16[]","name":"numToClear","type":"uint16[]"}],"name":"clearDeallocationQueue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"avs","type":"address"},{"components":[{"internalType":"uint32","name":"operatorSetId","type":"uint32"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"}],"internalType":"struct IAllocationManagerTypes.CreateSetParams[]","name":"params","type":"tuple[]"}],"name":"createOperatorSets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32[]","name":"operatorSetIds","type":"uint32[]"}],"internalType":"struct IAllocationManagerTypes.DeregisterParams","name":"params","type":"tuple"}],"name":"deregisterFromOperatorSets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"avs","type":"address"}],"name":"getAVSRegistrar","outputs":[{"internalType":"contract IAVSRegistrar","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"getAllocatableMagnitude","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"getAllocatedSets","outputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"}],"name":"getAllocatedStrategies","outputs":[{"internalType":"contract IStrategy[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"getAllocation","outputs":[{"components":[{"internalType":"uint64","name":"currentMagnitude","type":"uint64"},{"internalType":"int128","name":"pendingDiff","type":"int128"},{"internalType":"uint32","name":"effectBlock","type":"uint32"}],"internalType":"struct IAllocationManagerTypes.Allocation","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"getAllocationDelay","outputs":[{"internalType":"bool","name":"isSet","type":"bool"},{"internalType":"uint32","name":"delay","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"operators","type":"address[]"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"getAllocations","outputs":[{"components":[{"internalType":"uint64","name":"currentMagnitude","type":"uint64"},{"internalType":"int128","name":"pendingDiff","type":"int128"},{"internalType":"uint32","name":"effectBlock","type":"uint32"}],"internalType":"struct IAllocationManagerTypes.Allocation[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"getMaxMagnitude","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"operators","type":"address[]"},{"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"getMaxMagnitudes","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"}],"name":"getMaxMagnitudes","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint32","name":"blockNumber","type":"uint32"}],"name":"getMaxMagnitudesAtBlock","outputs":[{"internalType":"uint64[]","name":"","type":"uint64[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"}],"name":"getMemberCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"}],"name":"getMembers","outputs":[{"internalType":"address[]","name":"operators","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"internalType":"address[]","name":"operators","type":"address[]"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint32","name":"futureBlock","type":"uint32"}],"name":"getMinimumSlashableStake","outputs":[{"internalType":"uint256[][]","name":"slashableStake","type":"uint256[][]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"avs","type":"address"}],"name":"getOperatorSetCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"getRegisteredSets","outputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet[]","name":"operatorSets","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"}],"name":"getStrategiesInOperatorSet","outputs":[{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"getStrategyAllocations","outputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet[]","name":"","type":"tuple[]"},{"components":[{"internalType":"uint64","name":"currentMagnitude","type":"uint64"},{"internalType":"int128","name":"pendingDiff","type":"int128"},{"internalType":"uint32","name":"effectBlock","type":"uint32"}],"internalType":"struct IAllocationManagerTypes.Allocation[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"},{"internalType":"uint256","name":"initialPausedStatus","type":"uint256"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"}],"name":"isMemberOfOperatorSet","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"}],"name":"isOperatorSet","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"components":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint64[]","name":"newMagnitudes","type":"uint64[]"}],"internalType":"struct IAllocationManagerTypes.AllocateParams[]","name":"params","type":"tuple[]"}],"name":"modifyAllocations","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32[]","name":"operatorSetIds","type":"uint32[]"},{"internalType":"bytes","name":"data","type":"bytes"}],"internalType":"struct IAllocationManagerTypes.RegisterParams","name":"params","type":"tuple"}],"name":"registerForOperatorSets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"operatorSetId","type":"uint32"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"}],"name":"removeStrategiesFromOperatorSet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"contract IAVSRegistrar","name":"registrar","type":"address"}],"name":"setAVSRegistrar","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"uint32","name":"delay","type":"uint32"}],"name":"setAllocationDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"avs","type":"address"},{"components":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"uint32","name":"operatorSetId","type":"uint32"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint256[]","name":"wadsToSlash","type":"uint256[]"},{"internalType":"string","name":"description","type":"string"}],"internalType":"struct IAllocationManagerTypes.SlashingParams","name":"params","type":"tuple"}],"name":"slashOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"string","name":"metadataURI","type":"string"}],"name":"updateAVSMetadataURI","outputs":[],"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IAllocationManager.bin b/src/bindings/abi/IAllocationManager.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IAllocationManagerErrors.abi b/src/bindings/abi/IAllocationManagerErrors.abi deleted file mode 100644 index e969ab8..0000000 --- a/src/bindings/abi/IAllocationManagerErrors.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"AlreadyMemberOfSet","type":"error"},{"inputs":[],"name":"InputArrayLengthMismatch","type":"error"},{"inputs":[],"name":"InsufficientMagnitude","type":"error"},{"inputs":[],"name":"InvalidAVSRegistrar","type":"error"},{"inputs":[],"name":"InvalidAVSWithNoMetadataRegistered","type":"error"},{"inputs":[],"name":"InvalidCaller","type":"error"},{"inputs":[],"name":"InvalidOperator","type":"error"},{"inputs":[],"name":"InvalidOperatorSet","type":"error"},{"inputs":[],"name":"InvalidWadToSlash","type":"error"},{"inputs":[],"name":"ModificationAlreadyPending","type":"error"},{"inputs":[],"name":"NotMemberOfSet","type":"error"},{"inputs":[],"name":"OperatorNotSlashable","type":"error"},{"inputs":[],"name":"SameMagnitude","type":"error"},{"inputs":[],"name":"StrategiesMustBeInAscendingOrder","type":"error"},{"inputs":[],"name":"StrategyAlreadyInOperatorSet","type":"error"},{"inputs":[],"name":"StrategyNotInOperatorSet","type":"error"},{"inputs":[],"name":"UninitializedAllocationDelay","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/IAllocationManagerErrors.bin b/src/bindings/abi/IAllocationManagerErrors.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IAllocationManagerEvents.abi b/src/bindings/abi/IAllocationManagerEvents.abi deleted file mode 100644 index f723ffe..0000000 --- a/src/bindings/abi/IAllocationManagerEvents.abi +++ /dev/null @@ -1 +0,0 @@ -[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"avs","type":"address"},{"indexed":false,"internalType":"string","name":"metadataURI","type":"string"}],"name":"AVSMetadataURIUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"avs","type":"address"},{"indexed":false,"internalType":"contract IAVSRegistrar","name":"registrar","type":"address"}],"name":"AVSRegistrarSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"uint32","name":"delay","type":"uint32"},{"indexed":false,"internalType":"uint32","name":"effectBlock","type":"uint32"}],"name":"AllocationDelaySet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint64","name":"magnitude","type":"uint64"},{"indexed":false,"internalType":"uint32","name":"effectBlock","type":"uint32"}],"name":"AllocationUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint64","name":"encumberedMagnitude","type":"uint64"}],"name":"EncumberedMagnitudeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint64","name":"maxMagnitude","type":"uint64"}],"name":"MaxMagnitudeUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"}],"name":"OperatorAddedToOperatorSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"}],"name":"OperatorRemovedFromOperatorSet","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"}],"name":"OperatorSetCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"indexed":false,"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"indexed":false,"internalType":"uint256[]","name":"wadSlashed","type":"uint256[]"},{"indexed":false,"internalType":"string","name":"description","type":"string"}],"name":"OperatorSlashed","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"StrategyAddedToOperatorSet","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"StrategyRemovedFromOperatorSet","type":"event"}] \ No newline at end of file diff --git a/src/bindings/abi/IAllocationManagerEvents.bin b/src/bindings/abi/IAllocationManagerEvents.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IAllocationManagerTypes.abi b/src/bindings/abi/IAllocationManagerTypes.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/IAllocationManagerTypes.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/IAllocationManagerTypes.bin b/src/bindings/abi/IAllocationManagerTypes.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IBLSApkRegistry.abi b/src/bindings/abi/IBLSApkRegistry.abi deleted file mode 100644 index 5e5b0ed..0000000 --- a/src/bindings/abi/IBLSApkRegistry.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"BLSPubkeyAlreadyRegistered","type":"error"},{"inputs":[],"name":"BlockNumberBeforeFirstUpdate","type":"error"},{"inputs":[],"name":"BlockNumberNotLatest","type":"error"},{"inputs":[],"name":"BlockNumberTooRecent","type":"error"},{"inputs":[],"name":"InvalidBLSSignatureOrPrivateKey","type":"error"},{"inputs":[],"name":"OnlyRegistryCoordinatorOwner","type":"error"},{"inputs":[],"name":"OperatorAlreadyRegistered","type":"error"},{"inputs":[],"name":"OperatorNotRegistered","type":"error"},{"inputs":[],"name":"QuorumAlreadyExists","type":"error"},{"inputs":[],"name":"QuorumDoesNotExist","type":"error"},{"inputs":[],"name":"ZeroPubKey","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"indexed":false,"internalType":"struct BN254.G1Point","name":"pubkeyG1","type":"tuple"},{"components":[{"internalType":"uint256[2]","name":"X","type":"uint256[2]"},{"internalType":"uint256[2]","name":"Y","type":"uint256[2]"}],"indexed":false,"internalType":"struct BN254.G2Point","name":"pubkeyG2","type":"tuple"}],"name":"NewPubkeyRegistration","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"indexed":false,"internalType":"bytes","name":"quorumNumbers","type":"bytes"}],"name":"OperatorAddedToQuorums","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"indexed":false,"internalType":"bytes","name":"quorumNumbers","type":"bytes"}],"name":"OperatorRemovedFromQuorums","type":"event"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"apkHistory","outputs":[{"internalType":"bytes24","name":"","type":"bytes24"},{"internalType":"uint32","name":"","type":"uint32"},{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"currentApk","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bytes","name":"quorumNumbers","type":"bytes"}],"name":"deregisterOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"getApk","outputs":[{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint32","name":"blockNumber","type":"uint32"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getApkHashAtBlockNumberAndIndex","outputs":[{"internalType":"bytes24","name":"","type":"bytes24"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"getApkHistoryLength","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"quorumNumbers","type":"bytes"},{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"name":"getApkIndicesAtBlockNumber","outputs":[{"internalType":"uint32[]","name":"","type":"uint32[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getApkUpdateAtIndex","outputs":[{"components":[{"internalType":"bytes24","name":"apkHash","type":"bytes24"},{"internalType":"uint32","name":"updateBlockNumber","type":"uint32"},{"internalType":"uint32","name":"nextUpdateBlockNumber","type":"uint32"}],"internalType":"struct IBLSApkRegistryTypes.ApkUpdate","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"pubkeyHash","type":"bytes32"}],"name":"getOperatorFromPubkeyHash","outputs":[{"internalType":"address","name":"operator","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"getOperatorId","outputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"getRegisteredPubkey","outputs":[{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"","type":"tuple"},{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"initializeQuorum","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"operatorToPubkey","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"operatorToPubkeyHash","outputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"pubkeyHash","type":"bytes32"}],"name":"pubkeyHashToOperator","outputs":[{"internalType":"address","name":"operator","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"components":[{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"pubkeyRegistrationSignature","type":"tuple"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"pubkeyG1","type":"tuple"},{"components":[{"internalType":"uint256[2]","name":"X","type":"uint256[2]"},{"internalType":"uint256[2]","name":"Y","type":"uint256[2]"}],"internalType":"struct BN254.G2Point","name":"pubkeyG2","type":"tuple"}],"internalType":"struct IBLSApkRegistryTypes.PubkeyRegistrationParams","name":"params","type":"tuple"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"pubkeyRegistrationMessageHash","type":"tuple"}],"name":"registerBLSPublicKey","outputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bytes","name":"quorumNumbers","type":"bytes"}],"name":"registerOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"registryCoordinator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IBLSApkRegistry.bin b/src/bindings/abi/IBLSApkRegistry.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IBLSApkRegistryErrors.abi b/src/bindings/abi/IBLSApkRegistryErrors.abi deleted file mode 100644 index 5ad93bc..0000000 --- a/src/bindings/abi/IBLSApkRegistryErrors.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"BLSPubkeyAlreadyRegistered","type":"error"},{"inputs":[],"name":"BlockNumberBeforeFirstUpdate","type":"error"},{"inputs":[],"name":"BlockNumberNotLatest","type":"error"},{"inputs":[],"name":"BlockNumberTooRecent","type":"error"},{"inputs":[],"name":"InvalidBLSSignatureOrPrivateKey","type":"error"},{"inputs":[],"name":"OnlyRegistryCoordinatorOwner","type":"error"},{"inputs":[],"name":"OperatorAlreadyRegistered","type":"error"},{"inputs":[],"name":"OperatorNotRegistered","type":"error"},{"inputs":[],"name":"QuorumAlreadyExists","type":"error"},{"inputs":[],"name":"QuorumDoesNotExist","type":"error"},{"inputs":[],"name":"ZeroPubKey","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/IBLSApkRegistryErrors.bin b/src/bindings/abi/IBLSApkRegistryErrors.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IBLSApkRegistryEvents.abi b/src/bindings/abi/IBLSApkRegistryEvents.abi deleted file mode 100644 index fa544c5..0000000 --- a/src/bindings/abi/IBLSApkRegistryEvents.abi +++ /dev/null @@ -1 +0,0 @@ -[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"indexed":false,"internalType":"struct BN254.G1Point","name":"pubkeyG1","type":"tuple"},{"components":[{"internalType":"uint256[2]","name":"X","type":"uint256[2]"},{"internalType":"uint256[2]","name":"Y","type":"uint256[2]"}],"indexed":false,"internalType":"struct BN254.G2Point","name":"pubkeyG2","type":"tuple"}],"name":"NewPubkeyRegistration","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"indexed":false,"internalType":"bytes","name":"quorumNumbers","type":"bytes"}],"name":"OperatorAddedToQuorums","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"indexed":false,"internalType":"bytes","name":"quorumNumbers","type":"bytes"}],"name":"OperatorRemovedFromQuorums","type":"event"}] \ No newline at end of file diff --git a/src/bindings/abi/IBLSApkRegistryEvents.bin b/src/bindings/abi/IBLSApkRegistryEvents.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IBLSApkRegistryTypes.abi b/src/bindings/abi/IBLSApkRegistryTypes.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/IBLSApkRegistryTypes.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/IBLSApkRegistryTypes.bin b/src/bindings/abi/IBLSApkRegistryTypes.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IBLSSignatureChecker.abi b/src/bindings/abi/IBLSSignatureChecker.abi deleted file mode 100644 index 13193bd..0000000 --- a/src/bindings/abi/IBLSSignatureChecker.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"InputArrayLengthMismatch","type":"error"},{"inputs":[],"name":"InputEmptyQuorumNumbers","type":"error"},{"inputs":[],"name":"InputNonSignerLengthMismatch","type":"error"},{"inputs":[],"name":"InvalidBLSPairingKey","type":"error"},{"inputs":[],"name":"InvalidBLSSignature","type":"error"},{"inputs":[],"name":"InvalidQuorumApkHash","type":"error"},{"inputs":[],"name":"InvalidReferenceBlocknumber","type":"error"},{"inputs":[],"name":"NonSignerPubkeysNotSorted","type":"error"},{"inputs":[],"name":"OnlyRegistryCoordinatorOwner","type":"error"},{"inputs":[],"name":"StaleStakesForbidden","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"value","type":"bool"}],"name":"StaleStakesForbiddenUpdate","type":"event"},{"inputs":[],"name":"blsApkRegistry","outputs":[{"internalType":"contract IBLSApkRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"msgHash","type":"bytes32"},{"internalType":"bytes","name":"quorumNumbers","type":"bytes"},{"internalType":"uint32","name":"referenceBlockNumber","type":"uint32"},{"components":[{"internalType":"uint32[]","name":"nonSignerQuorumBitmapIndices","type":"uint32[]"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point[]","name":"nonSignerPubkeys","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point[]","name":"quorumApks","type":"tuple[]"},{"components":[{"internalType":"uint256[2]","name":"X","type":"uint256[2]"},{"internalType":"uint256[2]","name":"Y","type":"uint256[2]"}],"internalType":"struct BN254.G2Point","name":"apkG2","type":"tuple"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"sigma","type":"tuple"},{"internalType":"uint32[]","name":"quorumApkIndices","type":"uint32[]"},{"internalType":"uint32[]","name":"totalStakeIndices","type":"uint32[]"},{"internalType":"uint32[][]","name":"nonSignerStakeIndices","type":"uint32[][]"}],"internalType":"struct IBLSSignatureCheckerTypes.NonSignerStakesAndSignature","name":"nonSignerStakesAndSignature","type":"tuple"}],"name":"checkSignatures","outputs":[{"components":[{"internalType":"uint96[]","name":"signedStakeForQuorum","type":"uint96[]"},{"internalType":"uint96[]","name":"totalStakeForQuorum","type":"uint96[]"}],"internalType":"struct IBLSSignatureCheckerTypes.QuorumStakeTotals","name":"","type":"tuple"},{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"delegation","outputs":[{"internalType":"contract IDelegationManager","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registryCoordinator","outputs":[{"internalType":"contract ISlashingRegistryCoordinator","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"value","type":"bool"}],"name":"setStaleStakesForbidden","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stakeRegistry","outputs":[{"internalType":"contract IStakeRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"staleStakesForbidden","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"msgHash","type":"bytes32"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"apk","type":"tuple"},{"components":[{"internalType":"uint256[2]","name":"X","type":"uint256[2]"},{"internalType":"uint256[2]","name":"Y","type":"uint256[2]"}],"internalType":"struct BN254.G2Point","name":"apkG2","type":"tuple"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"sigma","type":"tuple"}],"name":"trySignatureAndApkVerification","outputs":[{"internalType":"bool","name":"pairingSuccessful","type":"bool"},{"internalType":"bool","name":"siganatureIsValid","type":"bool"}],"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IBLSSignatureChecker.bin b/src/bindings/abi/IBLSSignatureChecker.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IBLSSignatureCheckerErrors.abi b/src/bindings/abi/IBLSSignatureCheckerErrors.abi deleted file mode 100644 index bfd135c..0000000 --- a/src/bindings/abi/IBLSSignatureCheckerErrors.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"InputArrayLengthMismatch","type":"error"},{"inputs":[],"name":"InputEmptyQuorumNumbers","type":"error"},{"inputs":[],"name":"InputNonSignerLengthMismatch","type":"error"},{"inputs":[],"name":"InvalidBLSPairingKey","type":"error"},{"inputs":[],"name":"InvalidBLSSignature","type":"error"},{"inputs":[],"name":"InvalidQuorumApkHash","type":"error"},{"inputs":[],"name":"InvalidReferenceBlocknumber","type":"error"},{"inputs":[],"name":"NonSignerPubkeysNotSorted","type":"error"},{"inputs":[],"name":"OnlyRegistryCoordinatorOwner","type":"error"},{"inputs":[],"name":"StaleStakesForbidden","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/IBLSSignatureCheckerErrors.bin b/src/bindings/abi/IBLSSignatureCheckerErrors.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IBLSSignatureCheckerEvents.abi b/src/bindings/abi/IBLSSignatureCheckerEvents.abi deleted file mode 100644 index 517af72..0000000 --- a/src/bindings/abi/IBLSSignatureCheckerEvents.abi +++ /dev/null @@ -1 +0,0 @@ -[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"value","type":"bool"}],"name":"StaleStakesForbiddenUpdate","type":"event"}] \ No newline at end of file diff --git a/src/bindings/abi/IBLSSignatureCheckerEvents.bin b/src/bindings/abi/IBLSSignatureCheckerEvents.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IBLSSignatureCheckerTypes.abi b/src/bindings/abi/IBLSSignatureCheckerTypes.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/IBLSSignatureCheckerTypes.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/IBLSSignatureCheckerTypes.bin b/src/bindings/abi/IBLSSignatureCheckerTypes.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IDelegationManager.abi b/src/bindings/abi/IDelegationManager.abi deleted file mode 100644 index 033de77..0000000 --- a/src/bindings/abi/IDelegationManager.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"ActivelyDelegated","type":"error"},{"inputs":[],"name":"CallerCannotUndelegate","type":"error"},{"inputs":[],"name":"FullySlashed","type":"error"},{"inputs":[],"name":"InputArrayLengthMismatch","type":"error"},{"inputs":[],"name":"InputArrayLengthZero","type":"error"},{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"NotActivelyDelegated","type":"error"},{"inputs":[],"name":"OnlyAllocationManager","type":"error"},{"inputs":[],"name":"OnlyEigenPodManager","type":"error"},{"inputs":[],"name":"OnlyStrategyManagerOrEigenPodManager","type":"error"},{"inputs":[],"name":"OperatorNotRegistered","type":"error"},{"inputs":[],"name":"OperatorsCannotUndelegate","type":"error"},{"inputs":[],"name":"SaltSpent","type":"error"},{"inputs":[],"name":"SignatureExpired","type":"error"},{"inputs":[],"name":"WithdrawalDelayNotElapsed","type":"error"},{"inputs":[],"name":"WithdrawalNotQueued","type":"error"},{"inputs":[],"name":"WithdrawerNotCaller","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"address","name":"newDelegationApprover","type":"address"}],"name":"DelegationApproverUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint256","name":"newDepositScalingFactor","type":"uint256"}],"name":"DepositScalingFactorUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"string","name":"metadataURI","type":"string"}],"name":"OperatorMetadataURIUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"address","name":"delegationApprover","type":"address"}],"name":"OperatorRegistered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"OperatorSharesBurned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"OperatorSharesDecreased","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"OperatorSharesIncreased","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"withdrawalRoot","type":"bytes32"}],"name":"SlashingWithdrawalCompleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"withdrawalRoot","type":"bytes32"},{"components":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"address","name":"delegatedTo","type":"address"},{"internalType":"address","name":"withdrawer","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint32","name":"startBlock","type":"uint32"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint256[]","name":"scaledShares","type":"uint256[]"}],"indexed":false,"internalType":"struct IDelegationManagerTypes.Withdrawal","name":"withdrawal","type":"tuple"},{"indexed":false,"internalType":"uint256[]","name":"sharesToWithdraw","type":"uint256[]"}],"name":"SlashingWithdrawalQueued","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"staker","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"}],"name":"StakerDelegated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"staker","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"}],"name":"StakerForceUndelegated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"staker","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"}],"name":"StakerUndelegated","type":"event"},{"inputs":[],"name":"DELEGATION_APPROVAL_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"beaconChainETHStrategy","outputs":[{"internalType":"contract IStrategy","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint64","name":"prevMaxMagnitude","type":"uint64"},{"internalType":"uint64","name":"newMaxMagnitude","type":"uint64"}],"name":"burnOperatorShares","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"_delegationApprover","type":"address"},{"internalType":"bytes32","name":"approverSalt","type":"bytes32"},{"internalType":"uint256","name":"expiry","type":"uint256"}],"name":"calculateDelegationApprovalDigestHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"address","name":"delegatedTo","type":"address"},{"internalType":"address","name":"withdrawer","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint32","name":"startBlock","type":"uint32"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint256[]","name":"scaledShares","type":"uint256[]"}],"internalType":"struct IDelegationManagerTypes.Withdrawal","name":"withdrawal","type":"tuple"}],"name":"calculateWithdrawalRoot","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"address","name":"delegatedTo","type":"address"},{"internalType":"address","name":"withdrawer","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint32","name":"startBlock","type":"uint32"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint256[]","name":"scaledShares","type":"uint256[]"}],"internalType":"struct IDelegationManagerTypes.Withdrawal","name":"withdrawal","type":"tuple"},{"internalType":"contract IERC20[]","name":"tokens","type":"address[]"},{"internalType":"bool","name":"receiveAsTokens","type":"bool"}],"name":"completeQueuedWithdrawal","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"address","name":"delegatedTo","type":"address"},{"internalType":"address","name":"withdrawer","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint32","name":"startBlock","type":"uint32"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint256[]","name":"scaledShares","type":"uint256[]"}],"internalType":"struct IDelegationManagerTypes.Withdrawal[]","name":"withdrawals","type":"tuple[]"},{"internalType":"contract IERC20[][]","name":"tokens","type":"address[][]"},{"internalType":"bool[]","name":"receiveAsTokens","type":"bool[]"}],"name":"completeQueuedWithdrawals","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint256[]","name":"withdrawableShares","type":"uint256[]"}],"name":"convertToDepositShares","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"}],"name":"cumulativeWithdrawalsQueued","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"uint256","name":"curDepositShares","type":"uint256"},{"internalType":"uint64","name":"beaconChainSlashingFactorDecrease","type":"uint64"}],"name":"decreaseDelegatedShares","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"uint256","name":"expiry","type":"uint256"}],"internalType":"struct ISignatureUtils.SignatureWithExpiry","name":"approverSignatureAndExpiry","type":"tuple"},{"internalType":"bytes32","name":"approverSalt","type":"bytes32"}],"name":"delegateTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"}],"name":"delegatedTo","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"delegationApprover","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_delegationApprover","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"}],"name":"delegationApproverSaltIsSpent","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"depositScalingFactor","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"}],"name":"getDepositedShares","outputs":[{"internalType":"contract IStrategy[]","name":"","type":"address[]"},{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"}],"name":"getOperatorShares","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"operators","type":"address[]"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"}],"name":"getOperatorsShares","outputs":[{"internalType":"uint256[][]","name":"","type":"uint256[][]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"withdrawalRoot","type":"bytes32"}],"name":"getQueuedWithdrawal","outputs":[{"components":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"address","name":"delegatedTo","type":"address"},{"internalType":"address","name":"withdrawer","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint32","name":"startBlock","type":"uint32"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint256[]","name":"scaledShares","type":"uint256[]"}],"internalType":"struct IDelegationManagerTypes.Withdrawal","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"}],"name":"getQueuedWithdrawalRoots","outputs":[{"internalType":"bytes32[]","name":"","type":"bytes32[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"}],"name":"getQueuedWithdrawals","outputs":[{"components":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"address","name":"delegatedTo","type":"address"},{"internalType":"address","name":"withdrawer","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint32","name":"startBlock","type":"uint32"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint256[]","name":"scaledShares","type":"uint256[]"}],"internalType":"struct IDelegationManagerTypes.Withdrawal[]","name":"withdrawals","type":"tuple[]"},{"internalType":"uint256[][]","name":"shares","type":"uint256[][]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"getSlashableSharesInQueue","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"}],"name":"getWithdrawableShares","outputs":[{"internalType":"uint256[]","name":"withdrawableShares","type":"uint256[]"},{"internalType":"uint256[]","name":"depositShares","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint256","name":"prevDepositShares","type":"uint256"},{"internalType":"uint256","name":"addedShares","type":"uint256"}],"name":"increaseDelegatedShares","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"},{"internalType":"uint256","name":"initialPausedStatus","type":"uint256"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"}],"name":"isDelegated","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"isOperator","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minWithdrawalDelayBlocks","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"newDelegationApprover","type":"address"}],"name":"modifyOperatorDetails","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint256[]","name":"depositShares","type":"uint256[]"},{"internalType":"address","name":"__deprecated_withdrawer","type":"address"}],"internalType":"struct IDelegationManagerTypes.QueuedWithdrawalParams[]","name":"params","type":"tuple[]"}],"name":"queueWithdrawals","outputs":[{"internalType":"bytes32[]","name":"","type":"bytes32[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOperator","type":"address"},{"components":[{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"uint256","name":"expiry","type":"uint256"}],"internalType":"struct ISignatureUtils.SignatureWithExpiry","name":"newOperatorApproverSig","type":"tuple"},{"internalType":"bytes32","name":"approverSalt","type":"bytes32"}],"name":"redelegate","outputs":[{"internalType":"bytes32[]","name":"withdrawalRoots","type":"bytes32[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"initDelegationApprover","type":"address"},{"internalType":"uint32","name":"allocationDelay","type":"uint32"},{"internalType":"string","name":"metadataURI","type":"string"}],"name":"registerAsOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"}],"name":"undelegate","outputs":[{"internalType":"bytes32[]","name":"withdrawalRoots","type":"bytes32[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"string","name":"metadataURI","type":"string"}],"name":"updateOperatorMetadataURI","outputs":[],"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IDelegationManager.bin b/src/bindings/abi/IDelegationManager.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IDelegationManagerErrors.abi b/src/bindings/abi/IDelegationManagerErrors.abi deleted file mode 100644 index 525a5bc..0000000 --- a/src/bindings/abi/IDelegationManagerErrors.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"ActivelyDelegated","type":"error"},{"inputs":[],"name":"CallerCannotUndelegate","type":"error"},{"inputs":[],"name":"FullySlashed","type":"error"},{"inputs":[],"name":"InputArrayLengthMismatch","type":"error"},{"inputs":[],"name":"InputArrayLengthZero","type":"error"},{"inputs":[],"name":"NotActivelyDelegated","type":"error"},{"inputs":[],"name":"OnlyAllocationManager","type":"error"},{"inputs":[],"name":"OnlyEigenPodManager","type":"error"},{"inputs":[],"name":"OnlyStrategyManagerOrEigenPodManager","type":"error"},{"inputs":[],"name":"OperatorNotRegistered","type":"error"},{"inputs":[],"name":"OperatorsCannotUndelegate","type":"error"},{"inputs":[],"name":"SaltSpent","type":"error"},{"inputs":[],"name":"WithdrawalDelayNotElapsed","type":"error"},{"inputs":[],"name":"WithdrawalNotQueued","type":"error"},{"inputs":[],"name":"WithdrawerNotCaller","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/IDelegationManagerErrors.bin b/src/bindings/abi/IDelegationManagerErrors.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IDelegationManagerEvents.abi b/src/bindings/abi/IDelegationManagerEvents.abi deleted file mode 100644 index c007a4d..0000000 --- a/src/bindings/abi/IDelegationManagerEvents.abi +++ /dev/null @@ -1 +0,0 @@ -[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"address","name":"newDelegationApprover","type":"address"}],"name":"DelegationApproverUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint256","name":"newDepositScalingFactor","type":"uint256"}],"name":"DepositScalingFactorUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"string","name":"metadataURI","type":"string"}],"name":"OperatorMetadataURIUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"address","name":"delegationApprover","type":"address"}],"name":"OperatorRegistered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"OperatorSharesBurned","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"OperatorSharesDecreased","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"}],"name":"OperatorSharesIncreased","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"withdrawalRoot","type":"bytes32"}],"name":"SlashingWithdrawalCompleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"withdrawalRoot","type":"bytes32"},{"components":[{"internalType":"address","name":"staker","type":"address"},{"internalType":"address","name":"delegatedTo","type":"address"},{"internalType":"address","name":"withdrawer","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint32","name":"startBlock","type":"uint32"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint256[]","name":"scaledShares","type":"uint256[]"}],"indexed":false,"internalType":"struct IDelegationManagerTypes.Withdrawal","name":"withdrawal","type":"tuple"},{"indexed":false,"internalType":"uint256[]","name":"sharesToWithdraw","type":"uint256[]"}],"name":"SlashingWithdrawalQueued","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"staker","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"}],"name":"StakerDelegated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"staker","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"}],"name":"StakerForceUndelegated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"staker","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"}],"name":"StakerUndelegated","type":"event"}] \ No newline at end of file diff --git a/src/bindings/abi/IDelegationManagerEvents.bin b/src/bindings/abi/IDelegationManagerEvents.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IDelegationManagerTypes.abi b/src/bindings/abi/IDelegationManagerTypes.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/IDelegationManagerTypes.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/IDelegationManagerTypes.bin b/src/bindings/abi/IDelegationManagerTypes.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IERC20.abi b/src/bindings/abi/IERC20.abi deleted file mode 100644 index 83e67df..0000000 --- a/src/bindings/abi/IERC20.abi +++ /dev/null @@ -1 +0,0 @@ -[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IERC20.bin b/src/bindings/abi/IERC20.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IIndexRegistry.abi b/src/bindings/abi/IIndexRegistry.abi deleted file mode 100644 index 5c08460..0000000 --- a/src/bindings/abi/IIndexRegistry.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"OnlyRegistryCoordinator","type":"error"},{"inputs":[],"name":"OperatorIdDoesNotExist","type":"error"},{"inputs":[],"name":"QuorumDoesNotExist","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"indexed":false,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"uint32","name":"newOperatorIndex","type":"uint32"}],"name":"QuorumIndexUpdate","type":"event"},{"inputs":[],"name":"OPERATOR_DOES_NOT_EXIST_ID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"bytes32","name":"operatorId","type":"bytes32"}],"name":"currentOperatorIndex","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"bytes","name":"quorumNumbers","type":"bytes"}],"name":"deregisterOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint32","name":"operatorIndex","type":"uint32"}],"name":"getLatestOperatorUpdate","outputs":[{"components":[{"internalType":"uint32","name":"fromBlockNumber","type":"uint32"},{"internalType":"bytes32","name":"operatorId","type":"bytes32"}],"internalType":"struct IIndexRegistryTypes.OperatorUpdate","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"getLatestQuorumUpdate","outputs":[{"components":[{"internalType":"uint32","name":"fromBlockNumber","type":"uint32"},{"internalType":"uint32","name":"numOperators","type":"uint32"}],"internalType":"struct IIndexRegistryTypes.QuorumUpdate","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint32","name":"blockNumber","type":"uint32"}],"name":"getOperatorListAtBlockNumber","outputs":[{"internalType":"bytes32[]","name":"","type":"bytes32[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint32","name":"operatorIndex","type":"uint32"},{"internalType":"uint32","name":"arrayIndex","type":"uint32"}],"name":"getOperatorUpdateAtIndex","outputs":[{"components":[{"internalType":"uint32","name":"fromBlockNumber","type":"uint32"},{"internalType":"bytes32","name":"operatorId","type":"bytes32"}],"internalType":"struct IIndexRegistryTypes.OperatorUpdate","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint32","name":"quorumIndex","type":"uint32"}],"name":"getQuorumUpdateAtIndex","outputs":[{"components":[{"internalType":"uint32","name":"fromBlockNumber","type":"uint32"},{"internalType":"uint32","name":"numOperators","type":"uint32"}],"internalType":"struct IIndexRegistryTypes.QuorumUpdate","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"initializeQuorum","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"bytes","name":"quorumNumbers","type":"bytes"}],"name":"registerOperator","outputs":[{"internalType":"uint32[]","name":"","type":"uint32[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"registryCoordinator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"totalOperatorsForQuorum","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IIndexRegistry.bin b/src/bindings/abi/IIndexRegistry.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IIndexRegistryErrors.abi b/src/bindings/abi/IIndexRegistryErrors.abi deleted file mode 100644 index 9e80197..0000000 --- a/src/bindings/abi/IIndexRegistryErrors.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"OnlyRegistryCoordinator","type":"error"},{"inputs":[],"name":"OperatorIdDoesNotExist","type":"error"},{"inputs":[],"name":"QuorumDoesNotExist","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/IIndexRegistryErrors.bin b/src/bindings/abi/IIndexRegistryErrors.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IIndexRegistryEvents.abi b/src/bindings/abi/IIndexRegistryEvents.abi deleted file mode 100644 index 29e943b..0000000 --- a/src/bindings/abi/IIndexRegistryEvents.abi +++ /dev/null @@ -1 +0,0 @@ -[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"indexed":false,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"uint32","name":"newOperatorIndex","type":"uint32"}],"name":"QuorumIndexUpdate","type":"event"}] \ No newline at end of file diff --git a/src/bindings/abi/IIndexRegistryEvents.bin b/src/bindings/abi/IIndexRegistryEvents.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IIndexRegistryTypes.abi b/src/bindings/abi/IIndexRegistryTypes.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/IIndexRegistryTypes.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/IIndexRegistryTypes.bin b/src/bindings/abi/IIndexRegistryTypes.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IInstantSlasher.abi b/src/bindings/abi/IInstantSlasher.abi deleted file mode 100644 index ca153ae..0000000 --- a/src/bindings/abi/IInstantSlasher.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"OnlySlasher","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"slashingRequestId","type":"uint256"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":true,"internalType":"uint32","name":"operatorSetId","type":"uint32"},{"indexed":false,"internalType":"uint256[]","name":"wadsToSlash","type":"uint256[]"},{"indexed":false,"internalType":"string","name":"description","type":"string"}],"name":"OperatorSlashed","type":"event"},{"inputs":[{"components":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"uint32","name":"operatorSetId","type":"uint32"},{"internalType":"contract IStrategy[]","name":"strategies","type":"address[]"},{"internalType":"uint256[]","name":"wadsToSlash","type":"uint256[]"},{"internalType":"string","name":"description","type":"string"}],"internalType":"struct IAllocationManagerTypes.SlashingParams","name":"_slashingParams","type":"tuple"}],"name":"fulfillSlashingRequest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"nextRequestId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"slasher","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IInstantSlasher.bin b/src/bindings/abi/IInstantSlasher.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IPauserRegistry.abi b/src/bindings/abi/IPauserRegistry.abi deleted file mode 100644 index 670917a..0000000 --- a/src/bindings/abi/IPauserRegistry.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"InputAddressZero","type":"error"},{"inputs":[],"name":"OnlyUnpauser","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"pauser","type":"address"},{"indexed":false,"internalType":"bool","name":"canPause","type":"bool"}],"name":"PauserStatusChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"previousUnpauser","type":"address"},{"indexed":false,"internalType":"address","name":"newUnpauser","type":"address"}],"name":"UnpauserChanged","type":"event"},{"inputs":[{"internalType":"address","name":"pauser","type":"address"}],"name":"isPauser","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unpauser","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IPauserRegistry.bin b/src/bindings/abi/IPauserRegistry.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IRewardsCoordinator.abi b/src/bindings/abi/IRewardsCoordinator.abi deleted file mode 100644 index ddce311..0000000 --- a/src/bindings/abi/IRewardsCoordinator.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"AmountExceedsMax","type":"error"},{"inputs":[],"name":"AmountIsZero","type":"error"},{"inputs":[],"name":"DurationExceedsMax","type":"error"},{"inputs":[],"name":"EarningsNotGreaterThanClaimed","type":"error"},{"inputs":[],"name":"InputArrayLengthMismatch","type":"error"},{"inputs":[],"name":"InputArrayLengthZero","type":"error"},{"inputs":[],"name":"InvalidAddressZero","type":"error"},{"inputs":[],"name":"InvalidCalculationIntervalSecondsRemainder","type":"error"},{"inputs":[],"name":"InvalidClaimProof","type":"error"},{"inputs":[],"name":"InvalidDurationRemainder","type":"error"},{"inputs":[],"name":"InvalidEarner","type":"error"},{"inputs":[],"name":"InvalidEarnerLeafIndex","type":"error"},{"inputs":[],"name":"InvalidGenesisRewardsTimestampRemainder","type":"error"},{"inputs":[],"name":"InvalidOperatorSet","type":"error"},{"inputs":[],"name":"InvalidRoot","type":"error"},{"inputs":[],"name":"InvalidRootIndex","type":"error"},{"inputs":[],"name":"InvalidStartTimestampRemainder","type":"error"},{"inputs":[],"name":"InvalidTokenLeafIndex","type":"error"},{"inputs":[],"name":"NewRootMustBeForNewCalculatedPeriod","type":"error"},{"inputs":[],"name":"OperatorsNotInAscendingOrder","type":"error"},{"inputs":[],"name":"PreviousSplitPending","type":"error"},{"inputs":[],"name":"RewardsEndTimestampNotElapsed","type":"error"},{"inputs":[],"name":"RootAlreadyActivated","type":"error"},{"inputs":[],"name":"RootDisabled","type":"error"},{"inputs":[],"name":"RootNotActivated","type":"error"},{"inputs":[],"name":"SplitExceedsMax","type":"error"},{"inputs":[],"name":"StartTimestampTooFarInFuture","type":"error"},{"inputs":[],"name":"StartTimestampTooFarInPast","type":"error"},{"inputs":[],"name":"StrategiesNotInAscendingOrder","type":"error"},{"inputs":[],"name":"StrategyNotWhitelisted","type":"error"},{"inputs":[],"name":"SubmissionNotRetroactive","type":"error"},{"inputs":[],"name":"UnauthorizedCaller","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"avs","type":"address"},{"indexed":true,"internalType":"uint256","name":"submissionNonce","type":"uint256"},{"indexed":true,"internalType":"bytes32","name":"rewardsSubmissionHash","type":"bytes32"},{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"}],"indexed":false,"internalType":"struct IRewardsCoordinatorTypes.RewardsSubmission","name":"rewardsSubmission","type":"tuple"}],"name":"AVSRewardsSubmissionCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint32","name":"oldActivationDelay","type":"uint32"},{"indexed":false,"internalType":"uint32","name":"newActivationDelay","type":"uint32"}],"name":"ActivationDelaySet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"earner","type":"address"},{"indexed":true,"internalType":"address","name":"oldClaimer","type":"address"},{"indexed":true,"internalType":"address","name":"claimer","type":"address"}],"name":"ClaimerForSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"oldDefaultOperatorSplitBips","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newDefaultOperatorSplitBips","type":"uint16"}],"name":"DefaultOperatorSplitBipsSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint32","name":"rootIndex","type":"uint32"}],"name":"DistributionRootDisabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint32","name":"rootIndex","type":"uint32"},{"indexed":true,"internalType":"bytes32","name":"root","type":"bytes32"},{"indexed":true,"internalType":"uint32","name":"rewardsCalculationEndTimestamp","type":"uint32"},{"indexed":false,"internalType":"uint32","name":"activatedAt","type":"uint32"}],"name":"DistributionRootSubmitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":true,"internalType":"address","name":"avs","type":"address"},{"indexed":false,"internalType":"uint32","name":"activatedAt","type":"uint32"},{"indexed":false,"internalType":"uint16","name":"oldOperatorAVSSplitBips","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newOperatorAVSSplitBips","type":"uint16"}],"name":"OperatorAVSSplitBipsSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"avs","type":"address"},{"indexed":true,"internalType":"bytes32","name":"operatorDirectedRewardsSubmissionHash","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"submissionNonce","type":"uint256"},{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"components":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct IRewardsCoordinatorTypes.OperatorReward[]","name":"operatorRewards","type":"tuple[]"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"},{"internalType":"string","name":"description","type":"string"}],"indexed":false,"internalType":"struct IRewardsCoordinatorTypes.OperatorDirectedRewardsSubmission","name":"operatorDirectedRewardsSubmission","type":"tuple"}],"name":"OperatorDirectedAVSRewardsSubmissionCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"bytes32","name":"operatorDirectedRewardsSubmissionHash","type":"bytes32"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"indexed":false,"internalType":"uint256","name":"submissionNonce","type":"uint256"},{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"components":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct IRewardsCoordinatorTypes.OperatorReward[]","name":"operatorRewards","type":"tuple[]"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"},{"internalType":"string","name":"description","type":"string"}],"indexed":false,"internalType":"struct IRewardsCoordinatorTypes.OperatorDirectedRewardsSubmission","name":"operatorDirectedRewardsSubmission","type":"tuple"}],"name":"OperatorDirectedOperatorSetRewardsSubmissionCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"uint32","name":"activatedAt","type":"uint32"},{"indexed":false,"internalType":"uint16","name":"oldOperatorPISplitBips","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newOperatorPISplitBips","type":"uint16"}],"name":"OperatorPISplitBipsSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"indexed":false,"internalType":"uint32","name":"activatedAt","type":"uint32"},{"indexed":false,"internalType":"uint16","name":"oldOperatorSetSplitBips","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newOperatorSetSplitBips","type":"uint16"}],"name":"OperatorSetSplitBipsSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"root","type":"bytes32"},{"indexed":true,"internalType":"address","name":"earner","type":"address"},{"indexed":true,"internalType":"address","name":"claimer","type":"address"},{"indexed":true,"internalType":"address","name":"recipient","type":"address"},{"indexed":false,"internalType":"contract IERC20","name":"token","type":"address"},{"indexed":false,"internalType":"uint256","name":"claimedAmount","type":"uint256"}],"name":"RewardsClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"rewardsForAllSubmitter","type":"address"},{"indexed":true,"internalType":"bool","name":"oldValue","type":"bool"},{"indexed":true,"internalType":"bool","name":"newValue","type":"bool"}],"name":"RewardsForAllSubmitterSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"submitter","type":"address"},{"indexed":true,"internalType":"uint256","name":"submissionNonce","type":"uint256"},{"indexed":true,"internalType":"bytes32","name":"rewardsSubmissionHash","type":"bytes32"},{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"}],"indexed":false,"internalType":"struct IRewardsCoordinatorTypes.RewardsSubmission","name":"rewardsSubmission","type":"tuple"}],"name":"RewardsSubmissionForAllCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"tokenHopper","type":"address"},{"indexed":true,"internalType":"uint256","name":"submissionNonce","type":"uint256"},{"indexed":true,"internalType":"bytes32","name":"rewardsSubmissionHash","type":"bytes32"},{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"}],"indexed":false,"internalType":"struct IRewardsCoordinatorTypes.RewardsSubmission","name":"rewardsSubmission","type":"tuple"}],"name":"RewardsSubmissionForAllEarnersCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldRewardsUpdater","type":"address"},{"indexed":true,"internalType":"address","name":"newRewardsUpdater","type":"address"}],"name":"RewardsUpdaterSet","type":"event"},{"inputs":[],"name":"CALCULATION_INTERVAL_SECONDS","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"GENESIS_REWARDS_TIMESTAMP","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_FUTURE_LENGTH","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_RETROACTIVE_LENGTH","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_REWARDS_DURATION","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"activationDelay","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"earner","type":"address"},{"internalType":"bytes32","name":"earnerTokenRoot","type":"bytes32"}],"internalType":"struct IRewardsCoordinatorTypes.EarnerTreeMerkleLeaf","name":"leaf","type":"tuple"}],"name":"calculateEarnerLeafHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"cumulativeEarnings","type":"uint256"}],"internalType":"struct IRewardsCoordinatorTypes.TokenTreeMerkleLeaf","name":"leaf","type":"tuple"}],"name":"calculateTokenLeafHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"rootIndex","type":"uint32"},{"internalType":"uint32","name":"earnerIndex","type":"uint32"},{"internalType":"bytes","name":"earnerTreeProof","type":"bytes"},{"components":[{"internalType":"address","name":"earner","type":"address"},{"internalType":"bytes32","name":"earnerTokenRoot","type":"bytes32"}],"internalType":"struct IRewardsCoordinatorTypes.EarnerTreeMerkleLeaf","name":"earnerLeaf","type":"tuple"},{"internalType":"uint32[]","name":"tokenIndices","type":"uint32[]"},{"internalType":"bytes[]","name":"tokenTreeProofs","type":"bytes[]"},{"components":[{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"cumulativeEarnings","type":"uint256"}],"internalType":"struct IRewardsCoordinatorTypes.TokenTreeMerkleLeaf[]","name":"tokenLeaves","type":"tuple[]"}],"internalType":"struct IRewardsCoordinatorTypes.RewardsMerkleClaim","name":"claim","type":"tuple"}],"name":"checkClaim","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"earner","type":"address"}],"name":"claimerFor","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"}],"internalType":"struct IRewardsCoordinatorTypes.RewardsSubmission[]","name":"rewardsSubmissions","type":"tuple[]"}],"name":"createAVSRewardsSubmission","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"avs","type":"address"},{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"components":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct IRewardsCoordinatorTypes.OperatorReward[]","name":"operatorRewards","type":"tuple[]"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"},{"internalType":"string","name":"description","type":"string"}],"internalType":"struct IRewardsCoordinatorTypes.OperatorDirectedRewardsSubmission[]","name":"operatorDirectedRewardsSubmissions","type":"tuple[]"}],"name":"createOperatorDirectedAVSRewardsSubmission","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"components":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct IRewardsCoordinatorTypes.OperatorReward[]","name":"operatorRewards","type":"tuple[]"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"},{"internalType":"string","name":"description","type":"string"}],"internalType":"struct IRewardsCoordinatorTypes.OperatorDirectedRewardsSubmission[]","name":"operatorDirectedRewardsSubmissions","type":"tuple[]"}],"name":"createOperatorDirectedOperatorSetRewardsSubmission","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"}],"internalType":"struct IRewardsCoordinatorTypes.RewardsSubmission[]","name":"rewardsSubmissions","type":"tuple[]"}],"name":"createRewardsForAllEarners","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"}],"internalType":"struct IRewardsCoordinatorTypes.RewardsSubmission[]","name":"rewardsSubmissions","type":"tuple[]"}],"name":"createRewardsForAllSubmission","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"claimer","type":"address"},{"internalType":"contract IERC20","name":"token","type":"address"}],"name":"cumulativeClaimed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currRewardsCalculationEndTimestamp","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"defaultOperatorSplitBips","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"rootIndex","type":"uint32"}],"name":"disableRoot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getCurrentClaimableDistributionRoot","outputs":[{"components":[{"internalType":"bytes32","name":"root","type":"bytes32"},{"internalType":"uint32","name":"rewardsCalculationEndTimestamp","type":"uint32"},{"internalType":"uint32","name":"activatedAt","type":"uint32"},{"internalType":"bool","name":"disabled","type":"bool"}],"internalType":"struct IRewardsCoordinatorTypes.DistributionRoot","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentDistributionRoot","outputs":[{"components":[{"internalType":"bytes32","name":"root","type":"bytes32"},{"internalType":"uint32","name":"rewardsCalculationEndTimestamp","type":"uint32"},{"internalType":"uint32","name":"activatedAt","type":"uint32"},{"internalType":"bool","name":"disabled","type":"bool"}],"internalType":"struct IRewardsCoordinatorTypes.DistributionRoot","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getDistributionRootAtIndex","outputs":[{"components":[{"internalType":"bytes32","name":"root","type":"bytes32"},{"internalType":"uint32","name":"rewardsCalculationEndTimestamp","type":"uint32"},{"internalType":"uint32","name":"activatedAt","type":"uint32"},{"internalType":"bool","name":"disabled","type":"bool"}],"internalType":"struct IRewardsCoordinatorTypes.DistributionRoot","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDistributionRootsLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"avs","type":"address"}],"name":"getOperatorAVSSplit","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"getOperatorPISplit","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"}],"name":"getOperatorSetSplit","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"rootHash","type":"bytes32"}],"name":"getRootIndexFromHash","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"},{"internalType":"uint256","name":"initialPausedStatus","type":"uint256"},{"internalType":"address","name":"_rewardsUpdater","type":"address"},{"internalType":"uint32","name":"_activationDelay","type":"uint32"},{"internalType":"uint16","name":"_defaultSplitBips","type":"uint16"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"rootIndex","type":"uint32"},{"internalType":"uint32","name":"earnerIndex","type":"uint32"},{"internalType":"bytes","name":"earnerTreeProof","type":"bytes"},{"components":[{"internalType":"address","name":"earner","type":"address"},{"internalType":"bytes32","name":"earnerTokenRoot","type":"bytes32"}],"internalType":"struct IRewardsCoordinatorTypes.EarnerTreeMerkleLeaf","name":"earnerLeaf","type":"tuple"},{"internalType":"uint32[]","name":"tokenIndices","type":"uint32[]"},{"internalType":"bytes[]","name":"tokenTreeProofs","type":"bytes[]"},{"components":[{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"cumulativeEarnings","type":"uint256"}],"internalType":"struct IRewardsCoordinatorTypes.TokenTreeMerkleLeaf[]","name":"tokenLeaves","type":"tuple[]"}],"internalType":"struct IRewardsCoordinatorTypes.RewardsMerkleClaim","name":"claim","type":"tuple"},{"internalType":"address","name":"recipient","type":"address"}],"name":"processClaim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"rootIndex","type":"uint32"},{"internalType":"uint32","name":"earnerIndex","type":"uint32"},{"internalType":"bytes","name":"earnerTreeProof","type":"bytes"},{"components":[{"internalType":"address","name":"earner","type":"address"},{"internalType":"bytes32","name":"earnerTokenRoot","type":"bytes32"}],"internalType":"struct IRewardsCoordinatorTypes.EarnerTreeMerkleLeaf","name":"earnerLeaf","type":"tuple"},{"internalType":"uint32[]","name":"tokenIndices","type":"uint32[]"},{"internalType":"bytes[]","name":"tokenTreeProofs","type":"bytes[]"},{"components":[{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"cumulativeEarnings","type":"uint256"}],"internalType":"struct IRewardsCoordinatorTypes.TokenTreeMerkleLeaf[]","name":"tokenLeaves","type":"tuple[]"}],"internalType":"struct IRewardsCoordinatorTypes.RewardsMerkleClaim[]","name":"claims","type":"tuple[]"},{"internalType":"address","name":"recipient","type":"address"}],"name":"processClaims","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rewardsUpdater","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"_activationDelay","type":"uint32"}],"name":"setActivationDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"claimer","type":"address"}],"name":"setClaimerFor","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"earner","type":"address"},{"internalType":"address","name":"claimer","type":"address"}],"name":"setClaimerFor","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"split","type":"uint16"}],"name":"setDefaultOperatorSplit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint16","name":"split","type":"uint16"}],"name":"setOperatorAVSSplit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"uint16","name":"split","type":"uint16"}],"name":"setOperatorPISplit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"internalType":"uint16","name":"split","type":"uint16"}],"name":"setOperatorSetSplit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_submitter","type":"address"},{"internalType":"bool","name":"_newValue","type":"bool"}],"name":"setRewardsForAllSubmitter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_rewardsUpdater","type":"address"}],"name":"setRewardsUpdater","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"root","type":"bytes32"},{"internalType":"uint32","name":"rewardsCalculationEndTimestamp","type":"uint32"}],"name":"submitRoot","outputs":[],"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IRewardsCoordinator.bin b/src/bindings/abi/IRewardsCoordinator.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IRewardsCoordinatorErrors.abi b/src/bindings/abi/IRewardsCoordinatorErrors.abi deleted file mode 100644 index 0df8bb2..0000000 --- a/src/bindings/abi/IRewardsCoordinatorErrors.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"AmountExceedsMax","type":"error"},{"inputs":[],"name":"AmountIsZero","type":"error"},{"inputs":[],"name":"DurationExceedsMax","type":"error"},{"inputs":[],"name":"EarningsNotGreaterThanClaimed","type":"error"},{"inputs":[],"name":"InputArrayLengthMismatch","type":"error"},{"inputs":[],"name":"InputArrayLengthZero","type":"error"},{"inputs":[],"name":"InvalidAddressZero","type":"error"},{"inputs":[],"name":"InvalidCalculationIntervalSecondsRemainder","type":"error"},{"inputs":[],"name":"InvalidClaimProof","type":"error"},{"inputs":[],"name":"InvalidDurationRemainder","type":"error"},{"inputs":[],"name":"InvalidEarner","type":"error"},{"inputs":[],"name":"InvalidEarnerLeafIndex","type":"error"},{"inputs":[],"name":"InvalidGenesisRewardsTimestampRemainder","type":"error"},{"inputs":[],"name":"InvalidOperatorSet","type":"error"},{"inputs":[],"name":"InvalidRoot","type":"error"},{"inputs":[],"name":"InvalidRootIndex","type":"error"},{"inputs":[],"name":"InvalidStartTimestampRemainder","type":"error"},{"inputs":[],"name":"InvalidTokenLeafIndex","type":"error"},{"inputs":[],"name":"NewRootMustBeForNewCalculatedPeriod","type":"error"},{"inputs":[],"name":"OperatorsNotInAscendingOrder","type":"error"},{"inputs":[],"name":"PreviousSplitPending","type":"error"},{"inputs":[],"name":"RewardsEndTimestampNotElapsed","type":"error"},{"inputs":[],"name":"RootAlreadyActivated","type":"error"},{"inputs":[],"name":"RootDisabled","type":"error"},{"inputs":[],"name":"RootNotActivated","type":"error"},{"inputs":[],"name":"SplitExceedsMax","type":"error"},{"inputs":[],"name":"StartTimestampTooFarInFuture","type":"error"},{"inputs":[],"name":"StartTimestampTooFarInPast","type":"error"},{"inputs":[],"name":"StrategiesNotInAscendingOrder","type":"error"},{"inputs":[],"name":"StrategyNotWhitelisted","type":"error"},{"inputs":[],"name":"SubmissionNotRetroactive","type":"error"},{"inputs":[],"name":"UnauthorizedCaller","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/IRewardsCoordinatorErrors.bin b/src/bindings/abi/IRewardsCoordinatorErrors.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IRewardsCoordinatorEvents.abi b/src/bindings/abi/IRewardsCoordinatorEvents.abi deleted file mode 100644 index 78602c7..0000000 --- a/src/bindings/abi/IRewardsCoordinatorEvents.abi +++ /dev/null @@ -1 +0,0 @@ -[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"avs","type":"address"},{"indexed":true,"internalType":"uint256","name":"submissionNonce","type":"uint256"},{"indexed":true,"internalType":"bytes32","name":"rewardsSubmissionHash","type":"bytes32"},{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"}],"indexed":false,"internalType":"struct IRewardsCoordinatorTypes.RewardsSubmission","name":"rewardsSubmission","type":"tuple"}],"name":"AVSRewardsSubmissionCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint32","name":"oldActivationDelay","type":"uint32"},{"indexed":false,"internalType":"uint32","name":"newActivationDelay","type":"uint32"}],"name":"ActivationDelaySet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"earner","type":"address"},{"indexed":true,"internalType":"address","name":"oldClaimer","type":"address"},{"indexed":true,"internalType":"address","name":"claimer","type":"address"}],"name":"ClaimerForSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"oldDefaultOperatorSplitBips","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newDefaultOperatorSplitBips","type":"uint16"}],"name":"DefaultOperatorSplitBipsSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint32","name":"rootIndex","type":"uint32"}],"name":"DistributionRootDisabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint32","name":"rootIndex","type":"uint32"},{"indexed":true,"internalType":"bytes32","name":"root","type":"bytes32"},{"indexed":true,"internalType":"uint32","name":"rewardsCalculationEndTimestamp","type":"uint32"},{"indexed":false,"internalType":"uint32","name":"activatedAt","type":"uint32"}],"name":"DistributionRootSubmitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":true,"internalType":"address","name":"avs","type":"address"},{"indexed":false,"internalType":"uint32","name":"activatedAt","type":"uint32"},{"indexed":false,"internalType":"uint16","name":"oldOperatorAVSSplitBips","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newOperatorAVSSplitBips","type":"uint16"}],"name":"OperatorAVSSplitBipsSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"avs","type":"address"},{"indexed":true,"internalType":"bytes32","name":"operatorDirectedRewardsSubmissionHash","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"submissionNonce","type":"uint256"},{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"components":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct IRewardsCoordinatorTypes.OperatorReward[]","name":"operatorRewards","type":"tuple[]"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"},{"internalType":"string","name":"description","type":"string"}],"indexed":false,"internalType":"struct IRewardsCoordinatorTypes.OperatorDirectedRewardsSubmission","name":"operatorDirectedRewardsSubmission","type":"tuple"}],"name":"OperatorDirectedAVSRewardsSubmissionCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"bytes32","name":"operatorDirectedRewardsSubmissionHash","type":"bytes32"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"indexed":false,"internalType":"uint256","name":"submissionNonce","type":"uint256"},{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"components":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct IRewardsCoordinatorTypes.OperatorReward[]","name":"operatorRewards","type":"tuple[]"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"},{"internalType":"string","name":"description","type":"string"}],"indexed":false,"internalType":"struct IRewardsCoordinatorTypes.OperatorDirectedRewardsSubmission","name":"operatorDirectedRewardsSubmission","type":"tuple"}],"name":"OperatorDirectedOperatorSetRewardsSubmissionCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"uint32","name":"activatedAt","type":"uint32"},{"indexed":false,"internalType":"uint16","name":"oldOperatorPISplitBips","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newOperatorPISplitBips","type":"uint16"}],"name":"OperatorPISplitBipsSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32","name":"id","type":"uint32"}],"indexed":false,"internalType":"struct OperatorSet","name":"operatorSet","type":"tuple"},{"indexed":false,"internalType":"uint32","name":"activatedAt","type":"uint32"},{"indexed":false,"internalType":"uint16","name":"oldOperatorSetSplitBips","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"newOperatorSetSplitBips","type":"uint16"}],"name":"OperatorSetSplitBipsSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bytes32","name":"root","type":"bytes32"},{"indexed":true,"internalType":"address","name":"earner","type":"address"},{"indexed":true,"internalType":"address","name":"claimer","type":"address"},{"indexed":true,"internalType":"address","name":"recipient","type":"address"},{"indexed":false,"internalType":"contract IERC20","name":"token","type":"address"},{"indexed":false,"internalType":"uint256","name":"claimedAmount","type":"uint256"}],"name":"RewardsClaimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"rewardsForAllSubmitter","type":"address"},{"indexed":true,"internalType":"bool","name":"oldValue","type":"bool"},{"indexed":true,"internalType":"bool","name":"newValue","type":"bool"}],"name":"RewardsForAllSubmitterSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"submitter","type":"address"},{"indexed":true,"internalType":"uint256","name":"submissionNonce","type":"uint256"},{"indexed":true,"internalType":"bytes32","name":"rewardsSubmissionHash","type":"bytes32"},{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"}],"indexed":false,"internalType":"struct IRewardsCoordinatorTypes.RewardsSubmission","name":"rewardsSubmission","type":"tuple"}],"name":"RewardsSubmissionForAllCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"tokenHopper","type":"address"},{"indexed":true,"internalType":"uint256","name":"submissionNonce","type":"uint256"},{"indexed":true,"internalType":"bytes32","name":"rewardsSubmissionHash","type":"bytes32"},{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"}],"indexed":false,"internalType":"struct IRewardsCoordinatorTypes.RewardsSubmission","name":"rewardsSubmission","type":"tuple"}],"name":"RewardsSubmissionForAllEarnersCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldRewardsUpdater","type":"address"},{"indexed":true,"internalType":"address","name":"newRewardsUpdater","type":"address"}],"name":"RewardsUpdaterSet","type":"event"}] \ No newline at end of file diff --git a/src/bindings/abi/IRewardsCoordinatorEvents.bin b/src/bindings/abi/IRewardsCoordinatorEvents.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IRewardsCoordinatorTypes.abi b/src/bindings/abi/IRewardsCoordinatorTypes.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/IRewardsCoordinatorTypes.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/IRewardsCoordinatorTypes.bin b/src/bindings/abi/IRewardsCoordinatorTypes.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IServiceManager.abi b/src/bindings/abi/IServiceManager.abi deleted file mode 100644 index 4380ca1..0000000 --- a/src/bindings/abi/IServiceManager.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"DelayPeriodNotPassed","type":"error"},{"inputs":[],"name":"OnlyRegistryCoordinator","type":"error"},{"inputs":[],"name":"OnlyRewardsInitiator","type":"error"},{"inputs":[],"name":"OnlyStakeRegistry","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"prevRewardsInitiator","type":"address"},{"indexed":false,"internalType":"address","name":"newRewardsInitiator","type":"address"}],"name":"RewardsInitiatorUpdated","type":"event"},{"inputs":[{"internalType":"address","name":"admin","type":"address"}],"name":"addPendingAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"avsDirectory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IRewardsCoordinatorTypes.StrategyAndMultiplier[]","name":"strategiesAndMultipliers","type":"tuple[]"},{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint32","name":"startTimestamp","type":"uint32"},{"internalType":"uint32","name":"duration","type":"uint32"}],"internalType":"struct IRewardsCoordinatorTypes.RewardsSubmission[]","name":"rewardsSubmissions","type":"tuple[]"}],"name":"createAVSRewardsSubmission","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"deregisterOperatorFromAVS","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"uint32[]","name":"operatorSetIds","type":"uint32[]"}],"name":"deregisterOperatorFromOperatorSets","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"getOperatorRestakedStrategies","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRestakeableStrategies","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"uint256","name":"expiry","type":"uint256"}],"internalType":"struct ISignatureUtils.SignatureWithSaltAndExpiry","name":"operatorSignature","type":"tuple"}],"name":"registerOperatorToAVS","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"admin","type":"address"}],"name":"removeAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"appointee","type":"address"},{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes4","name":"selector","type":"bytes4"}],"name":"removeAppointee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"pendingAdmin","type":"address"}],"name":"removePendingAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"appointee","type":"address"},{"internalType":"address","name":"target","type":"address"},{"internalType":"bytes4","name":"selector","type":"bytes4"}],"name":"setAppointee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"metadataURI","type":"string"}],"name":"updateAVSMetadataURI","outputs":[],"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IServiceManager.bin b/src/bindings/abi/IServiceManager.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IServiceManagerErrors.abi b/src/bindings/abi/IServiceManagerErrors.abi deleted file mode 100644 index a6fbea9..0000000 --- a/src/bindings/abi/IServiceManagerErrors.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"DelayPeriodNotPassed","type":"error"},{"inputs":[],"name":"OnlyRegistryCoordinator","type":"error"},{"inputs":[],"name":"OnlyRewardsInitiator","type":"error"},{"inputs":[],"name":"OnlyStakeRegistry","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/IServiceManagerErrors.bin b/src/bindings/abi/IServiceManagerErrors.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IServiceManagerEvents.abi b/src/bindings/abi/IServiceManagerEvents.abi deleted file mode 100644 index e2986b5..0000000 --- a/src/bindings/abi/IServiceManagerEvents.abi +++ /dev/null @@ -1 +0,0 @@ -[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"prevRewardsInitiator","type":"address"},{"indexed":false,"internalType":"address","name":"newRewardsInitiator","type":"address"}],"name":"RewardsInitiatorUpdated","type":"event"}] \ No newline at end of file diff --git a/src/bindings/abi/IServiceManagerEvents.bin b/src/bindings/abi/IServiceManagerEvents.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IServiceManagerUI.abi b/src/bindings/abi/IServiceManagerUI.abi deleted file mode 100644 index b098ddb..0000000 --- a/src/bindings/abi/IServiceManagerUI.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"avsDirectory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"deregisterOperatorFromAVS","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"getOperatorRestakedStrategies","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRestakeableStrategies","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"components":[{"internalType":"bytes","name":"signature","type":"bytes"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"uint256","name":"expiry","type":"uint256"}],"internalType":"struct ISignatureUtils.SignatureWithSaltAndExpiry","name":"operatorSignature","type":"tuple"}],"name":"registerOperatorToAVS","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"metadataURI","type":"string"}],"name":"updateAVSMetadataURI","outputs":[],"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IServiceManagerUI.bin b/src/bindings/abi/IServiceManagerUI.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/ISignatureUtils.abi b/src/bindings/abi/ISignatureUtils.abi deleted file mode 100644 index 1464ee2..0000000 --- a/src/bindings/abi/ISignatureUtils.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"InvalidSignature","type":"error"},{"inputs":[],"name":"SignatureExpired","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/ISignatureUtils.bin b/src/bindings/abi/ISignatureUtils.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/ISlasher.abi b/src/bindings/abi/ISlasher.abi deleted file mode 100644 index d15d50e..0000000 --- a/src/bindings/abi/ISlasher.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"OnlySlasher","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"slashingRequestId","type":"uint256"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":true,"internalType":"uint32","name":"operatorSetId","type":"uint32"},{"indexed":false,"internalType":"uint256[]","name":"wadsToSlash","type":"uint256[]"},{"indexed":false,"internalType":"string","name":"description","type":"string"}],"name":"OperatorSlashed","type":"event"},{"inputs":[],"name":"nextRequestId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"slasher","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/ISlasher.bin b/src/bindings/abi/ISlasher.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/ISlasherErrors.abi b/src/bindings/abi/ISlasherErrors.abi deleted file mode 100644 index 449ab23..0000000 --- a/src/bindings/abi/ISlasherErrors.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"OnlySlasher","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/ISlasherErrors.bin b/src/bindings/abi/ISlasherErrors.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/ISlasherEvents.abi b/src/bindings/abi/ISlasherEvents.abi deleted file mode 100644 index 5f7531a..0000000 --- a/src/bindings/abi/ISlasherEvents.abi +++ /dev/null @@ -1 +0,0 @@ -[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"slashingRequestId","type":"uint256"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":true,"internalType":"uint32","name":"operatorSetId","type":"uint32"},{"indexed":false,"internalType":"uint256[]","name":"wadsToSlash","type":"uint256[]"},{"indexed":false,"internalType":"string","name":"description","type":"string"}],"name":"OperatorSlashed","type":"event"}] \ No newline at end of file diff --git a/src/bindings/abi/ISlasherEvents.bin b/src/bindings/abi/ISlasherEvents.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/ISlasherTypes.abi b/src/bindings/abi/ISlasherTypes.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/ISlasherTypes.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/ISlasherTypes.bin b/src/bindings/abi/ISlasherTypes.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/ISlashingRegistryCoordinator.abi b/src/bindings/abi/ISlashingRegistryCoordinator.abi deleted file mode 100644 index c9546b7..0000000 --- a/src/bindings/abi/ISlashingRegistryCoordinator.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"AlreadyRegisteredForQuorums","type":"error"},{"inputs":[],"name":"BitmapCannotBeZero","type":"error"},{"inputs":[],"name":"BitmapEmpty","type":"error"},{"inputs":[],"name":"CannotChurnSelf","type":"error"},{"inputs":[],"name":"CannotKickOperatorAboveThreshold","type":"error"},{"inputs":[],"name":"CannotReregisterYet","type":"error"},{"inputs":[],"name":"ChurnApproverSaltUsed","type":"error"},{"inputs":[],"name":"InputLengthMismatch","type":"error"},{"inputs":[],"name":"InsufficientStakeForChurn","type":"error"},{"inputs":[],"name":"InvalidAVS","type":"error"},{"inputs":[],"name":"InvalidRegistrationType","type":"error"},{"inputs":[],"name":"MaxQuorumsReached","type":"error"},{"inputs":[],"name":"NotRegistered","type":"error"},{"inputs":[],"name":"NotRegisteredForQuorum","type":"error"},{"inputs":[],"name":"NotSorted","type":"error"},{"inputs":[],"name":"OnlyAllocationManager","type":"error"},{"inputs":[],"name":"OnlyEjector","type":"error"},{"inputs":[],"name":"QuorumDoesNotExist","type":"error"},{"inputs":[],"name":"QuorumOperatorCountMismatch","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"prevChurnApprover","type":"address"},{"indexed":false,"internalType":"address","name":"newChurnApprover","type":"address"}],"name":"ChurnApproverUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"prevEjector","type":"address"},{"indexed":false,"internalType":"address","name":"newEjector","type":"address"}],"name":"EjectorUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":true,"internalType":"bytes32","name":"operatorId","type":"bytes32"}],"name":"OperatorDeregistered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":true,"internalType":"bytes32","name":"operatorId","type":"bytes32"}],"name":"OperatorRegistered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"components":[{"internalType":"uint32","name":"maxOperatorCount","type":"uint32"},{"internalType":"uint16","name":"kickBIPsOfOperatorStake","type":"uint16"},{"internalType":"uint16","name":"kickBIPsOfTotalStake","type":"uint16"}],"indexed":false,"internalType":"struct ISlashingRegistryCoordinatorTypes.OperatorSetParam","name":"operatorSetParams","type":"tuple"}],"name":"OperatorSetParamsUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"indexed":false,"internalType":"string","name":"socket","type":"string"}],"name":"OperatorSocketUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"uint256","name":"blocknumber","type":"uint256"}],"name":"QuorumBlockNumberUpdated","type":"event"},{"inputs":[],"name":"OPERATOR_CHURN_APPROVAL_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PUBKEY_REGISTRATION_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"allocationManager","outputs":[{"internalType":"contract IAllocationManager","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"avs","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"blsApkRegistry","outputs":[{"internalType":"contract IBLSApkRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"registeringOperator","type":"address"},{"internalType":"bytes32","name":"registeringOperatorId","type":"bytes32"},{"components":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"address","name":"operator","type":"address"}],"internalType":"struct ISlashingRegistryCoordinatorTypes.OperatorKickParam[]","name":"operatorKickParams","type":"tuple[]"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"uint256","name":"expiry","type":"uint256"}],"name":"calculateOperatorChurnApprovalDigestHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"calculatePubkeyRegistrationMessageHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"churnApprover","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"maxOperatorCount","type":"uint32"},{"internalType":"uint16","name":"kickBIPsOfOperatorStake","type":"uint16"},{"internalType":"uint16","name":"kickBIPsOfTotalStake","type":"uint16"}],"internalType":"struct ISlashingRegistryCoordinatorTypes.OperatorSetParam","name":"operatorSetParams","type":"tuple"},{"internalType":"uint96","name":"minimumStake","type":"uint96"},{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IStakeRegistryTypes.StrategyParams[]","name":"strategyParams","type":"tuple[]"},{"internalType":"uint32","name":"lookAheadPeriod","type":"uint32"}],"name":"createSlashableStakeQuorum","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"maxOperatorCount","type":"uint32"},{"internalType":"uint16","name":"kickBIPsOfOperatorStake","type":"uint16"},{"internalType":"uint16","name":"kickBIPsOfTotalStake","type":"uint16"}],"internalType":"struct ISlashingRegistryCoordinatorTypes.OperatorSetParam","name":"operatorSetParams","type":"tuple"},{"internalType":"uint96","name":"minimumStake","type":"uint96"},{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IStakeRegistryTypes.StrategyParams[]","name":"strategyParams","type":"tuple[]"}],"name":"createTotalDelegatedStakeQuorum","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32[]","name":"operatorSetIds","type":"uint32[]"}],"name":"deregisterOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bytes","name":"quorumNumbers","type":"bytes"}],"name":"ejectOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"ejectionCooldown","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ejector","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"}],"name":"getCurrentQuorumBitmap","outputs":[{"internalType":"uint192","name":"","type":"uint192"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"getOperator","outputs":[{"components":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"enum ISlashingRegistryCoordinatorTypes.OperatorStatus","name":"status","type":"uint8"}],"internalType":"struct ISlashingRegistryCoordinatorTypes.OperatorInfo","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"}],"name":"getOperatorFromId","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"getOperatorId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"getOperatorSetParams","outputs":[{"components":[{"internalType":"uint32","name":"maxOperatorCount","type":"uint32"},{"internalType":"uint16","name":"kickBIPsOfOperatorStake","type":"uint16"},{"internalType":"uint16","name":"kickBIPsOfTotalStake","type":"uint16"}],"internalType":"struct ISlashingRegistryCoordinatorTypes.OperatorSetParam","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"getOperatorStatus","outputs":[{"internalType":"enum ISlashingRegistryCoordinatorTypes.OperatorStatus","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"uint32","name":"blockNumber","type":"uint32"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getQuorumBitmapAtBlockNumberByIndex","outputs":[{"internalType":"uint192","name":"","type":"uint192"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"}],"name":"getQuorumBitmapHistoryLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"blockNumber","type":"uint32"},{"internalType":"bytes32[]","name":"operatorIds","type":"bytes32[]"}],"name":"getQuorumBitmapIndicesAtBlockNumber","outputs":[{"internalType":"uint32[]","name":"","type":"uint32[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getQuorumBitmapUpdateByIndex","outputs":[{"components":[{"internalType":"uint32","name":"updateBlockNumber","type":"uint32"},{"internalType":"uint32","name":"nextUpdateBlockNumber","type":"uint32"},{"internalType":"uint192","name":"quorumBitmap","type":"uint192"}],"internalType":"struct ISlashingRegistryCoordinatorTypes.QuorumBitmapUpdate","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"indexRegistry","outputs":[{"internalType":"contract IIndexRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"salt","type":"bytes32"}],"name":"isChurnApproverSaltUsed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"lastEjectionTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"numRegistries","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"}],"name":"pubkeyRegistrationMessageHash","outputs":[{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"quorumCount","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"quorumUpdateBlockNumber","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"avs","type":"address"},{"internalType":"uint32[]","name":"operatorSetIds","type":"uint32[]"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"registerOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"registries","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_avs","type":"address"}],"name":"setAVS","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_churnApprover","type":"address"}],"name":"setChurnApprover","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_ejectionCooldown","type":"uint256"}],"name":"setEjectionCooldown","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_ejector","type":"address"}],"name":"setEjector","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"components":[{"internalType":"uint32","name":"maxOperatorCount","type":"uint32"},{"internalType":"uint16","name":"kickBIPsOfOperatorStake","type":"uint16"},{"internalType":"uint16","name":"kickBIPsOfTotalStake","type":"uint16"}],"internalType":"struct ISlashingRegistryCoordinatorTypes.OperatorSetParam","name":"operatorSetParams","type":"tuple"}],"name":"setOperatorSetParams","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"socketRegistry","outputs":[{"internalType":"contract ISocketRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"stakeRegistry","outputs":[{"internalType":"contract IStakeRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"avs","type":"address"}],"name":"supportsAVS","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"operators","type":"address[]"}],"name":"updateOperators","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[][]","name":"operatorsPerQuorum","type":"address[][]"},{"internalType":"bytes","name":"quorumNumbers","type":"bytes"}],"name":"updateOperatorsForQuorum","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"socket","type":"string"}],"name":"updateSocket","outputs":[],"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/ISlashingRegistryCoordinator.bin b/src/bindings/abi/ISlashingRegistryCoordinator.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/ISlashingRegistryCoordinatorErrors.abi b/src/bindings/abi/ISlashingRegistryCoordinatorErrors.abi deleted file mode 100644 index 43e3ba5..0000000 --- a/src/bindings/abi/ISlashingRegistryCoordinatorErrors.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"AlreadyRegisteredForQuorums","type":"error"},{"inputs":[],"name":"BitmapCannotBeZero","type":"error"},{"inputs":[],"name":"BitmapEmpty","type":"error"},{"inputs":[],"name":"CannotChurnSelf","type":"error"},{"inputs":[],"name":"CannotKickOperatorAboveThreshold","type":"error"},{"inputs":[],"name":"CannotReregisterYet","type":"error"},{"inputs":[],"name":"ChurnApproverSaltUsed","type":"error"},{"inputs":[],"name":"InputLengthMismatch","type":"error"},{"inputs":[],"name":"InsufficientStakeForChurn","type":"error"},{"inputs":[],"name":"InvalidAVS","type":"error"},{"inputs":[],"name":"InvalidRegistrationType","type":"error"},{"inputs":[],"name":"MaxQuorumsReached","type":"error"},{"inputs":[],"name":"NotRegistered","type":"error"},{"inputs":[],"name":"NotRegisteredForQuorum","type":"error"},{"inputs":[],"name":"NotSorted","type":"error"},{"inputs":[],"name":"OnlyAllocationManager","type":"error"},{"inputs":[],"name":"OnlyEjector","type":"error"},{"inputs":[],"name":"QuorumDoesNotExist","type":"error"},{"inputs":[],"name":"QuorumOperatorCountMismatch","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/ISlashingRegistryCoordinatorErrors.bin b/src/bindings/abi/ISlashingRegistryCoordinatorErrors.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/ISlashingRegistryCoordinatorEvents.abi b/src/bindings/abi/ISlashingRegistryCoordinatorEvents.abi deleted file mode 100644 index ba38bc7..0000000 --- a/src/bindings/abi/ISlashingRegistryCoordinatorEvents.abi +++ /dev/null @@ -1 +0,0 @@ -[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"prevChurnApprover","type":"address"},{"indexed":false,"internalType":"address","name":"newChurnApprover","type":"address"}],"name":"ChurnApproverUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"prevEjector","type":"address"},{"indexed":false,"internalType":"address","name":"newEjector","type":"address"}],"name":"EjectorUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":true,"internalType":"bytes32","name":"operatorId","type":"bytes32"}],"name":"OperatorDeregistered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":true,"internalType":"bytes32","name":"operatorId","type":"bytes32"}],"name":"OperatorRegistered","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"components":[{"internalType":"uint32","name":"maxOperatorCount","type":"uint32"},{"internalType":"uint16","name":"kickBIPsOfOperatorStake","type":"uint16"},{"internalType":"uint16","name":"kickBIPsOfTotalStake","type":"uint16"}],"indexed":false,"internalType":"struct ISlashingRegistryCoordinatorTypes.OperatorSetParam","name":"operatorSetParams","type":"tuple"}],"name":"OperatorSetParamsUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"indexed":false,"internalType":"string","name":"socket","type":"string"}],"name":"OperatorSocketUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"uint256","name":"blocknumber","type":"uint256"}],"name":"QuorumBlockNumberUpdated","type":"event"}] \ No newline at end of file diff --git a/src/bindings/abi/ISlashingRegistryCoordinatorEvents.bin b/src/bindings/abi/ISlashingRegistryCoordinatorEvents.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/ISlashingRegistryCoordinatorTypes.abi b/src/bindings/abi/ISlashingRegistryCoordinatorTypes.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/ISlashingRegistryCoordinatorTypes.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/ISlashingRegistryCoordinatorTypes.bin b/src/bindings/abi/ISlashingRegistryCoordinatorTypes.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/ISocketRegistry.abi b/src/bindings/abi/ISocketRegistry.abi deleted file mode 100644 index a86b4c5..0000000 --- a/src/bindings/abi/ISocketRegistry.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"OnlySlashingRegistryCoordinator","type":"error"},{"inputs":[{"internalType":"bytes32","name":"_operatorId","type":"bytes32"}],"name":"getOperatorSocket","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_operatorId","type":"bytes32"},{"internalType":"string","name":"_socket","type":"string"}],"name":"setOperatorSocket","outputs":[],"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/ISocketRegistry.bin b/src/bindings/abi/ISocketRegistry.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/ISocketRegistryErrors.abi b/src/bindings/abi/ISocketRegistryErrors.abi deleted file mode 100644 index 7239b17..0000000 --- a/src/bindings/abi/ISocketRegistryErrors.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"OnlySlashingRegistryCoordinator","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/ISocketRegistryErrors.bin b/src/bindings/abi/ISocketRegistryErrors.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IStakeRegistry.abi b/src/bindings/abi/IStakeRegistry.abi deleted file mode 100644 index 9e37dc9..0000000 --- a/src/bindings/abi/IStakeRegistry.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"BelowMinimumStakeRequirement","type":"error"},{"inputs":[],"name":"EmptyStakeHistory","type":"error"},{"inputs":[],"name":"InputArrayLengthMismatch","type":"error"},{"inputs":[],"name":"InputArrayLengthZero","type":"error"},{"inputs":[],"name":"InputDuplicateStrategy","type":"error"},{"inputs":[],"name":"InputMultiplierZero","type":"error"},{"inputs":[],"name":"InvalidBlockNumber","type":"error"},{"inputs":[],"name":"OnlySlashingRegistryCoordinator","type":"error"},{"inputs":[],"name":"OnlySlashingRegistryCoordinatorOwner","type":"error"},{"inputs":[],"name":"QuorumAlreadyExists","type":"error"},{"inputs":[],"name":"QuorumDoesNotExist","type":"error"},{"inputs":[],"name":"QuorumNotSlashable","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint32","name":"oldLookAheadBlocks","type":"uint32"},{"indexed":false,"internalType":"uint32","name":"newLookAheadBlocks","type":"uint32"}],"name":"LookAheadPeriodChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"uint96","name":"minimumStake","type":"uint96"}],"name":"MinimumStakeForQuorumUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"indexed":false,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"uint96","name":"stake","type":"uint96"}],"name":"OperatorStakeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"QuorumCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"enum IStakeRegistryTypes.StakeType","name":"newStakeType","type":"uint8"}],"name":"StakeTypeSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"StrategyAddedToQuorum","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint256","name":"multiplier","type":"uint256"}],"name":"StrategyMultiplierUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"StrategyRemovedFromQuorum","type":"event"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IStakeRegistryTypes.StrategyParams[]","name":"strategyParams","type":"tuple[]"}],"name":"addStrategies","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"delegation","outputs":[{"internalType":"contract IDelegationManager","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"bytes","name":"quorumNumbers","type":"bytes"}],"name":"deregisterOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"getCurrentStake","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"getCurrentTotalStake","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"getLatestStakeUpdate","outputs":[{"components":[{"internalType":"uint32","name":"updateBlockNumber","type":"uint32"},{"internalType":"uint32","name":"nextUpdateBlockNumber","type":"uint32"},{"internalType":"uint96","name":"stake","type":"uint96"}],"internalType":"struct IStakeRegistryTypes.StakeUpdate","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint32","name":"blockNumber","type":"uint32"}],"name":"getStakeAtBlockNumber","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint32","name":"blockNumber","type":"uint32"},{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getStakeAtBlockNumberAndIndex","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"getStakeHistory","outputs":[{"components":[{"internalType":"uint32","name":"updateBlockNumber","type":"uint32"},{"internalType":"uint32","name":"nextUpdateBlockNumber","type":"uint32"},{"internalType":"uint96","name":"stake","type":"uint96"}],"internalType":"struct IStakeRegistryTypes.StakeUpdate[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"getStakeHistoryLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getStakeUpdateAtIndex","outputs":[{"components":[{"internalType":"uint32","name":"updateBlockNumber","type":"uint32"},{"internalType":"uint32","name":"nextUpdateBlockNumber","type":"uint32"},{"internalType":"uint96","name":"stake","type":"uint96"}],"internalType":"struct IStakeRegistryTypes.StakeUpdate","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint32","name":"blockNumber","type":"uint32"}],"name":"getStakeUpdateIndexAtBlockNumber","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint32","name":"blockNumber","type":"uint32"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getTotalStakeAtBlockNumberFromIndex","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"getTotalStakeHistoryLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"blockNumber","type":"uint32"},{"internalType":"bytes","name":"quorumNumbers","type":"bytes"}],"name":"getTotalStakeIndicesAtBlockNumber","outputs":[{"internalType":"uint32[]","name":"","type":"uint32[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getTotalStakeUpdateAtIndex","outputs":[{"components":[{"internalType":"uint32","name":"updateBlockNumber","type":"uint32"},{"internalType":"uint32","name":"nextUpdateBlockNumber","type":"uint32"},{"internalType":"uint96","name":"stake","type":"uint96"}],"internalType":"struct IStakeRegistryTypes.StakeUpdate","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint96","name":"minimumStake","type":"uint96"},{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IStakeRegistryTypes.StrategyParams[]","name":"strategyParams","type":"tuple[]"}],"name":"initializeDelegatedStakeQuorum","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint96","name":"minimumStake","type":"uint96"},{"internalType":"uint32","name":"lookAheadPeriod","type":"uint32"},{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IStakeRegistryTypes.StrategyParams[]","name":"strategyParams","type":"tuple[]"}],"name":"initializeSlashableStakeQuorum","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"minimumStakeForQuorum","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint256[]","name":"strategyIndices","type":"uint256[]"},{"internalType":"uint96[]","name":"newMultipliers","type":"uint96[]"}],"name":"modifyStrategyParams","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"internalType":"bytes","name":"quorumNumbers","type":"bytes"}],"name":"registerOperator","outputs":[{"internalType":"uint96[]","name":"operatorStakes","type":"uint96[]"},{"internalType":"uint96[]","name":"totalStakes","type":"uint96[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint256[]","name":"indicesToRemove","type":"uint256[]"}],"name":"removeStrategies","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint96","name":"minimumStake","type":"uint96"}],"name":"setMinimumStakeForQuorum","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint32","name":"lookAheadBlocks","type":"uint32"}],"name":"setSlashableStakeLookahead","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"strategyParamsByIndex","outputs":[{"components":[{"internalType":"contract IStrategy","name":"strategy","type":"address"},{"internalType":"uint96","name":"multiplier","type":"uint96"}],"internalType":"struct IStakeRegistryTypes.StrategyParams","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"strategyParamsLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"operators","type":"address[]"},{"internalType":"bytes32[]","name":"operatorIds","type":"bytes32[]"},{"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"updateOperatorsStake","outputs":[{"internalType":"bool[]","name":"","type":"bool[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"internalType":"address","name":"operator","type":"address"}],"name":"weightOfOperatorForQuorum","outputs":[{"internalType":"uint96","name":"","type":"uint96"}],"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IStakeRegistry.bin b/src/bindings/abi/IStakeRegistry.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IStakeRegistryErrors.abi b/src/bindings/abi/IStakeRegistryErrors.abi deleted file mode 100644 index dc52ac9..0000000 --- a/src/bindings/abi/IStakeRegistryErrors.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"BelowMinimumStakeRequirement","type":"error"},{"inputs":[],"name":"EmptyStakeHistory","type":"error"},{"inputs":[],"name":"InputArrayLengthMismatch","type":"error"},{"inputs":[],"name":"InputArrayLengthZero","type":"error"},{"inputs":[],"name":"InputDuplicateStrategy","type":"error"},{"inputs":[],"name":"InputMultiplierZero","type":"error"},{"inputs":[],"name":"InvalidBlockNumber","type":"error"},{"inputs":[],"name":"OnlySlashingRegistryCoordinator","type":"error"},{"inputs":[],"name":"OnlySlashingRegistryCoordinatorOwner","type":"error"},{"inputs":[],"name":"QuorumAlreadyExists","type":"error"},{"inputs":[],"name":"QuorumDoesNotExist","type":"error"},{"inputs":[],"name":"QuorumNotSlashable","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/IStakeRegistryErrors.bin b/src/bindings/abi/IStakeRegistryErrors.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IStakeRegistryEvents.abi b/src/bindings/abi/IStakeRegistryEvents.abi deleted file mode 100644 index 9a771a3..0000000 --- a/src/bindings/abi/IStakeRegistryEvents.abi +++ /dev/null @@ -1 +0,0 @@ -[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint32","name":"oldLookAheadBlocks","type":"uint32"},{"indexed":false,"internalType":"uint32","name":"newLookAheadBlocks","type":"uint32"}],"name":"LookAheadPeriodChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"uint96","name":"minimumStake","type":"uint96"}],"name":"MinimumStakeForQuorumUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"operatorId","type":"bytes32"},{"indexed":false,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"uint96","name":"stake","type":"uint96"}],"name":"OperatorStakeUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"}],"name":"QuorumCreated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"enum IStakeRegistryTypes.StakeType","name":"newStakeType","type":"uint8"}],"name":"StakeTypeSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"StrategyAddedToQuorum","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"},{"indexed":false,"internalType":"uint256","name":"multiplier","type":"uint256"}],"name":"StrategyMultiplierUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint8","name":"quorumNumber","type":"uint8"},{"indexed":false,"internalType":"contract IStrategy","name":"strategy","type":"address"}],"name":"StrategyRemovedFromQuorum","type":"event"}] \ No newline at end of file diff --git a/src/bindings/abi/IStakeRegistryEvents.bin b/src/bindings/abi/IStakeRegistryEvents.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IStakeRegistryTypes.abi b/src/bindings/abi/IStakeRegistryTypes.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/IStakeRegistryTypes.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/IStakeRegistryTypes.bin b/src/bindings/abi/IStakeRegistryTypes.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IStrategy.abi b/src/bindings/abi/IStrategy.abi deleted file mode 100644 index 97566ee..0000000 --- a/src/bindings/abi/IStrategy.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"BalanceExceedsMaxTotalDeposits","type":"error"},{"inputs":[],"name":"MaxPerDepositExceedsMax","type":"error"},{"inputs":[],"name":"NewSharesZero","type":"error"},{"inputs":[],"name":"OnlyStrategyManager","type":"error"},{"inputs":[],"name":"OnlyUnderlyingToken","type":"error"},{"inputs":[],"name":"TotalSharesExceedsMax","type":"error"},{"inputs":[],"name":"WithdrawalAmountExceedsTotalDeposits","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"rate","type":"uint256"}],"name":"ExchangeRateEmitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"contract IERC20","name":"token","type":"address"},{"indexed":false,"internalType":"uint8","name":"decimals","type":"uint8"}],"name":"StrategyTokenSet","type":"event"},{"inputs":[{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"deposit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"explanation","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"shares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountShares","type":"uint256"}],"name":"sharesToUnderlying","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountShares","type":"uint256"}],"name":"sharesToUnderlyingView","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountUnderlying","type":"uint256"}],"name":"underlyingToShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountUnderlying","type":"uint256"}],"name":"underlyingToSharesView","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"underlyingToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"userUnderlying","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"userUnderlyingView","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"contract IERC20","name":"token","type":"address"},{"internalType":"uint256","name":"amountShares","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/IStrategy.bin b/src/bindings/abi/IStrategy.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IStrategyErrors.abi b/src/bindings/abi/IStrategyErrors.abi deleted file mode 100644 index 7bf5726..0000000 --- a/src/bindings/abi/IStrategyErrors.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"BalanceExceedsMaxTotalDeposits","type":"error"},{"inputs":[],"name":"MaxPerDepositExceedsMax","type":"error"},{"inputs":[],"name":"NewSharesZero","type":"error"},{"inputs":[],"name":"OnlyStrategyManager","type":"error"},{"inputs":[],"name":"OnlyUnderlyingToken","type":"error"},{"inputs":[],"name":"TotalSharesExceedsMax","type":"error"},{"inputs":[],"name":"WithdrawalAmountExceedsTotalDeposits","type":"error"}] \ No newline at end of file diff --git a/src/bindings/abi/IStrategyErrors.bin b/src/bindings/abi/IStrategyErrors.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/IStrategyEvents.abi b/src/bindings/abi/IStrategyEvents.abi deleted file mode 100644 index fd1a6b8..0000000 --- a/src/bindings/abi/IStrategyEvents.abi +++ /dev/null @@ -1 +0,0 @@ -[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"rate","type":"uint256"}],"name":"ExchangeRateEmitted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"contract IERC20","name":"token","type":"address"},{"indexed":false,"internalType":"uint8","name":"decimals","type":"uint8"}],"name":"StrategyTokenSet","type":"event"}] \ No newline at end of file diff --git a/src/bindings/abi/IStrategyEvents.bin b/src/bindings/abi/IStrategyEvents.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/Math.abi b/src/bindings/abi/Math.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/Math.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/Math.bin b/src/bindings/abi/Math.bin deleted file mode 100644 index dc41d98..0000000 --- a/src/bindings/abi/Math.bin +++ /dev/null @@ -1 +0,0 @@ -6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea264697066735822122023a0bb303e6247040f9584a646f36077c516a7d30a907ee4d2f0302398f7e0df64736f6c634300081c0033 \ No newline at end of file diff --git a/src/bindings/abi/OperatorSetLib.abi b/src/bindings/abi/OperatorSetLib.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/OperatorSetLib.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/OperatorSetLib.bin b/src/bindings/abi/OperatorSetLib.bin deleted file mode 100644 index d627429..0000000 --- a/src/bindings/abi/OperatorSetLib.bin +++ /dev/null @@ -1 +0,0 @@ -6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea264697066735822122090ef78afe2f14b0a81e3c9504e9e0022b1b2c35ecd3e6e102163077cf2167d1264736f6c634300081c0033 \ No newline at end of file diff --git a/src/bindings/abi/Ownable.abi b/src/bindings/abi/Ownable.abi deleted file mode 100644 index ad5df4d..0000000 --- a/src/bindings/abi/Ownable.abi +++ /dev/null @@ -1 +0,0 @@ -[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/Ownable.bin b/src/bindings/abi/Ownable.bin deleted file mode 100644 index e69de29..0000000 diff --git a/src/bindings/abi/PaymentContract.abi b/src/bindings/abi/PaymentContract.abi deleted file mode 100644 index ae9214b..0000000 --- a/src/bindings/abi/PaymentContract.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"ethAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokenAmount","type":"uint256"}],"name":"RewardsDistributed","type":"event"},{"inputs":[],"name":"deposit","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"distributeRewardsToOperators","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"mockWETH","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardsToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"serviceManager","outputs":[{"internalType":"contract IServiceManager","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_serviceManager","type":"address"},{"internalType":"address","name":"_rewardsToken","type":"address"},{"internalType":"address","name":"_mockWETH","type":"address"}],"name":"setEigenLayerAddresses","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"_to","type":"address"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/PaymentContract.bin b/src/bindings/abi/PaymentContract.bin deleted file mode 100644 index 00afa79..0000000 --- a/src/bindings/abi/PaymentContract.bin +++ /dev/null @@ -1 +0,0 @@ -608080604052346026575f80546001600160a01b03191633179055610607908161002b8239f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c90816317b6376314610326575080633998fdd3146102fe57806351cff8d9146102325780638da5cb5b1461020b578063d0e30db0146101ac578063d1af0c7d14610184578063e3d41dcc1461015c5763f5853fed14610074575f80fd5b34610158576060366003190112610158576004356001600160a01b03811690819003610158576024356001600160a01b03811690819003610158576044356001600160a01b0381169290839003610158575f546001600160a01b03163303610113576001600160601b0360a01b60015416176001556001600160601b0360a01b60025416176002556001600160601b0360a01b60035416176003555f80f35b60405162461bcd60e51b815260206004820152601c60248201527f4f6e6c79206f776e65722063616e2073657420616464726573736573000000006044820152606490fd5b5f80fd5b34610158575f366003190112610158576003546040516001600160a01b039091168152602090f35b34610158575f366003190112610158576002546040516001600160a01b039091168152602090f35b5f36600319011261015857655af3107a400034036101c657005b60405162461bcd60e51b815260206004820152601c60248201527f4d7573742073656e642065786163746c7920302e3030303120455448000000006044820152606490fd5b34610158575f366003190112610158575f546040516001600160a01b039091168152602090f35b34610158576020366003190112610158576004356001600160a01b03811690819003610158575f546001600160a01b031633036102b9575f8080809347905af161027a610596565b501561028257005b60405162461bcd60e51b815260206004820152600f60248201526e15da5d1a191c985dc819985a5b1959608a1b6044820152606490fd5b60405162461bcd60e51b815260206004820152601760248201527f4f6e6c79206f776e65722063616e2077697468647261770000000000000000006044820152606490fd5b34610158575f366003190112610158576001546040516001600160a01b039091168152602090f35b34610158575f36600319011261015857479081156104c25750604061034a8161054f565b60018152601f1982015f5b81811061049157506103668361054f565b90600182525f5b818110610472575050906103e99161038361052f565b6112348152612710602082015261039982610575565b526103a381610575565b506002546001600160a01b03166103b86104fb565b9182526020820152848482015263ffffffff4216606082015262093a8060808201526103e382610575565b52610575565b505f8080808560018060a01b038254165af1610403610596565b5015610439577f29e98ba00d07f171959c4ddcd2f3020debc7c52cf537a034d7e664340d098c6c918151908082526020820152a1005b5162461bcd60e51b8152602060048201526013602482015272115512081d1c985b9cd9995c8819985a5b1959606a1b6044820152606490fd5b60209061047d61052f565b5f81525f838201528282860101520161036d565b60209061049c6104fb565b606081525f838201525f868201525f60608201525f608082015282828601015201610355565b62461bcd60e51b81526020600482015260146024820152734e6f2045544820746f206469737472696275746560601b6044820152606490fd5b6040519060a0820182811067ffffffffffffffff82111761051b57604052565b634e487b7160e01b5f52604160045260245ffd5b604051906040820182811067ffffffffffffffff82111761051b57604052565b6040519190601f01601f1916820167ffffffffffffffff81118382101761051b57604052565b8051156105825760200190565b634e487b7160e01b5f52603260045260245ffd5b3d156105cc573d9067ffffffffffffffff821161051b576105c0601f8301601f191660200161054f565b9182523d5f602084013e565b60609056fea26469706673582212207e0fd33b5484ec2aff25b7dcc30a0dfd8cd43db34b378a3cafac671c285866f764736f6c634300081c0033 \ No newline at end of file diff --git a/src/bindings/abi/SafeCastUpgradeable.abi b/src/bindings/abi/SafeCastUpgradeable.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/SafeCastUpgradeable.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/SafeCastUpgradeable.bin b/src/bindings/abi/SafeCastUpgradeable.bin deleted file mode 100644 index 45dd7a0..0000000 --- a/src/bindings/abi/SafeCastUpgradeable.bin +++ /dev/null @@ -1 +0,0 @@ -6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea26469706673582212200804b2a212d619ed6744d9cf55b7a1b14f7e5882476d6aae4e484eaa35efda3a64736f6c634300081c0033 \ No newline at end of file diff --git a/src/bindings/abi/SlashingLib.abi b/src/bindings/abi/SlashingLib.abi deleted file mode 100644 index 0637a08..0000000 --- a/src/bindings/abi/SlashingLib.abi +++ /dev/null @@ -1 +0,0 @@ -[] \ No newline at end of file diff --git a/src/bindings/abi/SlashingLib.bin b/src/bindings/abi/SlashingLib.bin deleted file mode 100644 index ba1e4b1..0000000 --- a/src/bindings/abi/SlashingLib.bin +++ /dev/null @@ -1 +0,0 @@ -6080806040523460175760399081601c823930815050f35b5f80fdfe5f80fdfea2646970667358221220b227dcc8adef9454e8d9ff61cf2fb6eea562f0d72d3e294dcd7fb12295303fc964736f6c634300081c0033 \ No newline at end of file diff --git a/src/bindings/abi/StateTracker.abi b/src/bindings/abi/StateTracker.abi deleted file mode 100644 index c0bb3ef..0000000 --- a/src/bindings/abi/StateTracker.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[],"name":"stateTransitionCount","outputs":[{"internalType":"uint256","name":"count","type":"uint256"}],"stateMutability":"view","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/StateTracker.bin b/src/bindings/abi/StateTracker.bin deleted file mode 100644 index 64cfedc..0000000 --- a/src/bindings/abi/StateTracker.bin +++ /dev/null @@ -1 +0,0 @@ -608080604052346013576094908160188239f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c63f4833e20146023575f80fd5b34605a575f366003190112605a576020907fdebfdfd5a50ad117c10898d68b5ccf0893c6b40d4f443f902e2e7646601bdeaf548152f35b5f80fdfea26469706673582212203a586b4dd6b5bd060b9b97172b9f2cab1147a7aa4fd68bad82887f4d1d62e0db64736f6c634300081c0033 \ No newline at end of file diff --git a/src/bindings/abi/VotingContract.abi b/src/bindings/abi/VotingContract.abi deleted file mode 100644 index eccc0de..0000000 --- a/src/bindings/abi/VotingContract.abi +++ /dev/null @@ -1 +0,0 @@ -[{"inputs":[{"internalType":"address","name":"_paymentContract","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"InvalidTransitionIndex","type":"error"},{"inputs":[],"name":"BLS_SIG_CHECKER","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_voter","type":"address"}],"name":"addVoter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"blsSignatureChecker","outputs":[{"internalType":"contract BLSSignatureChecker","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentTotalVotingPower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"executeVote","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"transitionIndex","type":"uint256"}],"name":"getCurrentTotalVotingPower","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCurrentVotersArray","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastVotePassed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"namespace","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"transitionIndex","type":"uint256"}],"name":"operatorExecuteVote","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"paymentContract","outputs":[{"internalType":"contract PaymentContract","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"registryCoordinator","outputs":[{"internalType":"contract ISlashingRegistryCoordinator","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_slasher","type":"address"},{"internalType":"address","name":"_registryCoordinator","type":"address"}],"name":"setSlashingContracts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"msgHash","type":"bytes32"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"apk","type":"tuple"},{"components":[{"internalType":"uint256[2]","name":"X","type":"uint256[2]"},{"internalType":"uint256[2]","name":"Y","type":"uint256[2]"}],"internalType":"struct BN254.G2Point","name":"apkG2","type":"tuple"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"sigma","type":"tuple"},{"internalType":"bytes","name":"storageUpdates","type":"bytes"},{"internalType":"uint256","name":"transitionIndex","type":"uint256"},{"internalType":"address","name":"targetAddr","type":"address"},{"internalType":"bytes4","name":"targetFunction","type":"bytes4"}],"name":"slashExecVote","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"slasher","outputs":[{"internalType":"contract IInstantSlasher","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"stateTransitionCount","outputs":[{"internalType":"uint256","name":"count","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"voters","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"votersArrayStorage","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"msgHash","type":"bytes32"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"apk","type":"tuple"},{"components":[{"internalType":"uint256[2]","name":"X","type":"uint256[2]"},{"internalType":"uint256[2]","name":"Y","type":"uint256[2]"}],"internalType":"struct BN254.G2Point","name":"apkG2","type":"tuple"},{"components":[{"internalType":"uint256","name":"X","type":"uint256"},{"internalType":"uint256","name":"Y","type":"uint256"}],"internalType":"struct BN254.G1Point","name":"sigma","type":"tuple"},{"internalType":"bytes","name":"storageUpdates","type":"bytes"},{"internalType":"uint256","name":"transitionIndex","type":"uint256"},{"internalType":"address","name":"targetAddr","type":"address"},{"internalType":"bytes4","name":"targetFunction","type":"bytes4"}],"name":"writeExecuteVote","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bytes","name":"storageUpdates","type":"bytes"}],"name":"writeExecuteVoteTest","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"payable","type":"function"}] \ No newline at end of file diff --git a/src/bindings/abi/VotingContract.bin b/src/bindings/abi/VotingContract.bin deleted file mode 100644 index 85e6ab1..0000000 --- a/src/bindings/abi/VotingContract.bin +++ /dev/null @@ -1 +0,0 @@ -608080604052346102c257602081611885803803809161001f82856102c6565b8339810103126102c257516001600160a01b038116908190036102c257600280546001600160a01b031990811673b6861c61782aec28a14cf68cecf216ad7f5f4e2d17909155600180549091169190911790555f54680100000000000000008110156102785760018101805f558110156102ae577f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e56390810180546001600160a01b031916331790557fdebfdfd5a50ad117c10898d68b5ccf0893c6b40d4f443f902e2e7646601bdeaf805460010190819055604080516020818101525f805492820183905280805290939184916060830191905b81811061028c57505061012f925003601f1981018452836102c6565b5f90815260036020526040902081516001600160401b038111610278578154600181811c9116801561026e575b602082101461025a57601f8111610215575b50602092601f82116001146101b657928192935f926101ab575b50508160011b915f199060031b1c19161790555b60405161159b90816102ea8239f35b015190505f80610188565b601f19821693835f52805f20915f5b8681106101fd57508360019596106101e5575b505050811b01905561019c565b01515f1960f88460031b161c191690555f80806101d8565b919260206001819286850151815501940192016101c5565b825f5260205f20601f830160051c81019160208410610250575b601f0160051c01905b818110610245575061016e565b5f8155600101610238565b909150819061022f565b634e487b7160e01b5f52602260045260245ffd5b90607f169061015c565b634e487b7160e01b5f52604160045260245ffd5b84546001600160a01b0316835260019485019487945060209093019201610113565b634e487b7160e01b5f52603260045260245ffd5b5f80fd5b601f909101601f19168101906001600160401b038211908210176102785760405256fe6080806040526004361015610012575f80fd5b5f905f3560e01c9081631c178e9c14610b97575080631ee07fb114610b6d5780635ffd1f0014610ace5780636953f47414610a635780636d14a98714610a3b5780637c015a8914610a205780639c91dd56146109f8578063a352d707146109ca578063a4f88154146109a4578063aa2c58b214610960578063b134427114610938578063bfa06830146108d1578063c7b3754014610764578063cf6ae6031461073d578063da58c7d9146106fa578063ea53bac5146106ce578063f300b86214610320578063f4833e20146102f6578063f4ab9adf146101265763fd8eac49146100fa575f80fd5b3461012357806003193601126101235760205f5160206115465f395f51905f5254604051908152f35b80fd5b503461012357602036600319011261012357610140610d0e565b5f5160206115265f395f51905f52546001015f5160206115265f395f51905f52558154680100000000000000008110156102e25780600161018392018455610ec9565b81546001600160a01b0393841660039290921b91821b9390911b1916919091179055604051906101c7826101b9602082016114bd565b03601f198101845283610c22565b5f5160206115265f395f51905f52548152600360205260408120825167ffffffffffffffff81116102e2576101fc8254610bba565b601f811161029d575b506020601f821160011461023f57839482939492610234575b50508160011b915f199060031b1c191617905580f35b015190505f8061021e565b82845280842090601f198316855b8181106102855750958360019596971061026d575b505050811b01905580f35b01515f1960f88460031b161c191690555f8080610262565b9192602060018192868b01518155019401920161024d565b82845260208420601f830160051c810191602084106102d8575b601f0160051c01905b8181106102cd5750610205565b8481556001016102c0565b90915081906102b7565b634e487b7160e01b83526041600452602483fd5b503461012357806003193601126101235760205f5160206115265f395f51905f5254604051908152f35b5061032a36610e16565b5f5160206115265f395f51905f52999795969498939954600101805f5160206115265f395f51905f5255600184018085116106ba57036106ab57610375655af3107a4000341461133a565b6001546001600160a01b0316803b156106a7579088600494939260405195868092630d0e30db60e41b825234905af1801561069c57908993929161067c575b602094506040519185830193845260018060a01b0316604083015263ffffffff60e01b1660608201526080808201528a60a08201528a8a60c08301378260c08c8301015261041760c0828d601f801991011681010301601f198101835282610c22565b604051918291518091835e8101838152039060025afa1561067157808551036106385760409260018060a01b03600254169161046885519687958694859463171f1d5b60e01b865260048601611097565b03915afa90811561062d57829083926105fb575b50156105b657156105795780925b8084106104ed575f5160206115465f395f51905f52545f5160206115065f395f51905f5254604080516020810193909352901515908201526104e9906104dd81606081015b03601f198101835282610c22565b60405191829182610ce4565b0390f35b600184018085116105655781610504911115611386565b61052661051f6105158684876113ca565b3560f81c956113d6565b94156113e4565b602084018085116105655761053d8282111561143c565b60408585019501809111610565576105578282111561147c565b93602081013590355561048a565b634e487b7160e01b83526011600452602483fd5b60405162461bcd60e51b8152602060048201526015602482015274496e76616c696420424c53207369676e617475726560581b6044820152606490fd5b60405162461bcd60e51b815260206004820152601860248201527f424c532070616972696e6720636865636b206661696c656400000000000000006044820152606490fd5b905061061f915060403d604011610626575b6106178183610c22565b81019061104c565b905f61047c565b503d61060d565b6040513d84823e3d90fd5b60405162461bcd60e51b8152602060048201526011602482015270496e76616c6964207369676e617475726560781b6044820152606490fd5b6040513d86823e3d90fd5b91938361068b91949294610c22565b61069857879183916103b4565b8780fd5b6040513d8b823e3d90fd5b8880fd5b6339bb705160e11b8852600488fd5b634e487b7160e01b8a52601160045260248afd5b503461012357806003193601126101235760205f5160206115065f395f51905f52541515604051908152f35b50346101235760203660031901126101235760043590805482101561012357602061072483610ec9565b905460405160039290921b1c6001600160a01b03168152f35b50346101235780600319360112610123576104e96040516104dd816104cf602082016114bd565b5060203660031901126108cd5760043567ffffffffffffffff81116108cd57610791903690600401610de8565b915f5160206115265f395f51905f52546001015f5160206115265f395f51905f52556107c4655af3107a4000341461133a565b6001546001600160a01b0316803b156108cd575f60049160405192838092630d0e30db60e41b825234905af180156108c2576108af575b5080925b808410610848575f5160206115465f395f51905f52545f5160206115065f395f51905f5254604080516020810193909352901515908201526104e9906104dd81606081016104cf565b60018401808511610565578161085f911115611386565b61087061051f6105158684876113ca565b60208401808511610565576108878282111561143c565b60408585019501809111610565576108a18282111561147c565b9360208101359035556107ff565b6108bb91505f90610c22565b5f5f6107fb565b6040513d5f823e3d90fd5b5f80fd5b346108cd575f3660031901126108cd576020600161090e5f5160206115265f395f51905f52548201805f5160206115265f395f51905f5255610ef3565b805f5160206115465f395f51905f52551615805f5160206115065f395f51905f5255604051908152f35b346108cd575f3660031901126108cd576004546040516001600160a01b039091168152602090f35b346108cd576104e96104dd61097436610e16565b975f5160206115265f395f51905f52979197969296959395546001015f5160206115265f395f51905f52556110e4565b346108cd5760203660031901126108cd5760206109c2600435610ef3565b604051908152f35b346108cd575f3660031901126108cd57602060405173b6861c61782aec28a14cf68cecf216ad7f5f4e2d8152f35b346108cd575f3660031901126108cd576001546040516001600160a01b039091168152602090f35b346108cd575f3660031901126108cd576104e96104dd610d40565b346108cd575f3660031901126108cd576005546040516001600160a01b039091168152602090f35b346108cd5760403660031901126108cd57610a7c610d0e565b6024356001600160a01b03811691908290036108cd5760018060a01b03166bffffffffffffffffffffffff60a01b60045416176004556bffffffffffffffffffffffff60a01b60055416176005555f80f35b346108cd5760203660031901126108cd5760043560018101809111610b5957610af96104e991610ef3565b60018116610b535760015b604051915f60208401525f5160206115465f395f51905f52602184015260418301525f60618301525f5160206115065f395f51905f5260628301526082820152608281526104dd60a282610c22565b5f610b04565b634e487b7160e01b5f52601160045260245ffd5b346108cd5760203660031901126108cd576004355f5260036020526104e96104dd60405f20610c44565b346108cd575f3660031901126108cd576002546001600160a01b03168152602090f35b90600182811c92168015610be8575b6020831014610bd457565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610bc9565b6040810190811067ffffffffffffffff821117610c0e57604052565b634e487b7160e01b5f52604160045260245ffd5b90601f8019910116810190811067ffffffffffffffff821117610c0e57604052565b9060405191825f825492610c5784610bba565b8084529360018116908115610cc25750600114610c7e575b50610c7c92500383610c22565b565b90505f9291925260205f20905f915b818310610ca6575050906020610c7c928201015f610c6f565b6020919350806001915483858901015201910190918492610c8d565b905060209250610c7c94915060ff191682840152151560051b8201015f610c6f565b602060409281835280519182918282860152018484015e5f828201840152601f01601f1916010190565b600435906001600160a01b03821682036108cd57565b67ffffffffffffffff8111610c0e57601f01601f191660200190565b60405190610d4f604083610c22565b601882527f5f434f4d4d4f4e574152455f4147475245474154494f4e5f00000000000000006020830152565b91908260409103126108cd57604051610d9381610bf2565b6020808294803584520135910152565b9080601f830112156108cd5760405191610dbc83610bf2565b8290604081019283116108cd57905b828210610dd85750505090565b8135815260209182019101610dcb565b9181601f840112156108cd5782359167ffffffffffffffff83116108cd57602083818601950101116108cd57565b6101a06003198201126108cd5760043591610e32826024610d7b565b9160806063198201126108cd57604051610e4b81610bf2565b610e56826064610da3565b8152610e638260a4610da3565b602082015291610e748260e4610d7b565b91610124359067ffffffffffffffff82116108cd57610e9591600401610de8565b90916101443590610164356001600160a01b03811681036108cd5790610184356001600160e01b0319811681036108cd5790565b5f54811015610edf575f805260205f2001905f90565b634e487b7160e01b5f52603260045260245ffd5b90815f526003602052610f0860405f20610c44565b82905b80511580611036575b15610f4657508015610f40575f190191825f526003602052610f3860405f20610c44565b909290610f0b565b505f9150565b92905082518301926020818186019503126108cd5760208101519067ffffffffffffffff82116108cd570183603f820112156108cd5760208101519367ffffffffffffffff8511610c0e578460051b9160405195610fa76020850188610c22565b8652602086019281016040019182116108cd57604001915b818310611016575050505f925f935b815185101561101057600585901b8201602001516001600160a01b031683810290801590820485141715610b59578101809111610b5957600190940193610fce565b93505050565b82516001600160a01b03811681036108cd57815260209283019201610fbf565b50811515610f14565b519081151582036108cd57565b91908260409103126108cd5761106d60206110668461103f565b930161103f565b90565b905f905b6002821061108157505050565b6020806001928551815201930191019091611074565b92936110d6602080939796816101009661012089019a89528051828a0152015160408801526110ca606088018251611070565b015160a0860190611070565b805160e08501520151910152565b9192949597845f916111616038602095989b868c8f81611102610d40565b98604051988996868089019c8d815192839201905e88018781019590955260601b6bffffffffffffffffffffffff191660408501526001600160e01b03191660548401526058830137010186838201520301601f198101835282610c22565b604051918291518091835e8101838152039060025afa156108c257805f510361131a5760409260018060a01b0360025416916111b285519687958694859463171f1d5b60e01b865260048601611097565b03915afa9081156108c2575f905f926112f8575b50159081156112ef575b506112d35760405192625ffd1f60e81b845260048401525f83602481305afa9283156108c2575f93611257575b5061120781610d24565b906112156040519283610c22565b808252602082019236828201116108cd57815f92602092863783010152519020906020815191012014156040519060208201526020815261106d604082610c22565b9092503d805f833e6112698183610c22565b8101906020818303126108cd5780519067ffffffffffffffff82116108cd570181601f820112156108cd578051906112a082610d24565b926112ae6040519485610c22565b828452602083830101116108cd57815f9260208093018386015e83010152915f6111fd565b505050604051600160208201526020815261106d604082610c22565b9050155f6111d0565b9050611313915060403d604011610626576106178183610c22565b905f6111c6565b50505050505050604051600160208201526020815261106d604082610c22565b1561134157565b60405162461bcd60e51b815260206004820152601c60248201527f4d7573742073656e642065786163746c7920302e3030303120455448000000006044820152606490fd5b1561138d57565b60405162461bcd60e51b8152602060048201526015602482015274125b9d985b1a59081bdc18dbd919481bd9999cd95d605a1b6044820152606490fd5b90821015610edf570190565b5f198114610b595760010190565b156113eb57565b60405162461bcd60e51b8152602060048201526024808201527f556e737570706f72746564206f7065726174696f6e20286f70206d75737420626044820152636520302960e01b6064820152608490fd5b1561144357565b60405162461bcd60e51b81526020600482015260116024820152704d697373696e6720736c6f74206461746160781b6044820152606490fd5b1561148357565b60405162461bcd60e51b81526020600482015260126024820152714d697373696e672076616c7565206461746160701b6044820152606490fd5b60406020820191602081525f5480935201905f805260205f20905f5b8181106114e65750505090565b82546001600160a01b03168452602090930192600192830192016114d956fe0df3fffaac6beb149ae42659747af9c815cf8bb1c2f1a56df229f8ec2f1b7b63debfdfd5a50ad117c10898d68b5ccf0893c6b40d4f443f902e2e7646601bdeaf2ef300128d8bab26260cc62ee81b836797fdb69a87c72ee4ee954f2b31f5fc7ea2646970667358221220b9b5ea137796177e9b17f39ccbca176c252c5d483c0fe3006ec651789893474c64736f6c634300081c0033 \ No newline at end of file diff --git a/src/bindings/blsapkregistry.rs b/src/bindings/blsapkregistry.rs deleted file mode 100644 index 8d9f8e9..0000000 --- a/src/bindings/blsapkregistry.rs +++ /dev/null @@ -1,7756 +0,0 @@ -///Module containing a contract's types and functions. -/** - -```solidity -library BN254 { - struct G1Point { uint256 X; uint256 Y; } - struct G2Point { uint256[2] X; uint256[2] Y; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod BN254 { - - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct G1Point { uint256 X; uint256 Y; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct G1Point { - #[allow(missing_docs)] - pub X: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub Y: 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: G1Point) -> Self { - (value.X, value.Y) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for G1Point { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - X: tuple.0, - Y: tuple.1, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for G1Point { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for G1Point { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.X, - ), - as alloy_sol_types::SolType>::tokenize( - &self.Y, - ), - ) - } - #[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 G1Point { - 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 G1Point { - const NAME: &'static str = "G1Point"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed("G1Point(uint256 X,uint256 Y)") - } - #[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.X) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.Y) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for G1Point { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.X) - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.Y) - } - #[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.X, out); - as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.Y, 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)) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct G2Point { uint256[2] X; uint256[2] Y; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct G2Point { - #[allow(missing_docs)] - pub X: [alloy::sol_types::private::primitives::aliases::U256; 2usize], - #[allow(missing_docs)] - pub Y: [alloy::sol_types::private::primitives::aliases::U256; 2usize], - } - #[allow( - non_camel_case_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::FixedArray, 2usize>, - alloy::sol_types::sol_data::FixedArray, 2usize>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - [alloy::sol_types::private::primitives::aliases::U256; 2usize], - [alloy::sol_types::private::primitives::aliases::U256; 2usize], - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: G2Point) -> Self { - (value.X, value.Y) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for G2Point { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - X: tuple.0, - Y: tuple.1, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for G2Point { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for G2Point { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - 2usize, - > as alloy_sol_types::SolType>::tokenize(&self.X), - , - 2usize, - > as alloy_sol_types::SolType>::tokenize(&self.Y), - ) - } - #[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 G2Point { - 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 G2Point { - const NAME: &'static str = "G2Point"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed("G2Point(uint256[2] X,uint256[2] Y)") - } - #[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 { - [ - , - 2usize, - > as alloy_sol_types::SolType>::eip712_data_word(&self.X) - .0, - , - 2usize, - > as alloy_sol_types::SolType>::eip712_data_word(&self.Y) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for G2Point { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - , - 2usize, - > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.X) - + , - 2usize, - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.Y - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - , - 2usize, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.X, out - ); - , - 2usize, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.Y, 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 [`BN254`](self) contract instance. - - See the [wrapper's documentation](`BN254Instance`) 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, - ) -> BN254Instance { - BN254Instance::::new(address, provider) - } - /**A [`BN254`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`BN254`](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 BN254Instance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for BN254Instance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BN254Instance").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, - > BN254Instance - { - /**Creates a new wrapper around an on-chain [`BN254`](self) contract instance. - - See the [wrapper's documentation](`BN254Instance`) 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 BN254Instance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> BN254Instance { - BN254Instance { - 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, - > BN254Instance - { - /// 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, - > BN254Instance - { - /// 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 IBLSApkRegistryTypes { - struct ApkUpdate { bytes24 apkHash; uint32 updateBlockNumber; uint32 nextUpdateBlockNumber; } - struct PubkeyRegistrationParams { BN254.G1Point pubkeyRegistrationSignature; BN254.G1Point pubkeyG1; BN254.G2Point pubkeyG2; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IBLSApkRegistryTypes { - use super::*; - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct ApkUpdate { bytes24 apkHash; uint32 updateBlockNumber; uint32 nextUpdateBlockNumber; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ApkUpdate { - #[allow(missing_docs)] - pub apkHash: alloy::sol_types::private::FixedBytes<24>, - #[allow(missing_docs)] - pub updateBlockNumber: u32, - #[allow(missing_docs)] - pub nextUpdateBlockNumber: 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<24>, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<24>, 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: ApkUpdate) -> Self { - ( - value.apkHash, - value.updateBlockNumber, - value.nextUpdateBlockNumber, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ApkUpdate { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - apkHash: tuple.0, - updateBlockNumber: tuple.1, - nextUpdateBlockNumber: tuple.2, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for ApkUpdate { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for ApkUpdate { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.apkHash), - as alloy_sol_types::SolType>::tokenize(&self.updateBlockNumber), - as alloy_sol_types::SolType>::tokenize(&self.nextUpdateBlockNumber), - ) - } - #[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 ApkUpdate { - 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 ApkUpdate { - const NAME: &'static str = "ApkUpdate"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "ApkUpdate(bytes24 apkHash,uint32 updateBlockNumber,uint32 nextUpdateBlockNumber)", - ) - } - #[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.apkHash) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.updateBlockNumber, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.nextUpdateBlockNumber, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for ApkUpdate { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.apkHash, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.updateBlockNumber, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nextUpdateBlockNumber, - ) - } - #[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.apkHash, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.updateBlockNumber, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.nextUpdateBlockNumber, - 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)) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct PubkeyRegistrationParams { BN254.G1Point pubkeyRegistrationSignature; BN254.G1Point pubkeyG1; BN254.G2Point pubkeyG2; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct PubkeyRegistrationParams { - #[allow(missing_docs)] - pub pubkeyRegistrationSignature: ::RustType, - #[allow(missing_docs)] - pub pubkeyG1: ::RustType, - #[allow(missing_docs)] - pub pubkeyG2: ::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> = (BN254::G1Point, BN254::G1Point, BN254::G2Point); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - ::RustType, - ::RustType, - ::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: PubkeyRegistrationParams) -> Self { - ( - value.pubkeyRegistrationSignature, - value.pubkeyG1, - value.pubkeyG2, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for PubkeyRegistrationParams { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - pubkeyRegistrationSignature: tuple.0, - pubkeyG1: tuple.1, - pubkeyG2: tuple.2, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for PubkeyRegistrationParams { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for PubkeyRegistrationParams { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.pubkeyRegistrationSignature, - ), - ::tokenize(&self.pubkeyG1), - ::tokenize(&self.pubkeyG2), - ) - } - #[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 PubkeyRegistrationParams { - 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 PubkeyRegistrationParams { - const NAME: &'static str = "PubkeyRegistrationParams"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "PubkeyRegistrationParams(BN254.G1Point pubkeyRegistrationSignature,BN254.G1Point pubkeyG1,BN254.G2Point pubkeyG2)", - ) - } - #[inline] - fn eip712_components() - -> alloy_sol_types::private::Vec> - { - let mut components = alloy_sol_types::private::Vec::with_capacity(3); - components.push(::eip712_root_type()); - components - .extend(::eip712_components()); - 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 { - [ - ::eip712_data_word( - &self.pubkeyRegistrationSignature, - ) - .0, - ::eip712_data_word(&self.pubkeyG1) - .0, - ::eip712_data_word(&self.pubkeyG2) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for PubkeyRegistrationParams { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - ::topic_preimage_length( - &rust.pubkeyRegistrationSignature, - ) + ::topic_preimage_length( - &rust.pubkeyG1, - ) + ::topic_preimage_length( - &rust.pubkeyG2, - ) - } - #[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.pubkeyRegistrationSignature, - out, - ); - ::encode_topic_preimage( - &rust.pubkeyG1, - out, - ); - ::encode_topic_preimage( - &rust.pubkeyG2, - 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 [`IBLSApkRegistryTypes`](self) contract instance. - - See the [wrapper's documentation](`IBLSApkRegistryTypesInstance`) 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, - ) -> IBLSApkRegistryTypesInstance { - IBLSApkRegistryTypesInstance::::new(address, provider) - } - /**A [`IBLSApkRegistryTypes`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IBLSApkRegistryTypes`](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 IBLSApkRegistryTypesInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IBLSApkRegistryTypesInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IBLSApkRegistryTypesInstance") - .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, - > IBLSApkRegistryTypesInstance - { - /**Creates a new wrapper around an on-chain [`IBLSApkRegistryTypes`](self) contract instance. - - See the [wrapper's documentation](`IBLSApkRegistryTypesInstance`) 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 IBLSApkRegistryTypesInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IBLSApkRegistryTypesInstance { - IBLSApkRegistryTypesInstance { - 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, - > IBLSApkRegistryTypesInstance - { - /// 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, - > IBLSApkRegistryTypesInstance - { - /// 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 BN254 { - struct G1Point { - uint256 X; - uint256 Y; - } - struct G2Point { - uint256[2] X; - uint256[2] Y; - } -} - -library IBLSApkRegistryTypes { - struct ApkUpdate { - bytes24 apkHash; - uint32 updateBlockNumber; - uint32 nextUpdateBlockNumber; - } - struct PubkeyRegistrationParams { - BN254.G1Point pubkeyRegistrationSignature; - BN254.G1Point pubkeyG1; - BN254.G2Point pubkeyG2; - } -} - -interface BLSApkRegistry { - error BLSPubkeyAlreadyRegistered(); - error BlockNumberBeforeFirstUpdate(); - error BlockNumberNotLatest(); - error BlockNumberTooRecent(); - error ECAddFailed(); - error ECMulFailed(); - error ECPairingFailed(); - error G2PubkeyAlreadySet(); - error InvalidBLSSignatureOrPrivateKey(); - error OnlyRegistryCoordinatorOwner(); - error OperatorAlreadyRegistered(); - error OperatorNotRegistered(); - error QuorumAlreadyExists(); - error QuorumDoesNotExist(); - error ZeroPubKey(); - - event Initialized(uint8 version); - event NewG2PubkeyRegistration(address indexed operator, BN254.G2Point pubkeyG2); - event NewPubkeyRegistration(address indexed operator, BN254.G1Point pubkeyG1, BN254.G2Point pubkeyG2); - event OperatorAddedToQuorums(address operator, bytes32 operatorId, bytes quorumNumbers); - event OperatorRemovedFromQuorums(address operator, bytes32 operatorId, bytes quorumNumbers); - - constructor(address _slashingRegistryCoordinator); - - function apkHistory(uint8 quorumNumber, uint256) external view returns (bytes24 apkHash, uint32 updateBlockNumber, uint32 nextUpdateBlockNumber); - function currentApk(uint8 quorumNumber) external view returns (uint256 X, uint256 Y); - function deregisterOperator(address operator, bytes memory quorumNumbers) external; - function getApk(uint8 quorumNumber) external view returns (BN254.G1Point memory); - function getApkHashAtBlockNumberAndIndex(uint8 quorumNumber, uint32 blockNumber, uint256 index) external view returns (bytes24); - function getApkHistoryLength(uint8 quorumNumber) external view returns (uint32); - function getApkIndicesAtBlockNumber(bytes memory quorumNumbers, uint256 blockNumber) external view returns (uint32[] memory); - function getApkUpdateAtIndex(uint8 quorumNumber, uint256 index) external view returns (IBLSApkRegistryTypes.ApkUpdate memory); - function getOperatorFromPubkeyHash(bytes32 pubkeyHash) external view returns (address); - function getOperatorId(address operator) external view returns (bytes32); - function getOperatorPubkeyG2(address operator) external view returns (BN254.G2Point memory); - function getRegisteredPubkey(address operator) external view returns (BN254.G1Point memory, bytes32); - function initializeQuorum(uint8 quorumNumber) external; - function operatorToPubkey(address operator) external view returns (uint256 X, uint256 Y); - function operatorToPubkeyHash(address operator) external view returns (bytes32 operatorId); - function pubkeyHashToOperator(bytes32 pubkeyHash) external view returns (address operator); - function registerBLSPublicKey(address operator, IBLSApkRegistryTypes.PubkeyRegistrationParams memory params, BN254.G1Point memory pubkeyRegistrationMessageHash) external returns (bytes32 operatorId); - function registerOperator(address operator, bytes memory quorumNumbers) external; - function registryCoordinator() external view returns (address); - function verifyAndRegisterG2PubkeyForOperator(address operator, BN254.G2Point memory pubkeyG2) external; -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "constructor", - "inputs": [ - { - "name": "_slashingRegistryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "apkHistory", - "inputs": [ - { - "name": "quorumNumber", - "type": "uint8", - "internalType": "uint8" - }, - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "apkHash", - "type": "bytes24", - "internalType": "bytes24" - }, - { - "name": "updateBlockNumber", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "nextUpdateBlockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "currentApk", - "inputs": [ - { - "name": "quorumNumber", - "type": "uint8", - "internalType": "uint8" - } - ], - "outputs": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "deregisterOperator", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "getApk", - "inputs": [ - { - "name": "quorumNumber", - "type": "uint8", - "internalType": "uint8" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getApkHashAtBlockNumberAndIndex", - "inputs": [ - { - "name": "quorumNumber", - "type": "uint8", - "internalType": "uint8" - }, - { - "name": "blockNumber", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "index", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "bytes24", - "internalType": "bytes24" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getApkHistoryLength", - "inputs": [ - { - "name": "quorumNumber", - "type": "uint8", - "internalType": "uint8" - } - ], - "outputs": [ - { - "name": "", - "type": "uint32", - "internalType": "uint32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getApkIndicesAtBlockNumber", - "inputs": [ - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "blockNumber", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "uint32[]", - "internalType": "uint32[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getApkUpdateAtIndex", - "inputs": [ - { - "name": "quorumNumber", - "type": "uint8", - "internalType": "uint8" - }, - { - "name": "index", - "type": "uint256", - "internalType": "uint256" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct IBLSApkRegistryTypes.ApkUpdate", - "components": [ - { - "name": "apkHash", - "type": "bytes24", - "internalType": "bytes24" - }, - { - "name": "updateBlockNumber", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "nextUpdateBlockNumber", - "type": "uint32", - "internalType": "uint32" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorFromPubkeyHash", - "inputs": [ - { - "name": "pubkeyHash", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorId", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorPubkeyG2", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct BN254.G2Point", - "components": [ - { - "name": "X", - "type": "uint256[2]", - "internalType": "uint256[2]" - }, - { - "name": "Y", - "type": "uint256[2]", - "internalType": "uint256[2]" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getRegisteredPubkey", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "initializeQuorum", - "inputs": [ - { - "name": "quorumNumber", - "type": "uint8", - "internalType": "uint8" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "operatorToPubkey", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "operatorToPubkeyHash", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "outputs": [ - { - "name": "operatorId", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "pubkeyHashToOperator", - "inputs": [ - { - "name": "pubkeyHash", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "outputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "registerBLSPublicKey", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "params", - "type": "tuple", - "internalType": "struct IBLSApkRegistryTypes.PubkeyRegistrationParams", - "components": [ - { - "name": "pubkeyRegistrationSignature", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "pubkeyG1", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "pubkeyG2", - "type": "tuple", - "internalType": "struct BN254.G2Point", - "components": [ - { - "name": "X", - "type": "uint256[2]", - "internalType": "uint256[2]" - }, - { - "name": "Y", - "type": "uint256[2]", - "internalType": "uint256[2]" - } - ] - } - ] - }, - { - "name": "pubkeyRegistrationMessageHash", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - } - ], - "outputs": [ - { - "name": "operatorId", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "registerOperator", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "registryCoordinator", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "address" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "verifyAndRegisterG2PubkeyForOperator", - "inputs": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "pubkeyG2", - "type": "tuple", - "internalType": "struct BN254.G2Point", - "components": [ - { - "name": "X", - "type": "uint256[2]", - "internalType": "uint256[2]" - }, - { - "name": "Y", - "type": "uint256[2]", - "internalType": "uint256[2]" - } - ] - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "event", - "name": "Initialized", - "inputs": [ - { - "name": "version", - "type": "uint8", - "indexed": false, - "internalType": "uint8" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "NewG2PubkeyRegistration", - "inputs": [ - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "pubkeyG2", - "type": "tuple", - "indexed": false, - "internalType": "struct BN254.G2Point", - "components": [ - { - "name": "X", - "type": "uint256[2]", - "internalType": "uint256[2]" - }, - { - "name": "Y", - "type": "uint256[2]", - "internalType": "uint256[2]" - } - ] - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "NewPubkeyRegistration", - "inputs": [ - { - "name": "operator", - "type": "address", - "indexed": true, - "internalType": "address" - }, - { - "name": "pubkeyG1", - "type": "tuple", - "indexed": false, - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "pubkeyG2", - "type": "tuple", - "indexed": false, - "internalType": "struct BN254.G2Point", - "components": [ - { - "name": "X", - "type": "uint256[2]", - "internalType": "uint256[2]" - }, - { - "name": "Y", - "type": "uint256[2]", - "internalType": "uint256[2]" - } - ] - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorAddedToQuorums", - "inputs": [ - { - "name": "operator", - "type": "address", - "indexed": false, - "internalType": "address" - }, - { - "name": "operatorId", - "type": "bytes32", - "indexed": false, - "internalType": "bytes32" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "indexed": false, - "internalType": "bytes" - } - ], - "anonymous": false - }, - { - "type": "event", - "name": "OperatorRemovedFromQuorums", - "inputs": [ - { - "name": "operator", - "type": "address", - "indexed": false, - "internalType": "address" - }, - { - "name": "operatorId", - "type": "bytes32", - "indexed": false, - "internalType": "bytes32" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "indexed": false, - "internalType": "bytes" - } - ], - "anonymous": false - }, - { - "type": "error", - "name": "BLSPubkeyAlreadyRegistered", - "inputs": [] - }, - { - "type": "error", - "name": "BlockNumberBeforeFirstUpdate", - "inputs": [] - }, - { - "type": "error", - "name": "BlockNumberNotLatest", - "inputs": [] - }, - { - "type": "error", - "name": "BlockNumberTooRecent", - "inputs": [] - }, - { - "type": "error", - "name": "ECAddFailed", - "inputs": [] - }, - { - "type": "error", - "name": "ECMulFailed", - "inputs": [] - }, - { - "type": "error", - "name": "ECPairingFailed", - "inputs": [] - }, - { - "type": "error", - "name": "G2PubkeyAlreadySet", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidBLSSignatureOrPrivateKey", - "inputs": [] - }, - { - "type": "error", - "name": "OnlyRegistryCoordinatorOwner", - "inputs": [] - }, - { - "type": "error", - "name": "OperatorAlreadyRegistered", - "inputs": [] - }, - { - "type": "error", - "name": "OperatorNotRegistered", - "inputs": [] - }, - { - "type": "error", - "name": "QuorumAlreadyExists", - "inputs": [] - }, - { - "type": "error", - "name": "QuorumDoesNotExist", - "inputs": [] - }, - { - "type": "error", - "name": "ZeroPubKey", - "inputs": [] - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod BLSApkRegistry { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x60a060405234801561000f575f5ffd5b50604051611e9f380380611e9f83398101604081905261002e91610108565b6001600160a01b0381166080528061004461004b565b5050610135565b5f54610100900460ff16156100b65760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff9081161015610106575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b5f60208284031215610118575f5ffd5b81516001600160a01b038116811461012e575f5ffd5b9392505050565b608051611d4461015b5f395f818161033901528181610e5e01526114620152611d445ff3fe608060405234801561000f575f5ffd5b5060043610610126575f3560e01c80636d14a987116100a9578063d1a646501161006e578063d1a6465014610408578063d5254a8c1461041b578063de29fac01461043b578063e8bb9ae61461045a578063f4e24fe514610482575f5ffd5b80636d14a987146103345780637916cea61461035b5780637ff81a871461039c578063a3db80e2146103cf578063bf79ce58146103f5575f5ffd5b806347b314e8116100ef57806347b314e8146101ff5780635f61a8841461023f578063605747d51461029957806367169911146102e757806368bccaac14610307575f5ffd5b8062a1f4cb1461012a57806313542a4e1461016a57806326d941f2146101a0578063377ed99d146101b55780633fb27952146101ec575b5f5ffd5b610150610138366004611701565b60036020525f90815260409020805460019091015482565b604080519283526020830191909152015b60405180910390f35b610192610178366004611701565b6001600160a01b03165f9081526001602052604090205490565b604051908152602001610161565b6101b36101ae36600461172c565b610495565b005b6101d76101c336600461172c565b60ff165f9081526004602052604090205490565b60405163ffffffff9091168152602001610161565b6101b36101fa3660046117b3565b610555565b61022761020d36600461185a565b5f908152600260205260409020546001600160a01b031690565b6040516001600160a01b039091168152602001610161565b61028c61024d36600461172c565b604080518082019091525f80825260208201525060ff165f90815260056020908152604091829020825180840190935280548352600101549082015290565b6040516101619190611871565b6102ac6102a7366004611888565b6105d1565b60408051825167ffffffffffffffff1916815260208084015163ffffffff908116918301919091529282015190921690820152606001610161565b6102fa6102f5366004611701565b610662565b60405161016191906118d2565b61031a6103153660046118fd565b6106f6565b60405167ffffffffffffffff199091168152602001610161565b6102277f000000000000000000000000000000000000000000000000000000000000000081565b61036e610369366004611888565b6107db565b6040805167ffffffffffffffff19909416845263ffffffff9283166020850152911690820152606001610161565b6103af6103aa366004611701565b610822565b604080518351815260209384015193810193909352820152606001610161565b6101506103dd36600461172c565b60056020525f90815260409020805460019091015482565b610192610403366004611941565b610898565b6101b361041636600461199b565b610b6d565b61042e6104293660046119d9565b610c54565b6040516101619190611a4b565b610192610449366004611701565b60016020525f908152604090205481565b61022761046836600461185a565b60026020525f90815260409020546001600160a01b031681565b6101b36104903660046117b3565b610dec565b61049d610e53565b60ff81165f90815260046020526040902054156104cd576040516310cda51760e21b815260040160405180910390fd5b60ff165f908152600460209081526040808320815160608101835284815263ffffffff4381168286019081528285018781528454600181018655948852959096209151919092018054955194518316600160e01b026001600160e01b0395909316600160c01b026001600160e01b03199096169190931c179390931791909116919091179055565b61055d610e53565b5f61056783610822565b5090506105748282610e9e565b7f73a2b7fb844724b971802ae9b15db094d4b7192df9d7350e14eb466b9b22eb4e836105b4856001600160a01b03165f9081526001602052604090205490565b846040516105c493929190611a93565b60405180910390a1505050565b604080516060810182525f808252602080830182905282840182905260ff86168252600490529190912080548390811061060d5761060d611ade565b5f91825260209182902060408051606081018252919092015467ffffffffffffffff1981841b16825263ffffffff600160c01b8204811694830194909452600160e01b90049092169082015290505b92915050565b61066a61162e565b6001600160a01b0382165f9081526006602052604090819020815160808101835291829081018260028282826020028201915b81548152602001906001019080831161069d57505050918352505060408051808201918290526020909201919060028481019182845b8154815260200190600101908083116106d3575050505050815250509050919050565b60ff83165f90815260046020526040812080548291908490811061071c5761071c611ade565b5f91825260209182902060408051606081018252919092015467ffffffffffffffff1981841b16825263ffffffff600160c01b82048116948301859052600160e01b90910481169282019290925292508516101561078d57604051633d22884160e01b815260040160405180910390fd5b604081015163ffffffff1615806107b35750806040015163ffffffff168463ffffffff16105b6107d057604051636fe02d4b60e01b815260040160405180910390fd5b5190505b9392505050565b6004602052815f5260405f2081815481106107f4575f80fd5b5f91825260209091200154604081901b925063ffffffff600160c01b820481169250600160e01b9091041683565b604080518082019091525f80825260208201526001600160a01b0382165f8181526003602090815260408083208151808301835281548152600191820154818501529484529091528120549091908061088e576040516325ec6c1f60e01b815260040160405180910390fd5b9094909350915050565b5f6108a1610e53565b5f6108cd6108b736869003860160408701611af2565b80515f9081526020918201519091526040902090565b90507fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5810361090f57604051630cc7509160e01b815260040160405180910390fd5b6001600160a01b0385165f9081526001602052604081205414610945576040516342ee68b560e01b815260040160405180910390fd5b5f818152600260205260409020546001600160a01b03161561097a57604051634c334c9760e11b815260040160405180910390fd5b604080515f917f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001916109d2918835916020808b0135928b01359160608c01359160808d019160c08e01918d35918e8201359101611b23565b604051602081830303815290604052805190602001205f1c6109f49190611b65565b9050610a8d610a2d610a1883610a12368a90038a0160408b01611af2565b90611085565b610a2736899003890189611af2565b906110f5565b610a35611169565b610a76610a6785610a126040805180820182525f80825260209182015281518083019092526001825260029082015290565b610a27368a90038a018a611af2565b610a88368a90038a0160808b01611bc6565b611229565b610aaa5760405163a72d026360e01b815260040160405180910390fd5b6001600160a01b0386165f9081526003602090815260408083208882013581556060890135600190910155600690915290206080860190610aeb8282611c30565b50506001600160a01b0386165f81815260016020908152604080832086905585835260029091529081902080546001600160a01b0319168317905580517fe3fb6613af2e8930cf85d47fcf6db10192224a64c6cbe8023e0eee1ba382804191610b5c919089019060808a0190611c8b565b60405180910390a250949350505050565b610b75611460565b5f610b7f83610822565b509050610b8b83611511565b610bcb81610b97611169565b6040805180820182525f808252602091820152815180830190925260018252600290820152610a8836879003870187611bc6565b610be85760405163a72d026360e01b815260040160405180910390fd5b6001600160a01b0383165f9081526006602052604090208290610c0b8282611c30565b905050826001600160a01b03167f5c4f9f28153dbf3f00e69607a59e82ad806fffb78d09f179f62432f7e9d2511a83604051610c479190611caa565b60405180910390a2505050565b60605f8367ffffffffffffffff811115610c7057610c70611745565b604051908082528060200260200182016040528015610c99578160200160208202803683370190505b5090505f5b84811015610de3575f868683818110610cb957610cb9611ade565b919091013560f81c5f818152600460205260409020549092509050801580610d19575060ff82165f9081526004602052604081208054909190610cfe57610cfe611ade565b5f91825260209091200154600160c01b900463ffffffff1686105b15610d3757604051633f4cb70f60e01b815260040160405180910390fd5b805b8015610dd85760ff83165f9081526004602052604090208790610d5d600184611cb8565b81548110610d6d57610d6d611ade565b5f91825260209091200154600160c01b900463ffffffff1611610dc657610d95600182611cb8565b858581518110610da757610da7611ade565b602002602001019063ffffffff16908163ffffffff1681525050610dd8565b80610dd081611ccb565b915050610d39565b505050600101610c9e565b50949350505050565b610df4610e53565b5f610dfe83610822565b509050610e1382610e0e83611572565b610e9e565b7ff843ecd53a563675e62107be1494fdde4a3d49aeedaf8d88c616d85346e3500e836105b4856001600160a01b03165f9081526001602052604090205490565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610e9c57604051637070f3b160e11b815260040160405180910390fd5b565b604080518082019091525f80825260208201525f5b835181101561107f575f848281518110610ecf57610ecf611ade565b0160209081015160f81c5f8181526004909252604082205490925090819003610f0b57604051637310cff560e11b815260040160405180910390fd5b60ff82165f908152600560209081526040918290208251808401909352805483526001015490820152610f3e90866110f5565b60ff83165f818152600560209081526040808320855180825586840180516001938401559085525183528184209484526004909252822093975091929091610f869085611cb8565b81548110610f9657610f96611ade565b5f918252602090912001805490915063ffffffff438116600160c01b9092041603610fd45780546001600160c01b031916604083901c17815561106f565b805463ffffffff438116600160e01b8181026001600160e01b0394851617855560ff88165f908152600460209081526040808320815160608101835267ffffffffffffffff198b16815280840196875280830185815282546001810184559286529390942093519301805495519251871690940291909516600160c01b026001600160e01b0319949094169190941c17919091179092161790555b505060019092019150610eb39050565b50505050565b604080518082019091525f80825260208201526110a0611653565b835181526020808501519082015260408082018490525f908360608460076107d05a03fa905080806110ce57fe5b50806110ed57604051632319df1960e11b815260040160405180910390fd5b505092915050565b604080518082019091525f8082526020820152611110611671565b835181526020808501518183015283516040808401919091529084015160608301525f908360808460066107d05a03fa9050808061114a57fe5b50806110ed5760405163d4b68fd760e01b815260040160405180910390fd5b61117161162e565b50604080516080810182527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c28183019081527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed6060830152815281518083019092527f275dc4a288d1afb3cbb1ac09187524c7db36395df7be3b99e673b13a075a65ec82527f1d9befcd05a5323e6da4d435f3b617cdb3af83285c2df711ef39c01571827f9d60208381019190915281019190915290565b6040805180820182528581526020808201859052825180840190935285835282018390525f9161125761168f565b5f5b600281101561140e575f61126e826006611c19565b905084826002811061128257611282611ade565b60200201515183611293835f611ce0565b600c81106112a3576112a3611ade565b60200201528482600281106112ba576112ba611ade565b602002015160200151838260016112d19190611ce0565b600c81106112e1576112e1611ade565b60200201528382600281106112f8576112f8611ade565b602002015151518361130b836002611ce0565b600c811061131b5761131b611ade565b602002015283826002811061133257611332611ade565b602002015151600160200201518361134b836003611ce0565b600c811061135b5761135b611ade565b602002015283826002811061137257611372611ade565b6020020151602001515f6002811061138c5761138c611ade565b60200201518361139d836004611ce0565b600c81106113ad576113ad611ade565b60200201528382600281106113c4576113c4611ade565b6020020151602001516001600281106113df576113df611ade565b6020020151836113f0836005611ce0565b600c811061140057611400611ade565b602002015250600101611259565b506114176116ae565b5f6020826101808560086107d05a03fa9050808061143157fe5b5080611450576040516324ccc79360e21b815260040160405180910390fd5b5051151598975050505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114bc573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114e09190611cf3565b6001600160a01b0316336001600160a01b031614610e9c57604051637070f3b160e11b815260040160405180910390fd5b5f61151b82610662565b8051519091501580156115315750805160200151155b80156115405750602081015151155b801561155157506020818101510151155b61156e57604051630849e5cf60e41b815260040160405180910390fd5b5050565b604080518082019091525f8082526020820152815115801561159657506020820151155b156115b3575050604080518082019091525f808252602082015290565b6040518060400160405280835f015181526020017f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4784602001516115f79190611b65565b611621907f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd47611cb8565b905292915050565b919050565b60405180604001604052806116416116cc565b815260200161164e6116cc565b905290565b60405180606001604052806003906020820280368337509192915050565b60405180608001604052806004906020820280368337509192915050565b604051806101800160405280600c906020820280368337509192915050565b60405180602001604052806001906020820280368337509192915050565b60405180604001604052806002906020820280368337509192915050565b6001600160a01b03811681146116fe575f5ffd5b50565b5f60208284031215611711575f5ffd5b81356107d4816116ea565b803560ff81168114611629575f5ffd5b5f6020828403121561173c575f5ffd5b6107d48261171c565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff8111828210171561177c5761177c611745565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156117ab576117ab611745565b604052919050565b5f5f604083850312156117c4575f5ffd5b82356117cf816116ea565b9150602083013567ffffffffffffffff8111156117ea575f5ffd5b8301601f810185136117fa575f5ffd5b803567ffffffffffffffff81111561181457611814611745565b611827601f8201601f1916602001611782565b81815286602083850101111561183b575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f6020828403121561186a575f5ffd5b5035919050565b81518152602080830151908201526040810161065c565b5f5f60408385031215611899575f5ffd5b6118a28361171c565b946020939093013593505050565b805f5b600281101561107f5781518452602093840193909101906001016118b3565b5f6080820190506118e48284516118b0565b60208301516118f660408401826118b0565b5092915050565b5f5f5f6060848603121561190f575f5ffd5b6119188461171c565b9250602084013563ffffffff81168114611930575f5ffd5b929592945050506040919091013590565b5f5f5f838503610160811215611955575f5ffd5b8435611960816116ea565b9350610100601f1982011215611974575f5ffd5b602085019250604061011f198201121561198c575f5ffd5b50610120840190509250925092565b5f5f82840360a08112156119ad575f5ffd5b83356119b8816116ea565b92506080601f19820112156119cb575f5ffd5b506020830190509250929050565b5f5f5f604084860312156119eb575f5ffd5b833567ffffffffffffffff811115611a01575f5ffd5b8401601f81018613611a11575f5ffd5b803567ffffffffffffffff811115611a27575f5ffd5b866020828401011115611a38575f5ffd5b6020918201979096509401359392505050565b602080825282518282018190525f918401906040840190835b81811015611a8857835163ffffffff16835260209384019390920191600101611a64565b509095945050505050565b60018060a01b0384168152826020820152606060408201525f82518060608401528060208501608085015e5f608082850101526080601f19601f830116840101915050949350505050565b634e487b7160e01b5f52603260045260245ffd5b5f6040828403128015611b03575f5ffd5b50611b0c611759565b823581526020928301359281019290925250919050565b888152876020820152866040820152856060820152604085608083013760408460c0830137610100810192909252610120820152610140019695505050505050565b5f82611b7f57634e487b7160e01b5f52601260045260245ffd5b500690565b5f82601f830112611b93575f5ffd5b611b9b611759565b806040840185811115611bac575f5ffd5b845b81811015611a88578035845260209384019301611bae565b5f6080828403128015611bd7575f5ffd5b50611be0611759565b611bea8484611b84565b8152611bf98460408501611b84565b60208201529392505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761065c5761065c611c05565b815f5b6002811015611c5057813583820155602090910190600101611c33565b5050604082015f5b600281101561107f57813583820160020155602090910190600101611c58565b6040818337604080820160408401375050565b823581526020808401359082015260c081016107d46040830184611c78565b6080810161065c8284611c78565b8181038181111561065c5761065c611c05565b5f81611cd957611cd9611c05565b505f190190565b8082018082111561065c5761065c611c05565b5f60208284031215611d03575f5ffd5b81516107d4816116ea56fea26469706673582212203e7ee896d31eb9233948c100329b4d9a899a0b9610f4830999ca3e77ee79e2fa64736f6c634300081b0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\xA0`@R4\x80\x15a\0\x0FW__\xFD[P`@Qa\x1E\x9F8\x03\x80a\x1E\x9F\x839\x81\x01`@\x81\x90Ra\0.\x91a\x01\x08V[`\x01`\x01`\xA0\x1B\x03\x81\x16`\x80R\x80a\0Da\0KV[PPa\x015V[_Ta\x01\0\x90\x04`\xFF\x16\x15a\0\xB6W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`'`$\x82\x01R\x7FInitializable: contract is initi`D\x82\x01Rfalizing`\xC8\x1B`d\x82\x01R`\x84\x01`@Q\x80\x91\x03\x90\xFD[_T`\xFF\x90\x81\x16\x10\x15a\x01\x06W_\x80T`\xFF\x19\x16`\xFF\x90\x81\x17\x90\x91U`@Q\x90\x81R\x7F\x7F&\xB8?\xF9n\x1F+jh/\x138R\xF6y\x8A\t\xC4e\xDA\x95\x92\x14`\xCE\xFB8G@$\x98\x90` \x01`@Q\x80\x91\x03\x90\xA1[V[_` \x82\x84\x03\x12\x15a\x01\x18W__\xFD[\x81Q`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x01.W__\xFD[\x93\x92PPPV[`\x80Qa\x1DDa\x01[_9_\x81\x81a\x039\x01R\x81\x81a\x0E^\x01Ra\x14b\x01Ra\x1DD_\xF3\xFE`\x80`@R4\x80\x15a\0\x0FW__\xFD[P`\x046\x10a\x01&W_5`\xE0\x1C\x80cm\x14\xA9\x87\x11a\0\xA9W\x80c\xD1\xA6FP\x11a\0nW\x80c\xD1\xA6FP\x14a\x04\x08W\x80c\xD5%J\x8C\x14a\x04\x1BW\x80c\xDE)\xFA\xC0\x14a\x04;W\x80c\xE8\xBB\x9A\xE6\x14a\x04ZW\x80c\xF4\xE2O\xE5\x14a\x04\x82W__\xFD[\x80cm\x14\xA9\x87\x14a\x034W\x80cy\x16\xCE\xA6\x14a\x03[W\x80c\x7F\xF8\x1A\x87\x14a\x03\x9CW\x80c\xA3\xDB\x80\xE2\x14a\x03\xCFW\x80c\xBFy\xCEX\x14a\x03\xF5W__\xFD[\x80cG\xB3\x14\xE8\x11a\0\xEFW\x80cG\xB3\x14\xE8\x14a\x01\xFFW\x80c_a\xA8\x84\x14a\x02?W\x80c`WG\xD5\x14a\x02\x99W\x80cg\x16\x99\x11\x14a\x02\xE7W\x80ch\xBC\xCA\xAC\x14a\x03\x07W__\xFD[\x80b\xA1\xF4\xCB\x14a\x01*W\x80c\x13T*N\x14a\x01jW\x80c&\xD9A\xF2\x14a\x01\xA0W\x80c7~\xD9\x9D\x14a\x01\xB5W\x80c?\xB2yR\x14a\x01\xECW[__\xFD[a\x01Pa\x0186`\x04a\x17\x01V[`\x03` R_\x90\x81R`@\x90 \x80T`\x01\x90\x91\x01T\x82V[`@\x80Q\x92\x83R` \x83\x01\x91\x90\x91R\x01[`@Q\x80\x91\x03\x90\xF3[a\x01\x92a\x01x6`\x04a\x17\x01V[`\x01`\x01`\xA0\x1B\x03\x16_\x90\x81R`\x01` R`@\x90 T\x90V[`@Q\x90\x81R` \x01a\x01aV[a\x01\xB3a\x01\xAE6`\x04a\x17,V[a\x04\x95V[\0[a\x01\xD7a\x01\xC36`\x04a\x17,V[`\xFF\x16_\x90\x81R`\x04` R`@\x90 T\x90V[`@Qc\xFF\xFF\xFF\xFF\x90\x91\x16\x81R` \x01a\x01aV[a\x01\xB3a\x01\xFA6`\x04a\x17\xB3V[a\x05UV[a\x02'a\x02\r6`\x04a\x18ZV[_\x90\x81R`\x02` R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x16\x90V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x01aV[a\x02\x8Ca\x02M6`\x04a\x17,V[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01RP`\xFF\x16_\x90\x81R`\x05` \x90\x81R`@\x91\x82\x90 \x82Q\x80\x84\x01\x90\x93R\x80T\x83R`\x01\x01T\x90\x82\x01R\x90V[`@Qa\x01a\x91\x90a\x18qV[a\x02\xACa\x02\xA76`\x04a\x18\x88V[a\x05\xD1V[`@\x80Q\x82Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16\x81R` \x80\x84\x01Qc\xFF\xFF\xFF\xFF\x90\x81\x16\x91\x83\x01\x91\x90\x91R\x92\x82\x01Q\x90\x92\x16\x90\x82\x01R``\x01a\x01aV[a\x02\xFAa\x02\xF56`\x04a\x17\x01V[a\x06bV[`@Qa\x01a\x91\x90a\x18\xD2V[a\x03\x1Aa\x03\x156`\x04a\x18\xFDV[a\x06\xF6V[`@Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x90\x91\x16\x81R` \x01a\x01aV[a\x02'\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\x81V[a\x03na\x03i6`\x04a\x18\x88V[a\x07\xDBV[`@\x80Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x90\x94\x16\x84Rc\xFF\xFF\xFF\xFF\x92\x83\x16` \x85\x01R\x91\x16\x90\x82\x01R``\x01a\x01aV[a\x03\xAFa\x03\xAA6`\x04a\x17\x01V[a\x08\"V[`@\x80Q\x83Q\x81R` \x93\x84\x01Q\x93\x81\x01\x93\x90\x93R\x82\x01R``\x01a\x01aV[a\x01Pa\x03\xDD6`\x04a\x17,V[`\x05` R_\x90\x81R`@\x90 \x80T`\x01\x90\x91\x01T\x82V[a\x01\x92a\x04\x036`\x04a\x19AV[a\x08\x98V[a\x01\xB3a\x04\x166`\x04a\x19\x9BV[a\x0BmV[a\x04.a\x04)6`\x04a\x19\xD9V[a\x0CTV[`@Qa\x01a\x91\x90a\x1AKV[a\x01\x92a\x04I6`\x04a\x17\x01V[`\x01` R_\x90\x81R`@\x90 T\x81V[a\x02'a\x04h6`\x04a\x18ZV[`\x02` R_\x90\x81R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x16\x81V[a\x01\xB3a\x04\x906`\x04a\x17\xB3V[a\r\xECV[a\x04\x9Da\x0ESV[`\xFF\x81\x16_\x90\x81R`\x04` R`@\x90 T\x15a\x04\xCDW`@Qc\x10\xCD\xA5\x17`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\xFF\x16_\x90\x81R`\x04` \x90\x81R`@\x80\x83 \x81Q``\x81\x01\x83R\x84\x81Rc\xFF\xFF\xFF\xFFC\x81\x16\x82\x86\x01\x90\x81R\x82\x85\x01\x87\x81R\x84T`\x01\x81\x01\x86U\x94\x88R\x95\x90\x96 \x91Q\x91\x90\x92\x01\x80T\x95Q\x94Q\x83\x16`\x01`\xE0\x1B\x02`\x01`\x01`\xE0\x1B\x03\x95\x90\x93\x16`\x01`\xC0\x1B\x02`\x01`\x01`\xE0\x1B\x03\x19\x90\x96\x16\x91\x90\x93\x1C\x17\x93\x90\x93\x17\x91\x90\x91\x16\x91\x90\x91\x17\x90UV[a\x05]a\x0ESV[_a\x05g\x83a\x08\"V[P\x90Pa\x05t\x82\x82a\x0E\x9EV[\x7Fs\xA2\xB7\xFB\x84G$\xB9q\x80*\xE9\xB1]\xB0\x94\xD4\xB7\x19-\xF9\xD75\x0E\x14\xEBFk\x9B\"\xEBN\x83a\x05\xB4\x85`\x01`\x01`\xA0\x1B\x03\x16_\x90\x81R`\x01` R`@\x90 T\x90V[\x84`@Qa\x05\xC4\x93\x92\x91\x90a\x1A\x93V[`@Q\x80\x91\x03\x90\xA1PPPV[`@\x80Q``\x81\x01\x82R_\x80\x82R` \x80\x83\x01\x82\x90R\x82\x84\x01\x82\x90R`\xFF\x86\x16\x82R`\x04\x90R\x91\x90\x91 \x80T\x83\x90\x81\x10a\x06\rWa\x06\ra\x1A\xDEV[_\x91\x82R` \x91\x82\x90 `@\x80Q``\x81\x01\x82R\x91\x90\x92\x01Tg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x81\x84\x1B\x16\x82Rc\xFF\xFF\xFF\xFF`\x01`\xC0\x1B\x82\x04\x81\x16\x94\x83\x01\x94\x90\x94R`\x01`\xE0\x1B\x90\x04\x90\x92\x16\x90\x82\x01R\x90P[\x92\x91PPV[a\x06ja\x16.V[`\x01`\x01`\xA0\x1B\x03\x82\x16_\x90\x81R`\x06` R`@\x90\x81\x90 \x81Q`\x80\x81\x01\x83R\x91\x82\x90\x81\x01\x82`\x02\x82\x82\x82` \x02\x82\x01\x91[\x81T\x81R` \x01\x90`\x01\x01\x90\x80\x83\x11a\x06\x9DWPPP\x91\x83RPP`@\x80Q\x80\x82\x01\x91\x82\x90R` \x90\x92\x01\x91\x90`\x02\x84\x81\x01\x91\x82\x84[\x81T\x81R` \x01\x90`\x01\x01\x90\x80\x83\x11a\x06\xD3WPPPPP\x81RPP\x90P\x91\x90PV[`\xFF\x83\x16_\x90\x81R`\x04` R`@\x81 \x80T\x82\x91\x90\x84\x90\x81\x10a\x07\x1CWa\x07\x1Ca\x1A\xDEV[_\x91\x82R` \x91\x82\x90 `@\x80Q``\x81\x01\x82R\x91\x90\x92\x01Tg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x81\x84\x1B\x16\x82Rc\xFF\xFF\xFF\xFF`\x01`\xC0\x1B\x82\x04\x81\x16\x94\x83\x01\x85\x90R`\x01`\xE0\x1B\x90\x91\x04\x81\x16\x92\x82\x01\x92\x90\x92R\x92P\x85\x16\x10\x15a\x07\x8DW`@Qc=\"\x88A`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@\x81\x01Qc\xFF\xFF\xFF\xFF\x16\x15\x80a\x07\xB3WP\x80`@\x01Qc\xFF\xFF\xFF\xFF\x16\x84c\xFF\xFF\xFF\xFF\x16\x10[a\x07\xD0W`@Qco\xE0-K`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[Q\x90P[\x93\x92PPPV[`\x04` R\x81_R`@_ \x81\x81T\x81\x10a\x07\xF4W_\x80\xFD[_\x91\x82R` \x90\x91 \x01T`@\x81\x90\x1B\x92Pc\xFF\xFF\xFF\xFF`\x01`\xC0\x1B\x82\x04\x81\x16\x92P`\x01`\xE0\x1B\x90\x91\x04\x16\x83V[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R`\x01`\x01`\xA0\x1B\x03\x82\x16_\x81\x81R`\x03` \x90\x81R`@\x80\x83 \x81Q\x80\x83\x01\x83R\x81T\x81R`\x01\x91\x82\x01T\x81\x85\x01R\x94\x84R\x90\x91R\x81 T\x90\x91\x90\x80a\x08\x8EW`@Qc%\xECl\x1F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x90\x94\x90\x93P\x91PPV[_a\x08\xA1a\x0ESV[_a\x08\xCDa\x08\xB76\x86\x90\x03\x86\x01`@\x87\x01a\x1A\xF2V[\x80Q_\x90\x81R` \x91\x82\x01Q\x90\x91R`@\x90 \x90V[\x90P\x7F\xAD2(\xB6v\xF7\xD3\xCDB\x84\xA5D?\x17\xF1\x96+6\xE4\x91\xB3\n@\xB2@XI\xE5\x97\xBA_\xB5\x81\x03a\t\x0FW`@Qc\x0C\xC7P\x91`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x85\x16_\x90\x81R`\x01` R`@\x81 T\x14a\tEW`@QcB\xEEh\xB5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_\x81\x81R`\x02` R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x16\x15a\tzW`@QcL3L\x97`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@\x80Q_\x91\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X](3\xE8Hy\xB9p\x91C\xE1\xF5\x93\xF0\0\0\x01\x91a\t\xD2\x91\x885\x91` \x80\x8B\x015\x92\x8B\x015\x91``\x8C\x015\x91`\x80\x8D\x01\x91`\xC0\x8E\x01\x91\x8D5\x91\x8E\x82\x015\x91\x01a\x1B#V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 _\x1Ca\t\xF4\x91\x90a\x1BeV[\x90Pa\n\x8Da\n-a\n\x18\x83a\n\x126\x8A\x90\x03\x8A\x01`@\x8B\x01a\x1A\xF2V[\x90a\x10\x85V[a\n'6\x89\x90\x03\x89\x01\x89a\x1A\xF2V[\x90a\x10\xF5V[a\n5a\x11iV[a\nva\ng\x85a\n\x12`@\x80Q\x80\x82\x01\x82R_\x80\x82R` \x91\x82\x01R\x81Q\x80\x83\x01\x90\x92R`\x01\x82R`\x02\x90\x82\x01R\x90V[a\n'6\x8A\x90\x03\x8A\x01\x8Aa\x1A\xF2V[a\n\x886\x8A\x90\x03\x8A\x01`\x80\x8B\x01a\x1B\xC6V[a\x12)V[a\n\xAAW`@Qc\xA7-\x02c`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x86\x16_\x90\x81R`\x03` \x90\x81R`@\x80\x83 \x88\x82\x015\x81U``\x89\x015`\x01\x90\x91\x01U`\x06\x90\x91R\x90 `\x80\x86\x01\x90a\n\xEB\x82\x82a\x1C0V[PP`\x01`\x01`\xA0\x1B\x03\x86\x16_\x81\x81R`\x01` \x90\x81R`@\x80\x83 \x86\x90U\x85\x83R`\x02\x90\x91R\x90\x81\x90 \x80T`\x01`\x01`\xA0\x1B\x03\x19\x16\x83\x17\x90U\x80Q\x7F\xE3\xFBf\x13\xAF.\x890\xCF\x85\xD4\x7F\xCFm\xB1\x01\x92\"Jd\xC6\xCB\xE8\x02>\x0E\xEE\x1B\xA3\x82\x80A\x91a\x0B\\\x91\x90\x89\x01\x90`\x80\x8A\x01\x90a\x1C\x8BV[`@Q\x80\x91\x03\x90\xA2P\x94\x93PPPPV[a\x0Bua\x14`V[_a\x0B\x7F\x83a\x08\"V[P\x90Pa\x0B\x8B\x83a\x15\x11V[a\x0B\xCB\x81a\x0B\x97a\x11iV[`@\x80Q\x80\x82\x01\x82R_\x80\x82R` \x91\x82\x01R\x81Q\x80\x83\x01\x90\x92R`\x01\x82R`\x02\x90\x82\x01Ra\n\x886\x87\x90\x03\x87\x01\x87a\x1B\xC6V[a\x0B\xE8W`@Qc\xA7-\x02c`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x83\x16_\x90\x81R`\x06` R`@\x90 \x82\x90a\x0C\x0B\x82\x82a\x1C0V[\x90PP\x82`\x01`\x01`\xA0\x1B\x03\x16\x7F\\O\x9F(\x15=\xBF?\0\xE6\x96\x07\xA5\x9E\x82\xAD\x80o\xFF\xB7\x8D\t\xF1y\xF6$2\xF7\xE9\xD2Q\x1A\x83`@Qa\x0CG\x91\x90a\x1C\xAAV[`@Q\x80\x91\x03\x90\xA2PPPV[``_\x83g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x0CpWa\x0Cpa\x17EV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x0C\x99W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_[\x84\x81\x10\x15a\r\xE3W_\x86\x86\x83\x81\x81\x10a\x0C\xB9Wa\x0C\xB9a\x1A\xDEV[\x91\x90\x91\x015`\xF8\x1C_\x81\x81R`\x04` R`@\x90 T\x90\x92P\x90P\x80\x15\x80a\r\x19WP`\xFF\x82\x16_\x90\x81R`\x04` R`@\x81 \x80T\x90\x91\x90a\x0C\xFEWa\x0C\xFEa\x1A\xDEV[_\x91\x82R` \x90\x91 \x01T`\x01`\xC0\x1B\x90\x04c\xFF\xFF\xFF\xFF\x16\x86\x10[\x15a\r7W`@Qc?L\xB7\x0F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80[\x80\x15a\r\xD8W`\xFF\x83\x16_\x90\x81R`\x04` R`@\x90 \x87\x90a\r]`\x01\x84a\x1C\xB8V[\x81T\x81\x10a\rmWa\rma\x1A\xDEV[_\x91\x82R` \x90\x91 \x01T`\x01`\xC0\x1B\x90\x04c\xFF\xFF\xFF\xFF\x16\x11a\r\xC6Wa\r\x95`\x01\x82a\x1C\xB8V[\x85\x85\x81Q\x81\x10a\r\xA7Wa\r\xA7a\x1A\xDEV[` \x02` \x01\x01\x90c\xFF\xFF\xFF\xFF\x16\x90\x81c\xFF\xFF\xFF\xFF\x16\x81RPPa\r\xD8V[\x80a\r\xD0\x81a\x1C\xCBV[\x91PPa\r9V[PPP`\x01\x01a\x0C\x9EV[P\x94\x93PPPPV[a\r\xF4a\x0ESV[_a\r\xFE\x83a\x08\"V[P\x90Pa\x0E\x13\x82a\x0E\x0E\x83a\x15rV[a\x0E\x9EV[\x7F\xF8C\xEC\xD5:V6u\xE6!\x07\xBE\x14\x94\xFD\xDEJ=I\xAE\xED\xAF\x8D\x88\xC6\x16\xD8SF\xE3P\x0E\x83a\x05\xB4\x85`\x01`\x01`\xA0\x1B\x03\x16_\x90\x81R`\x01` R`@\x90 T\x90V[3`\x01`\x01`\xA0\x1B\x03\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\x16\x14a\x0E\x9CW`@Qcpp\xF3\xB1`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[V[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R_[\x83Q\x81\x10\x15a\x10\x7FW_\x84\x82\x81Q\x81\x10a\x0E\xCFWa\x0E\xCFa\x1A\xDEV[\x01` \x90\x81\x01Q`\xF8\x1C_\x81\x81R`\x04\x90\x92R`@\x82 T\x90\x92P\x90\x81\x90\x03a\x0F\x0BW`@Qcs\x10\xCF\xF5`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\xFF\x82\x16_\x90\x81R`\x05` \x90\x81R`@\x91\x82\x90 \x82Q\x80\x84\x01\x90\x93R\x80T\x83R`\x01\x01T\x90\x82\x01Ra\x0F>\x90\x86a\x10\xF5V[`\xFF\x83\x16_\x81\x81R`\x05` \x90\x81R`@\x80\x83 \x85Q\x80\x82U\x86\x84\x01\x80Q`\x01\x93\x84\x01U\x90\x85RQ\x83R\x81\x84 \x94\x84R`\x04\x90\x92R\x82 \x93\x97P\x91\x92\x90\x91a\x0F\x86\x90\x85a\x1C\xB8V[\x81T\x81\x10a\x0F\x96Wa\x0F\x96a\x1A\xDEV[_\x91\x82R` \x90\x91 \x01\x80T\x90\x91Pc\xFF\xFF\xFF\xFFC\x81\x16`\x01`\xC0\x1B\x90\x92\x04\x16\x03a\x0F\xD4W\x80T`\x01`\x01`\xC0\x1B\x03\x19\x16`@\x83\x90\x1C\x17\x81Ua\x10oV[\x80Tc\xFF\xFF\xFF\xFFC\x81\x16`\x01`\xE0\x1B\x81\x81\x02`\x01`\x01`\xE0\x1B\x03\x94\x85\x16\x17\x85U`\xFF\x88\x16_\x90\x81R`\x04` \x90\x81R`@\x80\x83 \x81Q``\x81\x01\x83Rg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x8B\x16\x81R\x80\x84\x01\x96\x87R\x80\x83\x01\x85\x81R\x82T`\x01\x81\x01\x84U\x92\x86R\x93\x90\x94 \x93Q\x93\x01\x80T\x95Q\x92Q\x87\x16\x90\x94\x02\x91\x90\x95\x16`\x01`\xC0\x1B\x02`\x01`\x01`\xE0\x1B\x03\x19\x94\x90\x94\x16\x91\x90\x94\x1C\x17\x91\x90\x91\x17\x90\x92\x16\x17\x90U[PP`\x01\x90\x92\x01\x91Pa\x0E\xB3\x90PV[PPPPV[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01Ra\x10\xA0a\x16SV[\x83Q\x81R` \x80\x85\x01Q\x90\x82\x01R`@\x80\x82\x01\x84\x90R_\x90\x83``\x84`\x07a\x07\xD0Z\x03\xFA\x90P\x80\x80a\x10\xCEW\xFE[P\x80a\x10\xEDW`@Qc#\x19\xDF\x19`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PP\x92\x91PPV[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01Ra\x11\x10a\x16qV[\x83Q\x81R` \x80\x85\x01Q\x81\x83\x01R\x83Q`@\x80\x84\x01\x91\x90\x91R\x90\x84\x01Q``\x83\x01R_\x90\x83`\x80\x84`\x06a\x07\xD0Z\x03\xFA\x90P\x80\x80a\x11JW\xFE[P\x80a\x10\xEDW`@Qc\xD4\xB6\x8F\xD7`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x11qa\x16.V[P`@\x80Q`\x80\x81\x01\x82R\x7F\x19\x8E\x93\x93\x92\rH:r`\xBF\xB71\xFB]%\xF1\xAAI35\xA9\xE7\x12\x97\xE4\x85\xB7\xAE\xF3\x12\xC2\x81\x83\x01\x90\x81R\x7F\x18\0\xDE\xEF\x12\x1F\x1EvBj\0f^\\DygC\"\xD4\xF7^\xDA\xDDF\xDE\xBD\\\xD9\x92\xF6\xED``\x83\x01R\x81R\x81Q\x80\x83\x01\x90\x92R\x7F']\xC4\xA2\x88\xD1\xAF\xB3\xCB\xB1\xAC\t\x18u$\xC7\xDB69]\xF7\xBE;\x99\xE6s\xB1:\x07Ze\xEC\x82R\x7F\x1D\x9B\xEF\xCD\x05\xA52>m\xA4\xD45\xF3\xB6\x17\xCD\xB3\xAF\x83(\\-\xF7\x11\xEF9\xC0\x15q\x82\x7F\x9D` \x83\x81\x01\x91\x90\x91R\x81\x01\x91\x90\x91R\x90V[`@\x80Q\x80\x82\x01\x82R\x85\x81R` \x80\x82\x01\x85\x90R\x82Q\x80\x84\x01\x90\x93R\x85\x83R\x82\x01\x83\x90R_\x91a\x12Wa\x16\x8FV[_[`\x02\x81\x10\x15a\x14\x0EW_a\x12n\x82`\x06a\x1C\x19V[\x90P\x84\x82`\x02\x81\x10a\x12\x82Wa\x12\x82a\x1A\xDEV[` \x02\x01QQ\x83a\x12\x93\x83_a\x1C\xE0V[`\x0C\x81\x10a\x12\xA3Wa\x12\xA3a\x1A\xDEV[` \x02\x01R\x84\x82`\x02\x81\x10a\x12\xBAWa\x12\xBAa\x1A\xDEV[` \x02\x01Q` \x01Q\x83\x82`\x01a\x12\xD1\x91\x90a\x1C\xE0V[`\x0C\x81\x10a\x12\xE1Wa\x12\xE1a\x1A\xDEV[` \x02\x01R\x83\x82`\x02\x81\x10a\x12\xF8Wa\x12\xF8a\x1A\xDEV[` \x02\x01QQQ\x83a\x13\x0B\x83`\x02a\x1C\xE0V[`\x0C\x81\x10a\x13\x1BWa\x13\x1Ba\x1A\xDEV[` \x02\x01R\x83\x82`\x02\x81\x10a\x132Wa\x132a\x1A\xDEV[` \x02\x01QQ`\x01` \x02\x01Q\x83a\x13K\x83`\x03a\x1C\xE0V[`\x0C\x81\x10a\x13[Wa\x13[a\x1A\xDEV[` \x02\x01R\x83\x82`\x02\x81\x10a\x13rWa\x13ra\x1A\xDEV[` \x02\x01Q` \x01Q_`\x02\x81\x10a\x13\x8CWa\x13\x8Ca\x1A\xDEV[` \x02\x01Q\x83a\x13\x9D\x83`\x04a\x1C\xE0V[`\x0C\x81\x10a\x13\xADWa\x13\xADa\x1A\xDEV[` \x02\x01R\x83\x82`\x02\x81\x10a\x13\xC4Wa\x13\xC4a\x1A\xDEV[` \x02\x01Q` \x01Q`\x01`\x02\x81\x10a\x13\xDFWa\x13\xDFa\x1A\xDEV[` \x02\x01Q\x83a\x13\xF0\x83`\x05a\x1C\xE0V[`\x0C\x81\x10a\x14\0Wa\x14\0a\x1A\xDEV[` \x02\x01RP`\x01\x01a\x12YV[Pa\x14\x17a\x16\xAEV[_` \x82a\x01\x80\x85`\x08a\x07\xD0Z\x03\xFA\x90P\x80\x80a\x141W\xFE[P\x80a\x14PW`@Qc$\xCC\xC7\x93`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PQ\x15\x15\x98\x97PPPPPPPPV[\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\x16c\x8D\xA5\xCB[`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x14\xBCW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x14\xE0\x91\x90a\x1C\xF3V[`\x01`\x01`\xA0\x1B\x03\x163`\x01`\x01`\xA0\x1B\x03\x16\x14a\x0E\x9CW`@Qcpp\xF3\xB1`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_a\x15\x1B\x82a\x06bV[\x80QQ\x90\x91P\x15\x80\x15a\x151WP\x80Q` \x01Q\x15[\x80\x15a\x15@WP` \x81\x01QQ\x15[\x80\x15a\x15QWP` \x81\x81\x01Q\x01Q\x15[a\x15nW`@Qc\x08I\xE5\xCF`\xE4\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PPV[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R\x81Q\x15\x80\x15a\x15\x96WP` \x82\x01Q\x15[\x15a\x15\xB3WPP`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R\x90V[`@Q\x80`@\x01`@R\x80\x83_\x01Q\x81R` \x01\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x84` \x01Qa\x15\xF7\x91\x90a\x1BeV[a\x16!\x90\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDGa\x1C\xB8V[\x90R\x92\x91PPV[\x91\x90PV[`@Q\x80`@\x01`@R\x80a\x16Aa\x16\xCCV[\x81R` \x01a\x16Na\x16\xCCV[\x90R\x90V[`@Q\x80``\x01`@R\x80`\x03\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[`@Q\x80`\x80\x01`@R\x80`\x04\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[`@Q\x80a\x01\x80\x01`@R\x80`\x0C\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[`@Q\x80` \x01`@R\x80`\x01\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[`@Q\x80`@\x01`@R\x80`\x02\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x16\xFEW__\xFD[PV[_` \x82\x84\x03\x12\x15a\x17\x11W__\xFD[\x815a\x07\xD4\x81a\x16\xEAV[\x805`\xFF\x81\x16\x81\x14a\x16)W__\xFD[_` \x82\x84\x03\x12\x15a\x17~\xE8\x96\xD3\x1E\xB9#9H\xC1\x002\x9BM\x9A\x89\x9A\x0B\x96\x10\xF4\x83\t\x99\xCA>w\xEEy\xE2\xFAdsolcC\0\x08\x1B\x003", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x608060405234801561000f575f5ffd5b5060043610610126575f3560e01c80636d14a987116100a9578063d1a646501161006e578063d1a6465014610408578063d5254a8c1461041b578063de29fac01461043b578063e8bb9ae61461045a578063f4e24fe514610482575f5ffd5b80636d14a987146103345780637916cea61461035b5780637ff81a871461039c578063a3db80e2146103cf578063bf79ce58146103f5575f5ffd5b806347b314e8116100ef57806347b314e8146101ff5780635f61a8841461023f578063605747d51461029957806367169911146102e757806368bccaac14610307575f5ffd5b8062a1f4cb1461012a57806313542a4e1461016a57806326d941f2146101a0578063377ed99d146101b55780633fb27952146101ec575b5f5ffd5b610150610138366004611701565b60036020525f90815260409020805460019091015482565b604080519283526020830191909152015b60405180910390f35b610192610178366004611701565b6001600160a01b03165f9081526001602052604090205490565b604051908152602001610161565b6101b36101ae36600461172c565b610495565b005b6101d76101c336600461172c565b60ff165f9081526004602052604090205490565b60405163ffffffff9091168152602001610161565b6101b36101fa3660046117b3565b610555565b61022761020d36600461185a565b5f908152600260205260409020546001600160a01b031690565b6040516001600160a01b039091168152602001610161565b61028c61024d36600461172c565b604080518082019091525f80825260208201525060ff165f90815260056020908152604091829020825180840190935280548352600101549082015290565b6040516101619190611871565b6102ac6102a7366004611888565b6105d1565b60408051825167ffffffffffffffff1916815260208084015163ffffffff908116918301919091529282015190921690820152606001610161565b6102fa6102f5366004611701565b610662565b60405161016191906118d2565b61031a6103153660046118fd565b6106f6565b60405167ffffffffffffffff199091168152602001610161565b6102277f000000000000000000000000000000000000000000000000000000000000000081565b61036e610369366004611888565b6107db565b6040805167ffffffffffffffff19909416845263ffffffff9283166020850152911690820152606001610161565b6103af6103aa366004611701565b610822565b604080518351815260209384015193810193909352820152606001610161565b6101506103dd36600461172c565b60056020525f90815260409020805460019091015482565b610192610403366004611941565b610898565b6101b361041636600461199b565b610b6d565b61042e6104293660046119d9565b610c54565b6040516101619190611a4b565b610192610449366004611701565b60016020525f908152604090205481565b61022761046836600461185a565b60026020525f90815260409020546001600160a01b031681565b6101b36104903660046117b3565b610dec565b61049d610e53565b60ff81165f90815260046020526040902054156104cd576040516310cda51760e21b815260040160405180910390fd5b60ff165f908152600460209081526040808320815160608101835284815263ffffffff4381168286019081528285018781528454600181018655948852959096209151919092018054955194518316600160e01b026001600160e01b0395909316600160c01b026001600160e01b03199096169190931c179390931791909116919091179055565b61055d610e53565b5f61056783610822565b5090506105748282610e9e565b7f73a2b7fb844724b971802ae9b15db094d4b7192df9d7350e14eb466b9b22eb4e836105b4856001600160a01b03165f9081526001602052604090205490565b846040516105c493929190611a93565b60405180910390a1505050565b604080516060810182525f808252602080830182905282840182905260ff86168252600490529190912080548390811061060d5761060d611ade565b5f91825260209182902060408051606081018252919092015467ffffffffffffffff1981841b16825263ffffffff600160c01b8204811694830194909452600160e01b90049092169082015290505b92915050565b61066a61162e565b6001600160a01b0382165f9081526006602052604090819020815160808101835291829081018260028282826020028201915b81548152602001906001019080831161069d57505050918352505060408051808201918290526020909201919060028481019182845b8154815260200190600101908083116106d3575050505050815250509050919050565b60ff83165f90815260046020526040812080548291908490811061071c5761071c611ade565b5f91825260209182902060408051606081018252919092015467ffffffffffffffff1981841b16825263ffffffff600160c01b82048116948301859052600160e01b90910481169282019290925292508516101561078d57604051633d22884160e01b815260040160405180910390fd5b604081015163ffffffff1615806107b35750806040015163ffffffff168463ffffffff16105b6107d057604051636fe02d4b60e01b815260040160405180910390fd5b5190505b9392505050565b6004602052815f5260405f2081815481106107f4575f80fd5b5f91825260209091200154604081901b925063ffffffff600160c01b820481169250600160e01b9091041683565b604080518082019091525f80825260208201526001600160a01b0382165f8181526003602090815260408083208151808301835281548152600191820154818501529484529091528120549091908061088e576040516325ec6c1f60e01b815260040160405180910390fd5b9094909350915050565b5f6108a1610e53565b5f6108cd6108b736869003860160408701611af2565b80515f9081526020918201519091526040902090565b90507fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5810361090f57604051630cc7509160e01b815260040160405180910390fd5b6001600160a01b0385165f9081526001602052604081205414610945576040516342ee68b560e01b815260040160405180910390fd5b5f818152600260205260409020546001600160a01b03161561097a57604051634c334c9760e11b815260040160405180910390fd5b604080515f917f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f0000001916109d2918835916020808b0135928b01359160608c01359160808d019160c08e01918d35918e8201359101611b23565b604051602081830303815290604052805190602001205f1c6109f49190611b65565b9050610a8d610a2d610a1883610a12368a90038a0160408b01611af2565b90611085565b610a2736899003890189611af2565b906110f5565b610a35611169565b610a76610a6785610a126040805180820182525f80825260209182015281518083019092526001825260029082015290565b610a27368a90038a018a611af2565b610a88368a90038a0160808b01611bc6565b611229565b610aaa5760405163a72d026360e01b815260040160405180910390fd5b6001600160a01b0386165f9081526003602090815260408083208882013581556060890135600190910155600690915290206080860190610aeb8282611c30565b50506001600160a01b0386165f81815260016020908152604080832086905585835260029091529081902080546001600160a01b0319168317905580517fe3fb6613af2e8930cf85d47fcf6db10192224a64c6cbe8023e0eee1ba382804191610b5c919089019060808a0190611c8b565b60405180910390a250949350505050565b610b75611460565b5f610b7f83610822565b509050610b8b83611511565b610bcb81610b97611169565b6040805180820182525f808252602091820152815180830190925260018252600290820152610a8836879003870187611bc6565b610be85760405163a72d026360e01b815260040160405180910390fd5b6001600160a01b0383165f9081526006602052604090208290610c0b8282611c30565b905050826001600160a01b03167f5c4f9f28153dbf3f00e69607a59e82ad806fffb78d09f179f62432f7e9d2511a83604051610c479190611caa565b60405180910390a2505050565b60605f8367ffffffffffffffff811115610c7057610c70611745565b604051908082528060200260200182016040528015610c99578160200160208202803683370190505b5090505f5b84811015610de3575f868683818110610cb957610cb9611ade565b919091013560f81c5f818152600460205260409020549092509050801580610d19575060ff82165f9081526004602052604081208054909190610cfe57610cfe611ade565b5f91825260209091200154600160c01b900463ffffffff1686105b15610d3757604051633f4cb70f60e01b815260040160405180910390fd5b805b8015610dd85760ff83165f9081526004602052604090208790610d5d600184611cb8565b81548110610d6d57610d6d611ade565b5f91825260209091200154600160c01b900463ffffffff1611610dc657610d95600182611cb8565b858581518110610da757610da7611ade565b602002602001019063ffffffff16908163ffffffff1681525050610dd8565b80610dd081611ccb565b915050610d39565b505050600101610c9e565b50949350505050565b610df4610e53565b5f610dfe83610822565b509050610e1382610e0e83611572565b610e9e565b7ff843ecd53a563675e62107be1494fdde4a3d49aeedaf8d88c616d85346e3500e836105b4856001600160a01b03165f9081526001602052604090205490565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610e9c57604051637070f3b160e11b815260040160405180910390fd5b565b604080518082019091525f80825260208201525f5b835181101561107f575f848281518110610ecf57610ecf611ade565b0160209081015160f81c5f8181526004909252604082205490925090819003610f0b57604051637310cff560e11b815260040160405180910390fd5b60ff82165f908152600560209081526040918290208251808401909352805483526001015490820152610f3e90866110f5565b60ff83165f818152600560209081526040808320855180825586840180516001938401559085525183528184209484526004909252822093975091929091610f869085611cb8565b81548110610f9657610f96611ade565b5f918252602090912001805490915063ffffffff438116600160c01b9092041603610fd45780546001600160c01b031916604083901c17815561106f565b805463ffffffff438116600160e01b8181026001600160e01b0394851617855560ff88165f908152600460209081526040808320815160608101835267ffffffffffffffff198b16815280840196875280830185815282546001810184559286529390942093519301805495519251871690940291909516600160c01b026001600160e01b0319949094169190941c17919091179092161790555b505060019092019150610eb39050565b50505050565b604080518082019091525f80825260208201526110a0611653565b835181526020808501519082015260408082018490525f908360608460076107d05a03fa905080806110ce57fe5b50806110ed57604051632319df1960e11b815260040160405180910390fd5b505092915050565b604080518082019091525f8082526020820152611110611671565b835181526020808501518183015283516040808401919091529084015160608301525f908360808460066107d05a03fa9050808061114a57fe5b50806110ed5760405163d4b68fd760e01b815260040160405180910390fd5b61117161162e565b50604080516080810182527f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c28183019081527f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed6060830152815281518083019092527f275dc4a288d1afb3cbb1ac09187524c7db36395df7be3b99e673b13a075a65ec82527f1d9befcd05a5323e6da4d435f3b617cdb3af83285c2df711ef39c01571827f9d60208381019190915281019190915290565b6040805180820182528581526020808201859052825180840190935285835282018390525f9161125761168f565b5f5b600281101561140e575f61126e826006611c19565b905084826002811061128257611282611ade565b60200201515183611293835f611ce0565b600c81106112a3576112a3611ade565b60200201528482600281106112ba576112ba611ade565b602002015160200151838260016112d19190611ce0565b600c81106112e1576112e1611ade565b60200201528382600281106112f8576112f8611ade565b602002015151518361130b836002611ce0565b600c811061131b5761131b611ade565b602002015283826002811061133257611332611ade565b602002015151600160200201518361134b836003611ce0565b600c811061135b5761135b611ade565b602002015283826002811061137257611372611ade565b6020020151602001515f6002811061138c5761138c611ade565b60200201518361139d836004611ce0565b600c81106113ad576113ad611ade565b60200201528382600281106113c4576113c4611ade565b6020020151602001516001600281106113df576113df611ade565b6020020151836113f0836005611ce0565b600c811061140057611400611ade565b602002015250600101611259565b506114176116ae565b5f6020826101808560086107d05a03fa9050808061143157fe5b5080611450576040516324ccc79360e21b815260040160405180910390fd5b5051151598975050505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156114bc573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114e09190611cf3565b6001600160a01b0316336001600160a01b031614610e9c57604051637070f3b160e11b815260040160405180910390fd5b5f61151b82610662565b8051519091501580156115315750805160200151155b80156115405750602081015151155b801561155157506020818101510151155b61156e57604051630849e5cf60e41b815260040160405180910390fd5b5050565b604080518082019091525f8082526020820152815115801561159657506020820151155b156115b3575050604080518082019091525f808252602082015290565b6040518060400160405280835f015181526020017f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4784602001516115f79190611b65565b611621907f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd47611cb8565b905292915050565b919050565b60405180604001604052806116416116cc565b815260200161164e6116cc565b905290565b60405180606001604052806003906020820280368337509192915050565b60405180608001604052806004906020820280368337509192915050565b604051806101800160405280600c906020820280368337509192915050565b60405180602001604052806001906020820280368337509192915050565b60405180604001604052806002906020820280368337509192915050565b6001600160a01b03811681146116fe575f5ffd5b50565b5f60208284031215611711575f5ffd5b81356107d4816116ea565b803560ff81168114611629575f5ffd5b5f6020828403121561173c575f5ffd5b6107d48261171c565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff8111828210171561177c5761177c611745565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156117ab576117ab611745565b604052919050565b5f5f604083850312156117c4575f5ffd5b82356117cf816116ea565b9150602083013567ffffffffffffffff8111156117ea575f5ffd5b8301601f810185136117fa575f5ffd5b803567ffffffffffffffff81111561181457611814611745565b611827601f8201601f1916602001611782565b81815286602083850101111561183b575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b5f6020828403121561186a575f5ffd5b5035919050565b81518152602080830151908201526040810161065c565b5f5f60408385031215611899575f5ffd5b6118a28361171c565b946020939093013593505050565b805f5b600281101561107f5781518452602093840193909101906001016118b3565b5f6080820190506118e48284516118b0565b60208301516118f660408401826118b0565b5092915050565b5f5f5f6060848603121561190f575f5ffd5b6119188461171c565b9250602084013563ffffffff81168114611930575f5ffd5b929592945050506040919091013590565b5f5f5f838503610160811215611955575f5ffd5b8435611960816116ea565b9350610100601f1982011215611974575f5ffd5b602085019250604061011f198201121561198c575f5ffd5b50610120840190509250925092565b5f5f82840360a08112156119ad575f5ffd5b83356119b8816116ea565b92506080601f19820112156119cb575f5ffd5b506020830190509250929050565b5f5f5f604084860312156119eb575f5ffd5b833567ffffffffffffffff811115611a01575f5ffd5b8401601f81018613611a11575f5ffd5b803567ffffffffffffffff811115611a27575f5ffd5b866020828401011115611a38575f5ffd5b6020918201979096509401359392505050565b602080825282518282018190525f918401906040840190835b81811015611a8857835163ffffffff16835260209384019390920191600101611a64565b509095945050505050565b60018060a01b0384168152826020820152606060408201525f82518060608401528060208501608085015e5f608082850101526080601f19601f830116840101915050949350505050565b634e487b7160e01b5f52603260045260245ffd5b5f6040828403128015611b03575f5ffd5b50611b0c611759565b823581526020928301359281019290925250919050565b888152876020820152866040820152856060820152604085608083013760408460c0830137610100810192909252610120820152610140019695505050505050565b5f82611b7f57634e487b7160e01b5f52601260045260245ffd5b500690565b5f82601f830112611b93575f5ffd5b611b9b611759565b806040840185811115611bac575f5ffd5b845b81811015611a88578035845260209384019301611bae565b5f6080828403128015611bd7575f5ffd5b50611be0611759565b611bea8484611b84565b8152611bf98460408501611b84565b60208201529392505050565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761065c5761065c611c05565b815f5b6002811015611c5057813583820155602090910190600101611c33565b5050604082015f5b600281101561107f57813583820160020155602090910190600101611c58565b6040818337604080820160408401375050565b823581526020808401359082015260c081016107d46040830184611c78565b6080810161065c8284611c78565b8181038181111561065c5761065c611c05565b5f81611cd957611cd9611c05565b505f190190565b8082018082111561065c5761065c611c05565b5f60208284031215611d03575f5ffd5b81516107d4816116ea56fea26469706673582212203e7ee896d31eb9233948c100329b4d9a899a0b9610f4830999ca3e77ee79e2fa64736f6c634300081b0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80`@R4\x80\x15a\0\x0FW__\xFD[P`\x046\x10a\x01&W_5`\xE0\x1C\x80cm\x14\xA9\x87\x11a\0\xA9W\x80c\xD1\xA6FP\x11a\0nW\x80c\xD1\xA6FP\x14a\x04\x08W\x80c\xD5%J\x8C\x14a\x04\x1BW\x80c\xDE)\xFA\xC0\x14a\x04;W\x80c\xE8\xBB\x9A\xE6\x14a\x04ZW\x80c\xF4\xE2O\xE5\x14a\x04\x82W__\xFD[\x80cm\x14\xA9\x87\x14a\x034W\x80cy\x16\xCE\xA6\x14a\x03[W\x80c\x7F\xF8\x1A\x87\x14a\x03\x9CW\x80c\xA3\xDB\x80\xE2\x14a\x03\xCFW\x80c\xBFy\xCEX\x14a\x03\xF5W__\xFD[\x80cG\xB3\x14\xE8\x11a\0\xEFW\x80cG\xB3\x14\xE8\x14a\x01\xFFW\x80c_a\xA8\x84\x14a\x02?W\x80c`WG\xD5\x14a\x02\x99W\x80cg\x16\x99\x11\x14a\x02\xE7W\x80ch\xBC\xCA\xAC\x14a\x03\x07W__\xFD[\x80b\xA1\xF4\xCB\x14a\x01*W\x80c\x13T*N\x14a\x01jW\x80c&\xD9A\xF2\x14a\x01\xA0W\x80c7~\xD9\x9D\x14a\x01\xB5W\x80c?\xB2yR\x14a\x01\xECW[__\xFD[a\x01Pa\x0186`\x04a\x17\x01V[`\x03` R_\x90\x81R`@\x90 \x80T`\x01\x90\x91\x01T\x82V[`@\x80Q\x92\x83R` \x83\x01\x91\x90\x91R\x01[`@Q\x80\x91\x03\x90\xF3[a\x01\x92a\x01x6`\x04a\x17\x01V[`\x01`\x01`\xA0\x1B\x03\x16_\x90\x81R`\x01` R`@\x90 T\x90V[`@Q\x90\x81R` \x01a\x01aV[a\x01\xB3a\x01\xAE6`\x04a\x17,V[a\x04\x95V[\0[a\x01\xD7a\x01\xC36`\x04a\x17,V[`\xFF\x16_\x90\x81R`\x04` R`@\x90 T\x90V[`@Qc\xFF\xFF\xFF\xFF\x90\x91\x16\x81R` \x01a\x01aV[a\x01\xB3a\x01\xFA6`\x04a\x17\xB3V[a\x05UV[a\x02'a\x02\r6`\x04a\x18ZV[_\x90\x81R`\x02` R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x16\x90V[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x01aV[a\x02\x8Ca\x02M6`\x04a\x17,V[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01RP`\xFF\x16_\x90\x81R`\x05` \x90\x81R`@\x91\x82\x90 \x82Q\x80\x84\x01\x90\x93R\x80T\x83R`\x01\x01T\x90\x82\x01R\x90V[`@Qa\x01a\x91\x90a\x18qV[a\x02\xACa\x02\xA76`\x04a\x18\x88V[a\x05\xD1V[`@\x80Q\x82Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16\x81R` \x80\x84\x01Qc\xFF\xFF\xFF\xFF\x90\x81\x16\x91\x83\x01\x91\x90\x91R\x92\x82\x01Q\x90\x92\x16\x90\x82\x01R``\x01a\x01aV[a\x02\xFAa\x02\xF56`\x04a\x17\x01V[a\x06bV[`@Qa\x01a\x91\x90a\x18\xD2V[a\x03\x1Aa\x03\x156`\x04a\x18\xFDV[a\x06\xF6V[`@Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x90\x91\x16\x81R` \x01a\x01aV[a\x02'\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\x81V[a\x03na\x03i6`\x04a\x18\x88V[a\x07\xDBV[`@\x80Qg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x90\x94\x16\x84Rc\xFF\xFF\xFF\xFF\x92\x83\x16` \x85\x01R\x91\x16\x90\x82\x01R``\x01a\x01aV[a\x03\xAFa\x03\xAA6`\x04a\x17\x01V[a\x08\"V[`@\x80Q\x83Q\x81R` \x93\x84\x01Q\x93\x81\x01\x93\x90\x93R\x82\x01R``\x01a\x01aV[a\x01Pa\x03\xDD6`\x04a\x17,V[`\x05` R_\x90\x81R`@\x90 \x80T`\x01\x90\x91\x01T\x82V[a\x01\x92a\x04\x036`\x04a\x19AV[a\x08\x98V[a\x01\xB3a\x04\x166`\x04a\x19\x9BV[a\x0BmV[a\x04.a\x04)6`\x04a\x19\xD9V[a\x0CTV[`@Qa\x01a\x91\x90a\x1AKV[a\x01\x92a\x04I6`\x04a\x17\x01V[`\x01` R_\x90\x81R`@\x90 T\x81V[a\x02'a\x04h6`\x04a\x18ZV[`\x02` R_\x90\x81R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x16\x81V[a\x01\xB3a\x04\x906`\x04a\x17\xB3V[a\r\xECV[a\x04\x9Da\x0ESV[`\xFF\x81\x16_\x90\x81R`\x04` R`@\x90 T\x15a\x04\xCDW`@Qc\x10\xCD\xA5\x17`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\xFF\x16_\x90\x81R`\x04` \x90\x81R`@\x80\x83 \x81Q``\x81\x01\x83R\x84\x81Rc\xFF\xFF\xFF\xFFC\x81\x16\x82\x86\x01\x90\x81R\x82\x85\x01\x87\x81R\x84T`\x01\x81\x01\x86U\x94\x88R\x95\x90\x96 \x91Q\x91\x90\x92\x01\x80T\x95Q\x94Q\x83\x16`\x01`\xE0\x1B\x02`\x01`\x01`\xE0\x1B\x03\x95\x90\x93\x16`\x01`\xC0\x1B\x02`\x01`\x01`\xE0\x1B\x03\x19\x90\x96\x16\x91\x90\x93\x1C\x17\x93\x90\x93\x17\x91\x90\x91\x16\x91\x90\x91\x17\x90UV[a\x05]a\x0ESV[_a\x05g\x83a\x08\"V[P\x90Pa\x05t\x82\x82a\x0E\x9EV[\x7Fs\xA2\xB7\xFB\x84G$\xB9q\x80*\xE9\xB1]\xB0\x94\xD4\xB7\x19-\xF9\xD75\x0E\x14\xEBFk\x9B\"\xEBN\x83a\x05\xB4\x85`\x01`\x01`\xA0\x1B\x03\x16_\x90\x81R`\x01` R`@\x90 T\x90V[\x84`@Qa\x05\xC4\x93\x92\x91\x90a\x1A\x93V[`@Q\x80\x91\x03\x90\xA1PPPV[`@\x80Q``\x81\x01\x82R_\x80\x82R` \x80\x83\x01\x82\x90R\x82\x84\x01\x82\x90R`\xFF\x86\x16\x82R`\x04\x90R\x91\x90\x91 \x80T\x83\x90\x81\x10a\x06\rWa\x06\ra\x1A\xDEV[_\x91\x82R` \x91\x82\x90 `@\x80Q``\x81\x01\x82R\x91\x90\x92\x01Tg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x81\x84\x1B\x16\x82Rc\xFF\xFF\xFF\xFF`\x01`\xC0\x1B\x82\x04\x81\x16\x94\x83\x01\x94\x90\x94R`\x01`\xE0\x1B\x90\x04\x90\x92\x16\x90\x82\x01R\x90P[\x92\x91PPV[a\x06ja\x16.V[`\x01`\x01`\xA0\x1B\x03\x82\x16_\x90\x81R`\x06` R`@\x90\x81\x90 \x81Q`\x80\x81\x01\x83R\x91\x82\x90\x81\x01\x82`\x02\x82\x82\x82` \x02\x82\x01\x91[\x81T\x81R` \x01\x90`\x01\x01\x90\x80\x83\x11a\x06\x9DWPPP\x91\x83RPP`@\x80Q\x80\x82\x01\x91\x82\x90R` \x90\x92\x01\x91\x90`\x02\x84\x81\x01\x91\x82\x84[\x81T\x81R` \x01\x90`\x01\x01\x90\x80\x83\x11a\x06\xD3WPPPPP\x81RPP\x90P\x91\x90PV[`\xFF\x83\x16_\x90\x81R`\x04` R`@\x81 \x80T\x82\x91\x90\x84\x90\x81\x10a\x07\x1CWa\x07\x1Ca\x1A\xDEV[_\x91\x82R` \x91\x82\x90 `@\x80Q``\x81\x01\x82R\x91\x90\x92\x01Tg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x81\x84\x1B\x16\x82Rc\xFF\xFF\xFF\xFF`\x01`\xC0\x1B\x82\x04\x81\x16\x94\x83\x01\x85\x90R`\x01`\xE0\x1B\x90\x91\x04\x81\x16\x92\x82\x01\x92\x90\x92R\x92P\x85\x16\x10\x15a\x07\x8DW`@Qc=\"\x88A`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@\x81\x01Qc\xFF\xFF\xFF\xFF\x16\x15\x80a\x07\xB3WP\x80`@\x01Qc\xFF\xFF\xFF\xFF\x16\x84c\xFF\xFF\xFF\xFF\x16\x10[a\x07\xD0W`@Qco\xE0-K`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[Q\x90P[\x93\x92PPPV[`\x04` R\x81_R`@_ \x81\x81T\x81\x10a\x07\xF4W_\x80\xFD[_\x91\x82R` \x90\x91 \x01T`@\x81\x90\x1B\x92Pc\xFF\xFF\xFF\xFF`\x01`\xC0\x1B\x82\x04\x81\x16\x92P`\x01`\xE0\x1B\x90\x91\x04\x16\x83V[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R`\x01`\x01`\xA0\x1B\x03\x82\x16_\x81\x81R`\x03` \x90\x81R`@\x80\x83 \x81Q\x80\x83\x01\x83R\x81T\x81R`\x01\x91\x82\x01T\x81\x85\x01R\x94\x84R\x90\x91R\x81 T\x90\x91\x90\x80a\x08\x8EW`@Qc%\xECl\x1F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x90\x94\x90\x93P\x91PPV[_a\x08\xA1a\x0ESV[_a\x08\xCDa\x08\xB76\x86\x90\x03\x86\x01`@\x87\x01a\x1A\xF2V[\x80Q_\x90\x81R` \x91\x82\x01Q\x90\x91R`@\x90 \x90V[\x90P\x7F\xAD2(\xB6v\xF7\xD3\xCDB\x84\xA5D?\x17\xF1\x96+6\xE4\x91\xB3\n@\xB2@XI\xE5\x97\xBA_\xB5\x81\x03a\t\x0FW`@Qc\x0C\xC7P\x91`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x85\x16_\x90\x81R`\x01` R`@\x81 T\x14a\tEW`@QcB\xEEh\xB5`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_\x81\x81R`\x02` R`@\x90 T`\x01`\x01`\xA0\x1B\x03\x16\x15a\tzW`@QcL3L\x97`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@\x80Q_\x91\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X](3\xE8Hy\xB9p\x91C\xE1\xF5\x93\xF0\0\0\x01\x91a\t\xD2\x91\x885\x91` \x80\x8B\x015\x92\x8B\x015\x91``\x8C\x015\x91`\x80\x8D\x01\x91`\xC0\x8E\x01\x91\x8D5\x91\x8E\x82\x015\x91\x01a\x1B#V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 _\x1Ca\t\xF4\x91\x90a\x1BeV[\x90Pa\n\x8Da\n-a\n\x18\x83a\n\x126\x8A\x90\x03\x8A\x01`@\x8B\x01a\x1A\xF2V[\x90a\x10\x85V[a\n'6\x89\x90\x03\x89\x01\x89a\x1A\xF2V[\x90a\x10\xF5V[a\n5a\x11iV[a\nva\ng\x85a\n\x12`@\x80Q\x80\x82\x01\x82R_\x80\x82R` \x91\x82\x01R\x81Q\x80\x83\x01\x90\x92R`\x01\x82R`\x02\x90\x82\x01R\x90V[a\n'6\x8A\x90\x03\x8A\x01\x8Aa\x1A\xF2V[a\n\x886\x8A\x90\x03\x8A\x01`\x80\x8B\x01a\x1B\xC6V[a\x12)V[a\n\xAAW`@Qc\xA7-\x02c`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x86\x16_\x90\x81R`\x03` \x90\x81R`@\x80\x83 \x88\x82\x015\x81U``\x89\x015`\x01\x90\x91\x01U`\x06\x90\x91R\x90 `\x80\x86\x01\x90a\n\xEB\x82\x82a\x1C0V[PP`\x01`\x01`\xA0\x1B\x03\x86\x16_\x81\x81R`\x01` \x90\x81R`@\x80\x83 \x86\x90U\x85\x83R`\x02\x90\x91R\x90\x81\x90 \x80T`\x01`\x01`\xA0\x1B\x03\x19\x16\x83\x17\x90U\x80Q\x7F\xE3\xFBf\x13\xAF.\x890\xCF\x85\xD4\x7F\xCFm\xB1\x01\x92\"Jd\xC6\xCB\xE8\x02>\x0E\xEE\x1B\xA3\x82\x80A\x91a\x0B\\\x91\x90\x89\x01\x90`\x80\x8A\x01\x90a\x1C\x8BV[`@Q\x80\x91\x03\x90\xA2P\x94\x93PPPPV[a\x0Bua\x14`V[_a\x0B\x7F\x83a\x08\"V[P\x90Pa\x0B\x8B\x83a\x15\x11V[a\x0B\xCB\x81a\x0B\x97a\x11iV[`@\x80Q\x80\x82\x01\x82R_\x80\x82R` \x91\x82\x01R\x81Q\x80\x83\x01\x90\x92R`\x01\x82R`\x02\x90\x82\x01Ra\n\x886\x87\x90\x03\x87\x01\x87a\x1B\xC6V[a\x0B\xE8W`@Qc\xA7-\x02c`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x83\x16_\x90\x81R`\x06` R`@\x90 \x82\x90a\x0C\x0B\x82\x82a\x1C0V[\x90PP\x82`\x01`\x01`\xA0\x1B\x03\x16\x7F\\O\x9F(\x15=\xBF?\0\xE6\x96\x07\xA5\x9E\x82\xAD\x80o\xFF\xB7\x8D\t\xF1y\xF6$2\xF7\xE9\xD2Q\x1A\x83`@Qa\x0CG\x91\x90a\x1C\xAAV[`@Q\x80\x91\x03\x90\xA2PPPV[``_\x83g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x0CpWa\x0Cpa\x17EV[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x0C\x99W\x81` \x01` \x82\x02\x806\x837\x01\x90P[P\x90P_[\x84\x81\x10\x15a\r\xE3W_\x86\x86\x83\x81\x81\x10a\x0C\xB9Wa\x0C\xB9a\x1A\xDEV[\x91\x90\x91\x015`\xF8\x1C_\x81\x81R`\x04` R`@\x90 T\x90\x92P\x90P\x80\x15\x80a\r\x19WP`\xFF\x82\x16_\x90\x81R`\x04` R`@\x81 \x80T\x90\x91\x90a\x0C\xFEWa\x0C\xFEa\x1A\xDEV[_\x91\x82R` \x90\x91 \x01T`\x01`\xC0\x1B\x90\x04c\xFF\xFF\xFF\xFF\x16\x86\x10[\x15a\r7W`@Qc?L\xB7\x0F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80[\x80\x15a\r\xD8W`\xFF\x83\x16_\x90\x81R`\x04` R`@\x90 \x87\x90a\r]`\x01\x84a\x1C\xB8V[\x81T\x81\x10a\rmWa\rma\x1A\xDEV[_\x91\x82R` \x90\x91 \x01T`\x01`\xC0\x1B\x90\x04c\xFF\xFF\xFF\xFF\x16\x11a\r\xC6Wa\r\x95`\x01\x82a\x1C\xB8V[\x85\x85\x81Q\x81\x10a\r\xA7Wa\r\xA7a\x1A\xDEV[` \x02` \x01\x01\x90c\xFF\xFF\xFF\xFF\x16\x90\x81c\xFF\xFF\xFF\xFF\x16\x81RPPa\r\xD8V[\x80a\r\xD0\x81a\x1C\xCBV[\x91PPa\r9V[PPP`\x01\x01a\x0C\x9EV[P\x94\x93PPPPV[a\r\xF4a\x0ESV[_a\r\xFE\x83a\x08\"V[P\x90Pa\x0E\x13\x82a\x0E\x0E\x83a\x15rV[a\x0E\x9EV[\x7F\xF8C\xEC\xD5:V6u\xE6!\x07\xBE\x14\x94\xFD\xDEJ=I\xAE\xED\xAF\x8D\x88\xC6\x16\xD8SF\xE3P\x0E\x83a\x05\xB4\x85`\x01`\x01`\xA0\x1B\x03\x16_\x90\x81R`\x01` R`@\x90 T\x90V[3`\x01`\x01`\xA0\x1B\x03\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\x16\x14a\x0E\x9CW`@Qcpp\xF3\xB1`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[V[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R_[\x83Q\x81\x10\x15a\x10\x7FW_\x84\x82\x81Q\x81\x10a\x0E\xCFWa\x0E\xCFa\x1A\xDEV[\x01` \x90\x81\x01Q`\xF8\x1C_\x81\x81R`\x04\x90\x92R`@\x82 T\x90\x92P\x90\x81\x90\x03a\x0F\x0BW`@Qcs\x10\xCF\xF5`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\xFF\x82\x16_\x90\x81R`\x05` \x90\x81R`@\x91\x82\x90 \x82Q\x80\x84\x01\x90\x93R\x80T\x83R`\x01\x01T\x90\x82\x01Ra\x0F>\x90\x86a\x10\xF5V[`\xFF\x83\x16_\x81\x81R`\x05` \x90\x81R`@\x80\x83 \x85Q\x80\x82U\x86\x84\x01\x80Q`\x01\x93\x84\x01U\x90\x85RQ\x83R\x81\x84 \x94\x84R`\x04\x90\x92R\x82 \x93\x97P\x91\x92\x90\x91a\x0F\x86\x90\x85a\x1C\xB8V[\x81T\x81\x10a\x0F\x96Wa\x0F\x96a\x1A\xDEV[_\x91\x82R` \x90\x91 \x01\x80T\x90\x91Pc\xFF\xFF\xFF\xFFC\x81\x16`\x01`\xC0\x1B\x90\x92\x04\x16\x03a\x0F\xD4W\x80T`\x01`\x01`\xC0\x1B\x03\x19\x16`@\x83\x90\x1C\x17\x81Ua\x10oV[\x80Tc\xFF\xFF\xFF\xFFC\x81\x16`\x01`\xE0\x1B\x81\x81\x02`\x01`\x01`\xE0\x1B\x03\x94\x85\x16\x17\x85U`\xFF\x88\x16_\x90\x81R`\x04` \x90\x81R`@\x80\x83 \x81Q``\x81\x01\x83Rg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x8B\x16\x81R\x80\x84\x01\x96\x87R\x80\x83\x01\x85\x81R\x82T`\x01\x81\x01\x84U\x92\x86R\x93\x90\x94 \x93Q\x93\x01\x80T\x95Q\x92Q\x87\x16\x90\x94\x02\x91\x90\x95\x16`\x01`\xC0\x1B\x02`\x01`\x01`\xE0\x1B\x03\x19\x94\x90\x94\x16\x91\x90\x94\x1C\x17\x91\x90\x91\x17\x90\x92\x16\x17\x90U[PP`\x01\x90\x92\x01\x91Pa\x0E\xB3\x90PV[PPPPV[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01Ra\x10\xA0a\x16SV[\x83Q\x81R` \x80\x85\x01Q\x90\x82\x01R`@\x80\x82\x01\x84\x90R_\x90\x83``\x84`\x07a\x07\xD0Z\x03\xFA\x90P\x80\x80a\x10\xCEW\xFE[P\x80a\x10\xEDW`@Qc#\x19\xDF\x19`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PP\x92\x91PPV[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01Ra\x11\x10a\x16qV[\x83Q\x81R` \x80\x85\x01Q\x81\x83\x01R\x83Q`@\x80\x84\x01\x91\x90\x91R\x90\x84\x01Q``\x83\x01R_\x90\x83`\x80\x84`\x06a\x07\xD0Z\x03\xFA\x90P\x80\x80a\x11JW\xFE[P\x80a\x10\xEDW`@Qc\xD4\xB6\x8F\xD7`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x11qa\x16.V[P`@\x80Q`\x80\x81\x01\x82R\x7F\x19\x8E\x93\x93\x92\rH:r`\xBF\xB71\xFB]%\xF1\xAAI35\xA9\xE7\x12\x97\xE4\x85\xB7\xAE\xF3\x12\xC2\x81\x83\x01\x90\x81R\x7F\x18\0\xDE\xEF\x12\x1F\x1EvBj\0f^\\DygC\"\xD4\xF7^\xDA\xDDF\xDE\xBD\\\xD9\x92\xF6\xED``\x83\x01R\x81R\x81Q\x80\x83\x01\x90\x92R\x7F']\xC4\xA2\x88\xD1\xAF\xB3\xCB\xB1\xAC\t\x18u$\xC7\xDB69]\xF7\xBE;\x99\xE6s\xB1:\x07Ze\xEC\x82R\x7F\x1D\x9B\xEF\xCD\x05\xA52>m\xA4\xD45\xF3\xB6\x17\xCD\xB3\xAF\x83(\\-\xF7\x11\xEF9\xC0\x15q\x82\x7F\x9D` \x83\x81\x01\x91\x90\x91R\x81\x01\x91\x90\x91R\x90V[`@\x80Q\x80\x82\x01\x82R\x85\x81R` \x80\x82\x01\x85\x90R\x82Q\x80\x84\x01\x90\x93R\x85\x83R\x82\x01\x83\x90R_\x91a\x12Wa\x16\x8FV[_[`\x02\x81\x10\x15a\x14\x0EW_a\x12n\x82`\x06a\x1C\x19V[\x90P\x84\x82`\x02\x81\x10a\x12\x82Wa\x12\x82a\x1A\xDEV[` \x02\x01QQ\x83a\x12\x93\x83_a\x1C\xE0V[`\x0C\x81\x10a\x12\xA3Wa\x12\xA3a\x1A\xDEV[` \x02\x01R\x84\x82`\x02\x81\x10a\x12\xBAWa\x12\xBAa\x1A\xDEV[` \x02\x01Q` \x01Q\x83\x82`\x01a\x12\xD1\x91\x90a\x1C\xE0V[`\x0C\x81\x10a\x12\xE1Wa\x12\xE1a\x1A\xDEV[` \x02\x01R\x83\x82`\x02\x81\x10a\x12\xF8Wa\x12\xF8a\x1A\xDEV[` \x02\x01QQQ\x83a\x13\x0B\x83`\x02a\x1C\xE0V[`\x0C\x81\x10a\x13\x1BWa\x13\x1Ba\x1A\xDEV[` \x02\x01R\x83\x82`\x02\x81\x10a\x132Wa\x132a\x1A\xDEV[` \x02\x01QQ`\x01` \x02\x01Q\x83a\x13K\x83`\x03a\x1C\xE0V[`\x0C\x81\x10a\x13[Wa\x13[a\x1A\xDEV[` \x02\x01R\x83\x82`\x02\x81\x10a\x13rWa\x13ra\x1A\xDEV[` \x02\x01Q` \x01Q_`\x02\x81\x10a\x13\x8CWa\x13\x8Ca\x1A\xDEV[` \x02\x01Q\x83a\x13\x9D\x83`\x04a\x1C\xE0V[`\x0C\x81\x10a\x13\xADWa\x13\xADa\x1A\xDEV[` \x02\x01R\x83\x82`\x02\x81\x10a\x13\xC4Wa\x13\xC4a\x1A\xDEV[` \x02\x01Q` \x01Q`\x01`\x02\x81\x10a\x13\xDFWa\x13\xDFa\x1A\xDEV[` \x02\x01Q\x83a\x13\xF0\x83`\x05a\x1C\xE0V[`\x0C\x81\x10a\x14\0Wa\x14\0a\x1A\xDEV[` \x02\x01RP`\x01\x01a\x12YV[Pa\x14\x17a\x16\xAEV[_` \x82a\x01\x80\x85`\x08a\x07\xD0Z\x03\xFA\x90P\x80\x80a\x141W\xFE[P\x80a\x14PW`@Qc$\xCC\xC7\x93`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PQ\x15\x15\x98\x97PPPPPPPPV[\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\x16c\x8D\xA5\xCB[`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x14\xBCW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x14\xE0\x91\x90a\x1C\xF3V[`\x01`\x01`\xA0\x1B\x03\x163`\x01`\x01`\xA0\x1B\x03\x16\x14a\x0E\x9CW`@Qcpp\xF3\xB1`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_a\x15\x1B\x82a\x06bV[\x80QQ\x90\x91P\x15\x80\x15a\x151WP\x80Q` \x01Q\x15[\x80\x15a\x15@WP` \x81\x01QQ\x15[\x80\x15a\x15QWP` \x81\x81\x01Q\x01Q\x15[a\x15nW`@Qc\x08I\xE5\xCF`\xE4\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PPV[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R\x81Q\x15\x80\x15a\x15\x96WP` \x82\x01Q\x15[\x15a\x15\xB3WPP`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R\x90V[`@Q\x80`@\x01`@R\x80\x83_\x01Q\x81R` \x01\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x84` \x01Qa\x15\xF7\x91\x90a\x1BeV[a\x16!\x90\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDGa\x1C\xB8V[\x90R\x92\x91PPV[\x91\x90PV[`@Q\x80`@\x01`@R\x80a\x16Aa\x16\xCCV[\x81R` \x01a\x16Na\x16\xCCV[\x90R\x90V[`@Q\x80``\x01`@R\x80`\x03\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[`@Q\x80`\x80\x01`@R\x80`\x04\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[`@Q\x80a\x01\x80\x01`@R\x80`\x0C\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[`@Q\x80` \x01`@R\x80`\x01\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[`@Q\x80`@\x01`@R\x80`\x02\x90` \x82\x02\x806\x837P\x91\x92\x91PPV[`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a\x16\xFEW__\xFD[PV[_` \x82\x84\x03\x12\x15a\x17\x11W__\xFD[\x815a\x07\xD4\x81a\x16\xEAV[\x805`\xFF\x81\x16\x81\x14a\x16)W__\xFD[_` \x82\x84\x03\x12\x15a\x17~\xE8\x96\xD3\x1E\xB9#9H\xC1\x002\x9BM\x9A\x89\x9A\x0B\x96\x10\xF4\x83\t\x99\xCA>w\xEEy\xE2\xFAdsolcC\0\x08\x1B\x003", - ); - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BLSPubkeyAlreadyRegistered()` and selector `0x9866992e`. - ```solidity - error BLSPubkeyAlreadyRegistered(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BLSPubkeyAlreadyRegistered {} - #[allow( - non_camel_case_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: BLSPubkeyAlreadyRegistered) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BLSPubkeyAlreadyRegistered { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BLSPubkeyAlreadyRegistered { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BLSPubkeyAlreadyRegistered()"; - const SELECTOR: [u8; 4] = [152u8, 102u8, 153u8, 46u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BlockNumberBeforeFirstUpdate()` and selector `0x3f4cb70f`. - ```solidity - error BlockNumberBeforeFirstUpdate(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BlockNumberBeforeFirstUpdate {} - #[allow( - non_camel_case_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: BlockNumberBeforeFirstUpdate) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BlockNumberBeforeFirstUpdate { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BlockNumberBeforeFirstUpdate { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BlockNumberBeforeFirstUpdate()"; - const SELECTOR: [u8; 4] = [63u8, 76u8, 183u8, 15u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BlockNumberNotLatest()` and selector `0x6fe02d4b`. - ```solidity - error BlockNumberNotLatest(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BlockNumberNotLatest {} - #[allow( - non_camel_case_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: BlockNumberNotLatest) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BlockNumberNotLatest { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BlockNumberNotLatest { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BlockNumberNotLatest()"; - const SELECTOR: [u8; 4] = [111u8, 224u8, 45u8, 75u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BlockNumberTooRecent()` and selector `0x3d228841`. - ```solidity - error BlockNumberTooRecent(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BlockNumberTooRecent {} - #[allow( - non_camel_case_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: BlockNumberTooRecent) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BlockNumberTooRecent { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BlockNumberTooRecent { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BlockNumberTooRecent()"; - const SELECTOR: [u8; 4] = [61u8, 34u8, 136u8, 65u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ECAddFailed()` and selector `0xd4b68fd7`. - ```solidity - error ECAddFailed(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ECAddFailed {} - #[allow( - non_camel_case_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: ECAddFailed) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ECAddFailed { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ECAddFailed { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ECAddFailed()"; - const SELECTOR: [u8; 4] = [212u8, 182u8, 143u8, 215u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ECMulFailed()` and selector `0x4633be32`. - ```solidity - error ECMulFailed(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ECMulFailed {} - #[allow( - non_camel_case_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: ECMulFailed) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ECMulFailed { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ECMulFailed { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ECMulFailed()"; - const SELECTOR: [u8; 4] = [70u8, 51u8, 190u8, 50u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ECPairingFailed()` and selector `0x93331e4c`. - ```solidity - error ECPairingFailed(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ECPairingFailed {} - #[allow( - non_camel_case_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: ECPairingFailed) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ECPairingFailed { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ECPairingFailed { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ECPairingFailed()"; - const SELECTOR: [u8; 4] = [147u8, 51u8, 30u8, 76u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `G2PubkeyAlreadySet()` and selector `0x849e5cf0`. - ```solidity - error G2PubkeyAlreadySet(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct G2PubkeyAlreadySet {} - #[allow( - non_camel_case_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: G2PubkeyAlreadySet) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for G2PubkeyAlreadySet { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for G2PubkeyAlreadySet { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "G2PubkeyAlreadySet()"; - const SELECTOR: [u8; 4] = [132u8, 158u8, 92u8, 240u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InvalidBLSSignatureOrPrivateKey()` and selector `0xa72d0263`. - ```solidity - error InvalidBLSSignatureOrPrivateKey(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidBLSSignatureOrPrivateKey {} - #[allow( - non_camel_case_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: InvalidBLSSignatureOrPrivateKey) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidBLSSignatureOrPrivateKey { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidBLSSignatureOrPrivateKey { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidBLSSignatureOrPrivateKey()"; - const SELECTOR: [u8; 4] = [167u8, 45u8, 2u8, 99u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `OnlyRegistryCoordinatorOwner()` and selector `0xe0e1e762`. - ```solidity - error OnlyRegistryCoordinatorOwner(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OnlyRegistryCoordinatorOwner {} - #[allow( - non_camel_case_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: OnlyRegistryCoordinatorOwner) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OnlyRegistryCoordinatorOwner { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for OnlyRegistryCoordinatorOwner { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "OnlyRegistryCoordinatorOwner()"; - const SELECTOR: [u8; 4] = [224u8, 225u8, 231u8, 98u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**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<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**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<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `QuorumAlreadyExists()` and selector `0x4336945c`. - ```solidity - error QuorumAlreadyExists(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct QuorumAlreadyExists {} - #[allow( - non_camel_case_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: QuorumAlreadyExists) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for QuorumAlreadyExists { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for QuorumAlreadyExists { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "QuorumAlreadyExists()"; - const SELECTOR: [u8; 4] = [67u8, 54u8, 148u8, 92u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `QuorumDoesNotExist()` and selector `0xe6219fea`. - ```solidity - error QuorumDoesNotExist(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct QuorumDoesNotExist {} - #[allow( - non_camel_case_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: QuorumDoesNotExist) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for QuorumDoesNotExist { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for QuorumDoesNotExist { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "QuorumDoesNotExist()"; - const SELECTOR: [u8; 4] = [230u8, 33u8, 159u8, 234u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ZeroPubKey()` and selector `0x0cc75091`. - ```solidity - error ZeroPubKey(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ZeroPubKey {} - #[allow( - non_camel_case_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: ZeroPubKey) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ZeroPubKey { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ZeroPubKey { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ZeroPubKey()"; - const SELECTOR: [u8; 4] = [12u8, 199u8, 80u8, 145u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**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,) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Event with signature `NewG2PubkeyRegistration(address,(uint256[2],uint256[2]))` and selector `0x5c4f9f28153dbf3f00e69607a59e82ad806fffb78d09f179f62432f7e9d2511a`. - ```solidity - event NewG2PubkeyRegistration(address indexed operator, BN254.G2Point pubkeyG2); - ```*/ - #[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style - )] - #[derive(Clone)] - pub struct NewG2PubkeyRegistration { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub pubkeyG2: ::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 NewG2PubkeyRegistration { - type DataTuple<'a> = (BN254::G2Point,); - 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 = - "NewG2PubkeyRegistration(address,(uint256[2],uint256[2]))"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 92u8, 79u8, 159u8, 40u8, 21u8, 61u8, 191u8, 63u8, 0u8, 230u8, 150u8, 7u8, - 165u8, 158u8, 130u8, 173u8, 128u8, 111u8, 255u8, 183u8, 141u8, 9u8, 241u8, - 121u8, 246u8, 36u8, 50u8, 247u8, 233u8, 210u8, 81u8, 26u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - operator: topics.1, - pubkeyG2: 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.pubkeyG2, - ),) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH, self.operator) - } - #[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 NewG2PubkeyRegistration { - 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<&NewG2PubkeyRegistration> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &NewG2PubkeyRegistration) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Event with signature `NewPubkeyRegistration(address,(uint256,uint256),(uint256[2],uint256[2]))` and selector `0xe3fb6613af2e8930cf85d47fcf6db10192224a64c6cbe8023e0eee1ba3828041`. - ```solidity - event NewPubkeyRegistration(address indexed operator, BN254.G1Point pubkeyG1, BN254.G2Point pubkeyG2); - ```*/ - #[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style - )] - #[derive(Clone)] - pub struct NewPubkeyRegistration { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub pubkeyG1: ::RustType, - #[allow(missing_docs)] - pub pubkeyG2: ::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 NewPubkeyRegistration { - type DataTuple<'a> = (BN254::G1Point, BN254::G2Point); - 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 = - "NewPubkeyRegistration(address,(uint256,uint256),(uint256[2],uint256[2]))"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 227u8, 251u8, 102u8, 19u8, 175u8, 46u8, 137u8, 48u8, 207u8, 133u8, 212u8, - 127u8, 207u8, 109u8, 177u8, 1u8, 146u8, 34u8, 74u8, 100u8, 198u8, 203u8, 232u8, - 2u8, 62u8, 14u8, 238u8, 27u8, 163u8, 130u8, 128u8, 65u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - operator: topics.1, - pubkeyG1: data.0, - pubkeyG2: 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.pubkeyG1), - ::tokenize(&self.pubkeyG2), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH, self.operator) - } - #[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 NewPubkeyRegistration { - 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<&NewPubkeyRegistration> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &NewPubkeyRegistration) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Event with signature `OperatorAddedToQuorums(address,bytes32,bytes)` and selector `0x73a2b7fb844724b971802ae9b15db094d4b7192df9d7350e14eb466b9b22eb4e`. - ```solidity - event OperatorAddedToQuorums(address operator, bytes32 operatorId, bytes quorumNumbers); - ```*/ - #[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style - )] - #[derive(Clone)] - pub struct OperatorAddedToQuorums { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorId: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - } - #[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 OperatorAddedToQuorums { - type DataTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Bytes, - ); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "OperatorAddedToQuorums(address,bytes32,bytes)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 115u8, 162u8, 183u8, 251u8, 132u8, 71u8, 36u8, 185u8, 113u8, 128u8, 42u8, - 233u8, 177u8, 93u8, 176u8, 148u8, 212u8, 183u8, 25u8, 45u8, 249u8, 215u8, 53u8, - 14u8, 20u8, 235u8, 70u8, 107u8, 155u8, 34u8, 235u8, 78u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - operator: data.0, - operatorId: data.1, - quorumNumbers: 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.operator, - ), - as alloy_sol_types::SolType>::tokenize(&self.operatorId), - ::tokenize( - &self.quorumNumbers, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH,) - } - #[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 OperatorAddedToQuorums { - 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<&OperatorAddedToQuorums> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorAddedToQuorums) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Event with signature `OperatorRemovedFromQuorums(address,bytes32,bytes)` and selector `0xf843ecd53a563675e62107be1494fdde4a3d49aeedaf8d88c616d85346e3500e`. - ```solidity - event OperatorRemovedFromQuorums(address operator, bytes32 operatorId, bytes quorumNumbers); - ```*/ - #[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style - )] - #[derive(Clone)] - pub struct OperatorRemovedFromQuorums { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorId: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - } - #[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 OperatorRemovedFromQuorums { - type DataTuple<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Bytes, - ); - type DataToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,); - const SIGNATURE: &'static str = "OperatorRemovedFromQuorums(address,bytes32,bytes)"; - const SIGNATURE_HASH: alloy_sol_types::private::B256 = - alloy_sol_types::private::B256::new([ - 248u8, 67u8, 236u8, 213u8, 58u8, 86u8, 54u8, 117u8, 230u8, 33u8, 7u8, 190u8, - 20u8, 148u8, 253u8, 222u8, 74u8, 61u8, 73u8, 174u8, 237u8, 175u8, 141u8, 136u8, - 198u8, 22u8, 216u8, 83u8, 70u8, 227u8, 80u8, 14u8, - ]); - const ANONYMOUS: bool = false; - #[allow(unused_variables)] - #[inline] - fn new( - topics: ::RustType, - data: as alloy_sol_types::SolType>::RustType, - ) -> Self { - Self { - operator: data.0, - operatorId: data.1, - quorumNumbers: 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.operator, - ), - as alloy_sol_types::SolType>::tokenize(&self.operatorId), - ::tokenize( - &self.quorumNumbers, - ), - ) - } - #[inline] - fn topics(&self) -> ::RustType { - (Self::SIGNATURE_HASH,) - } - #[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 OperatorRemovedFromQuorums { - 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<&OperatorRemovedFromQuorums> for alloy_sol_types::private::LogData { - #[inline] - fn from(this: &OperatorRemovedFromQuorums) -> alloy_sol_types::private::LogData { - alloy_sol_types::SolEvent::encode_log_data(this) - } - } - }; - /**Constructor`. - ```solidity - constructor(address _slashingRegistryCoordinator); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct constructorCall { - #[allow(missing_docs)] - pub _slashingRegistryCoordinator: 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._slashingRegistryCoordinator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for constructorCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - _slashingRegistryCoordinator: 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._slashingRegistryCoordinator, - ), - ) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `apkHistory(uint8,uint256)` and selector `0x7916cea6`. - ```solidity - function apkHistory(uint8 quorumNumber, uint256) external view returns (bytes24 apkHash, uint32 updateBlockNumber, uint32 nextUpdateBlockNumber); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct apkHistoryCall { - #[allow(missing_docs)] - pub quorumNumber: u8, - #[allow(missing_docs)] - pub _1: alloy::sol_types::private::primitives::aliases::U256, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`apkHistory(uint8,uint256)`](apkHistoryCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct apkHistoryReturn { - #[allow(missing_docs)] - pub apkHash: alloy::sol_types::private::FixedBytes<24>, - #[allow(missing_docs)] - pub updateBlockNumber: u32, - #[allow(missing_docs)] - pub nextUpdateBlockNumber: 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::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: apkHistoryCall) -> Self { - (value.quorumNumber, value._1) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for apkHistoryCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - quorumNumber: tuple.0, - _1: tuple.1, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::FixedBytes<24>, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<24>, 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: apkHistoryReturn) -> Self { - ( - value.apkHash, - value.updateBlockNumber, - value.nextUpdateBlockNumber, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for apkHistoryReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - apkHash: tuple.0, - updateBlockNumber: tuple.1, - nextUpdateBlockNumber: tuple.2, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for apkHistoryCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Uint<8>, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = apkHistoryReturn; - type ReturnTuple<'a> = ( - alloy::sol_types::sol_data::FixedBytes<24>, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Uint<32>, - ); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "apkHistory(uint8,uint256)"; - const SELECTOR: [u8; 4] = [121u8, 22u8, 206u8, 166u8]; - #[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.quorumNumber, - ), - as alloy_sol_types::SolType>::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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `currentApk(uint8)` and selector `0xa3db80e2`. - ```solidity - function currentApk(uint8 quorumNumber) external view returns (uint256 X, uint256 Y); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct currentApkCall { - #[allow(missing_docs)] - pub quorumNumber: u8, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`currentApk(uint8)`](currentApkCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct currentApkReturn { - #[allow(missing_docs)] - pub X: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub Y: 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>,); - #[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: currentApkCall) -> Self { - (value.quorumNumber,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for currentApkCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - quorumNumber: tuple.0, - } - } - } - } - { - #[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: currentApkReturn) -> Self { - (value.X, value.Y) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for currentApkReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - X: tuple.0, - Y: tuple.1, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for currentApkCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<8>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = currentApkReturn; - type ReturnTuple<'a> = ( - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Uint<256>, - ); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "currentApk(uint8)"; - const SELECTOR: [u8; 4] = [163u8, 219u8, 128u8, 226u8]; - #[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.quorumNumber, - ), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `deregisterOperator(address,bytes)` and selector `0xf4e24fe5`. - ```solidity - function deregisterOperator(address operator, bytes memory quorumNumbers) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct deregisterOperatorCall { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - } - ///Container type for the return parameters of the [`deregisterOperator(address,bytes)`](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> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Bytes, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - 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: deregisterOperatorCall) -> Self { - (value.operator, value.quorumNumbers) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for deregisterOperatorCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - operator: tuple.0, - quorumNumbers: 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: 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> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Bytes, - ); - 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(address,bytes)"; - const SELECTOR: [u8; 4] = [244u8, 226u8, 79u8, 229u8]; - #[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.quorumNumbers, - ), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getApk(uint8)` and selector `0x5f61a884`. - ```solidity - function getApk(uint8 quorumNumber) external view returns (BN254.G1Point memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApkCall { - #[allow(missing_docs)] - pub quorumNumber: u8, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getApk(uint8)`](getApkCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApkReturn { - #[allow(missing_docs)] - 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<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: getApkCall) -> Self { - (value.quorumNumber,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApkCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - quorumNumber: tuple.0, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (BN254::G1Point,); - #[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: getApkReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApkReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getApkCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<8>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getApkReturn; - type ReturnTuple<'a> = (BN254::G1Point,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getApk(uint8)"; - const SELECTOR: [u8; 4] = [95u8, 97u8, 168u8, 132u8]; - #[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.quorumNumber, - ), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getApkHashAtBlockNumberAndIndex(uint8,uint32,uint256)` and selector `0x68bccaac`. - ```solidity - function getApkHashAtBlockNumberAndIndex(uint8 quorumNumber, uint32 blockNumber, uint256 index) external view returns (bytes24); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApkHashAtBlockNumberAndIndexCall { - #[allow(missing_docs)] - pub quorumNumber: u8, - #[allow(missing_docs)] - pub blockNumber: u32, - #[allow(missing_docs)] - pub index: alloy::sol_types::private::primitives::aliases::U256, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getApkHashAtBlockNumberAndIndex(uint8,uint32,uint256)`](getApkHashAtBlockNumberAndIndexCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApkHashAtBlockNumberAndIndexReturn { - #[allow(missing_docs)] - pub _0: alloy::sol_types::private::FixedBytes<24>, - } - #[allow( - non_camel_case_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<32>, - alloy::sol_types::sol_data::Uint<256>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - u8, - u32, - 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: getApkHashAtBlockNumberAndIndexCall) -> Self { - (value.quorumNumber, value.blockNumber, value.index) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApkHashAtBlockNumberAndIndexCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - quorumNumber: tuple.0, - blockNumber: tuple.1, - index: tuple.2, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<24>,); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<24>,); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: getApkHashAtBlockNumberAndIndexReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApkHashAtBlockNumberAndIndexReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getApkHashAtBlockNumberAndIndexCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Uint<8>, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getApkHashAtBlockNumberAndIndexReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<24>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getApkHashAtBlockNumberAndIndex(uint8,uint32,uint256)"; - const SELECTOR: [u8; 4] = [104u8, 188u8, 202u8, 172u8]; - #[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.quorumNumber, - ), - as alloy_sol_types::SolType>::tokenize( - &self.blockNumber, - ), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getApkHistoryLength(uint8)` and selector `0x377ed99d`. - ```solidity - function getApkHistoryLength(uint8 quorumNumber) external view returns (uint32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApkHistoryLengthCall { - #[allow(missing_docs)] - pub quorumNumber: u8, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getApkHistoryLength(uint8)`](getApkHistoryLengthCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApkHistoryLengthReturn { - #[allow(missing_docs)] - 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::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: getApkHistoryLengthCall) -> Self { - (value.quorumNumber,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApkHistoryLengthCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - quorumNumber: 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: getApkHistoryLengthReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApkHistoryLengthReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getApkHistoryLengthCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<8>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getApkHistoryLengthReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getApkHistoryLength(uint8)"; - const SELECTOR: [u8; 4] = [55u8, 126u8, 217u8, 157u8]; - #[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.quorumNumber, - ), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getApkIndicesAtBlockNumber(bytes,uint256)` and selector `0xd5254a8c`. - ```solidity - function getApkIndicesAtBlockNumber(bytes memory quorumNumbers, uint256 blockNumber) external view returns (uint32[] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApkIndicesAtBlockNumberCall { - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - #[allow(missing_docs)] - pub blockNumber: alloy::sol_types::private::primitives::aliases::U256, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getApkIndicesAtBlockNumber(bytes,uint256)`](getApkIndicesAtBlockNumberCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApkIndicesAtBlockNumberReturn { - #[allow(missing_docs)] - 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::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: getApkIndicesAtBlockNumberCall) -> Self { - (value.quorumNumbers, value.blockNumber) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApkIndicesAtBlockNumberCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - quorumNumbers: tuple.0, - blockNumber: tuple.1, - } - } - } - } - { - #[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: getApkIndicesAtBlockNumberReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApkIndicesAtBlockNumberReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getApkIndicesAtBlockNumberCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getApkIndicesAtBlockNumberReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getApkIndicesAtBlockNumber(bytes,uint256)"; - const SELECTOR: [u8; 4] = [213u8, 37u8, 74u8, 140u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.quorumNumbers, - ), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getApkUpdateAtIndex(uint8,uint256)` and selector `0x605747d5`. - ```solidity - function getApkUpdateAtIndex(uint8 quorumNumber, uint256 index) external view returns (IBLSApkRegistryTypes.ApkUpdate memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApkUpdateAtIndexCall { - #[allow(missing_docs)] - pub quorumNumber: u8, - #[allow(missing_docs)] - pub index: alloy::sol_types::private::primitives::aliases::U256, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getApkUpdateAtIndex(uint8,uint256)`](getApkUpdateAtIndexCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getApkUpdateAtIndexReturn { - #[allow(missing_docs)] - 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<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: getApkUpdateAtIndexCall) -> Self { - (value.quorumNumber, value.index) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApkUpdateAtIndexCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - quorumNumber: tuple.0, - index: tuple.1, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (IBLSApkRegistryTypes::ApkUpdate,); - #[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: getApkUpdateAtIndexReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getApkUpdateAtIndexReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getApkUpdateAtIndexCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Uint<8>, - alloy::sol_types::sol_data::Uint<256>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getApkUpdateAtIndexReturn; - type ReturnTuple<'a> = (IBLSApkRegistryTypes::ApkUpdate,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getApkUpdateAtIndex(uint8,uint256)"; - const SELECTOR: [u8; 4] = [96u8, 87u8, 71u8, 213u8]; - #[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.quorumNumber, - ), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getOperatorFromPubkeyHash(bytes32)` and selector `0x47b314e8`. - ```solidity - function getOperatorFromPubkeyHash(bytes32 pubkeyHash) external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorFromPubkeyHashCall { - #[allow(missing_docs)] - pub pubkeyHash: alloy::sol_types::private::FixedBytes<32>, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getOperatorFromPubkeyHash(bytes32)`](getOperatorFromPubkeyHashCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorFromPubkeyHashReturn { - #[allow(missing_docs)] - 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::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: getOperatorFromPubkeyHashCall) -> Self { - (value.pubkeyHash,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorFromPubkeyHashCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - pubkeyHash: 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: getOperatorFromPubkeyHashReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorFromPubkeyHashReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorFromPubkeyHashCall { - type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorFromPubkeyHashReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getOperatorFromPubkeyHash(bytes32)"; - const SELECTOR: [u8; 4] = [71u8, 179u8, 20u8, 232u8]; - #[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.pubkeyHash), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getOperatorId(address)` and selector `0x13542a4e`. - ```solidity - function getOperatorId(address operator) external view returns (bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorIdCall { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getOperatorId(address)`](getOperatorIdCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorIdReturn { - #[allow(missing_docs)] - 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,); - #[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: getOperatorIdCall) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorIdCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: 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: getOperatorIdReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorIdReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorIdCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorIdReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getOperatorId(address)"; - const SELECTOR: [u8; 4] = [19u8, 84u8, 42u8, 78u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getOperatorPubkeyG2(address)` and selector `0x67169911`. - ```solidity - function getOperatorPubkeyG2(address operator) external view returns (BN254.G2Point memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorPubkeyG2Call { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getOperatorPubkeyG2(address)`](getOperatorPubkeyG2Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorPubkeyG2Return { - #[allow(missing_docs)] - 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: getOperatorPubkeyG2Call) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorPubkeyG2Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (BN254::G2Point,); - #[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: getOperatorPubkeyG2Return) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorPubkeyG2Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorPubkeyG2Call { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorPubkeyG2Return; - type ReturnTuple<'a> = (BN254::G2Point,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getOperatorPubkeyG2(address)"; - const SELECTOR: [u8; 4] = [103u8, 22u8, 153u8, 17u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getRegisteredPubkey(address)` and selector `0x7ff81a87`. - ```solidity - function getRegisteredPubkey(address operator) external view returns (BN254.G1Point memory, bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getRegisteredPubkeyCall { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getRegisteredPubkey(address)`](getRegisteredPubkeyCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getRegisteredPubkeyReturn { - #[allow(missing_docs)] - pub _0: ::RustType, - #[allow(missing_docs)] - pub _1: 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,); - #[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: getRegisteredPubkeyCall) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getRegisteredPubkeyCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0 } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = - (BN254::G1Point, alloy::sol_types::sol_data::FixedBytes<32>); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - ::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: getRegisteredPubkeyReturn) -> Self { - (value._0, value._1) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getRegisteredPubkeyReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - _0: tuple.0, - _1: tuple.1, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getRegisteredPubkeyCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getRegisteredPubkeyReturn; - type ReturnTuple<'a> = (BN254::G1Point, alloy::sol_types::sol_data::FixedBytes<32>); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getRegisteredPubkey(address)"; - const SELECTOR: [u8; 4] = [127u8, 248u8, 26u8, 135u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `initializeQuorum(uint8)` and selector `0x26d941f2`. - ```solidity - function initializeQuorum(uint8 quorumNumber) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct initializeQuorumCall { - #[allow(missing_docs)] - pub quorumNumber: u8, - } - ///Container type for the return parameters of the [`initializeQuorum(uint8)`](initializeQuorumCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct initializeQuorumReturn {} - #[allow( - non_camel_case_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>,); - #[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: initializeQuorumCall) -> Self { - (value.quorumNumber,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for initializeQuorumCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - quorumNumber: 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: initializeQuorumReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for initializeQuorumReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for initializeQuorumCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Uint<8>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = initializeQuorumReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "initializeQuorum(uint8)"; - const SELECTOR: [u8; 4] = [38u8, 217u8, 65u8, 242u8]; - #[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.quorumNumber, - ), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `operatorToPubkey(address)` and selector `0x00a1f4cb`. - ```solidity - function operatorToPubkey(address operator) external view returns (uint256 X, uint256 Y); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct operatorToPubkeyCall { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`operatorToPubkey(address)`](operatorToPubkeyCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct operatorToPubkeyReturn { - #[allow(missing_docs)] - pub X: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub Y: 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: operatorToPubkeyCall) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for operatorToPubkeyCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0 } - } - } - } - { - #[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: operatorToPubkeyReturn) -> Self { - (value.X, value.Y) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for operatorToPubkeyReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - X: tuple.0, - Y: tuple.1, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for operatorToPubkeyCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = operatorToPubkeyReturn; - type ReturnTuple<'a> = ( - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Uint<256>, - ); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "operatorToPubkey(address)"; - const SELECTOR: [u8; 4] = [0u8, 161u8, 244u8, 203u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `operatorToPubkeyHash(address)` and selector `0xde29fac0`. - ```solidity - function operatorToPubkeyHash(address operator) external view returns (bytes32 operatorId); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct operatorToPubkeyHashCall { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`operatorToPubkeyHash(address)`](operatorToPubkeyHashCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct operatorToPubkeyHashReturn { - #[allow(missing_docs)] - pub operatorId: 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,); - #[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: operatorToPubkeyHashCall) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for operatorToPubkeyHashCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: 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: operatorToPubkeyHashReturn) -> Self { - (value.operatorId,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for operatorToPubkeyHashReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - operatorId: tuple.0, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for operatorToPubkeyHashCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = operatorToPubkeyHashReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "operatorToPubkeyHash(address)"; - const SELECTOR: [u8; 4] = [222u8, 41u8, 250u8, 192u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `pubkeyHashToOperator(bytes32)` and selector `0xe8bb9ae6`. - ```solidity - function pubkeyHashToOperator(bytes32 pubkeyHash) external view returns (address operator); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct pubkeyHashToOperatorCall { - #[allow(missing_docs)] - pub pubkeyHash: alloy::sol_types::private::FixedBytes<32>, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`pubkeyHashToOperator(bytes32)`](pubkeyHashToOperatorCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct pubkeyHashToOperatorReturn { - #[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; - { - #[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: pubkeyHashToOperatorCall) -> Self { - (value.pubkeyHash,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for pubkeyHashToOperatorCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - pubkeyHash: 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: pubkeyHashToOperatorReturn) -> Self { - (value.operator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for pubkeyHashToOperatorReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operator: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for pubkeyHashToOperatorCall { - type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = pubkeyHashToOperatorReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "pubkeyHashToOperator(bytes32)"; - const SELECTOR: [u8; 4] = [232u8, 187u8, 154u8, 230u8]; - #[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.pubkeyHash), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `registerBLSPublicKey(address,((uint256,uint256),(uint256,uint256),(uint256[2],uint256[2])),(uint256,uint256))` and selector `0xbf79ce58`. - ```solidity - function registerBLSPublicKey(address operator, IBLSApkRegistryTypes.PubkeyRegistrationParams memory params, BN254.G1Point memory pubkeyRegistrationMessageHash) external returns (bytes32 operatorId); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registerBLSPublicKeyCall { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub params: - ::RustType, - #[allow(missing_docs)] - pub pubkeyRegistrationMessageHash: ::RustType, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`registerBLSPublicKey(address,((uint256,uint256),(uint256,uint256),(uint256[2],uint256[2])),(uint256,uint256))`](registerBLSPublicKeyCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registerBLSPublicKeyReturn { - #[allow(missing_docs)] - pub operatorId: 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, - IBLSApkRegistryTypes::PubkeyRegistrationParams, - BN254::G1Point, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - ::RustType, - ::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: registerBLSPublicKeyCall) -> Self { - ( - value.operator, - value.params, - value.pubkeyRegistrationMessageHash, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registerBLSPublicKeyCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - operator: tuple.0, - params: tuple.1, - pubkeyRegistrationMessageHash: 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: registerBLSPublicKeyReturn) -> Self { - (value.operatorId,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registerBLSPublicKeyReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - operatorId: tuple.0, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for registerBLSPublicKeyCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - IBLSApkRegistryTypes::PubkeyRegistrationParams, - BN254::G1Point, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = registerBLSPublicKeyReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "registerBLSPublicKey(address,((uint256,uint256),(uint256,uint256),(uint256[2],uint256[2])),(uint256,uint256))"; - const SELECTOR: [u8; 4] = [191u8, 121u8, 206u8, 88u8]; - #[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.params, - ), - ::tokenize( - &self.pubkeyRegistrationMessageHash, - ), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `registerOperator(address,bytes)` and selector `0x3fb27952`. - ```solidity - function registerOperator(address operator, bytes memory quorumNumbers) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registerOperatorCall { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - } - ///Container type for the return parameters of the [`registerOperator(address,bytes)`](registerOperatorCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registerOperatorReturn {} - #[allow( - non_camel_case_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::Bytes, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - 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: registerOperatorCall) -> Self { - (value.operator, value.quorumNumbers) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registerOperatorCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - operator: tuple.0, - quorumNumbers: 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: registerOperatorReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registerOperatorReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for registerOperatorCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Bytes, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = registerOperatorReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "registerOperator(address,bytes)"; - const SELECTOR: [u8; 4] = [63u8, 178u8, 121u8, 82u8]; - #[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.quorumNumbers, - ), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `registryCoordinator()` and selector `0x6d14a987`. - ```solidity - function registryCoordinator() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registryCoordinatorCall {} - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`registryCoordinator()`](registryCoordinatorCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registryCoordinatorReturn { - #[allow(missing_docs)] - 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: registryCoordinatorCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registryCoordinatorCall { - 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: registryCoordinatorReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registryCoordinatorReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for registryCoordinatorCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = registryCoordinatorReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "registryCoordinator()"; - const SELECTOR: [u8; 4] = [109u8, 20u8, 169u8, 135u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `verifyAndRegisterG2PubkeyForOperator(address,(uint256[2],uint256[2]))` and selector `0xd1a64650`. - ```solidity - function verifyAndRegisterG2PubkeyForOperator(address operator, BN254.G2Point memory pubkeyG2) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct verifyAndRegisterG2PubkeyForOperatorCall { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub pubkeyG2: ::RustType, - } - ///Container type for the return parameters of the [`verifyAndRegisterG2PubkeyForOperator(address,(uint256[2],uint256[2]))`](verifyAndRegisterG2PubkeyForOperatorCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct verifyAndRegisterG2PubkeyForOperatorReturn {} - #[allow( - non_camel_case_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, BN254::G2Point); - #[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: verifyAndRegisterG2PubkeyForOperatorCall) -> Self { - (value.operator, value.pubkeyG2) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for verifyAndRegisterG2PubkeyForOperatorCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - operator: tuple.0, - pubkeyG2: 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: verifyAndRegisterG2PubkeyForOperatorReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for verifyAndRegisterG2PubkeyForOperatorReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for verifyAndRegisterG2PubkeyForOperatorCall { - type Parameters<'a> = (alloy::sol_types::sol_data::Address, BN254::G2Point); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = verifyAndRegisterG2PubkeyForOperatorReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "verifyAndRegisterG2PubkeyForOperator(address,(uint256[2],uint256[2]))"; - const SELECTOR: [u8; 4] = [209u8, 166u8, 70u8, 80u8]; - #[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.pubkeyG2), - ) - } - #[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 [`BLSApkRegistry`](self) function calls. - #[derive(serde::Serialize, serde::Deserialize)] - pub enum BLSApkRegistryCalls { - #[allow(missing_docs)] - apkHistory(apkHistoryCall), - #[allow(missing_docs)] - currentApk(currentApkCall), - #[allow(missing_docs)] - deregisterOperator(deregisterOperatorCall), - #[allow(missing_docs)] - getApk(getApkCall), - #[allow(missing_docs)] - getApkHashAtBlockNumberAndIndex(getApkHashAtBlockNumberAndIndexCall), - #[allow(missing_docs)] - getApkHistoryLength(getApkHistoryLengthCall), - #[allow(missing_docs)] - getApkIndicesAtBlockNumber(getApkIndicesAtBlockNumberCall), - #[allow(missing_docs)] - getApkUpdateAtIndex(getApkUpdateAtIndexCall), - #[allow(missing_docs)] - getOperatorFromPubkeyHash(getOperatorFromPubkeyHashCall), - #[allow(missing_docs)] - getOperatorId(getOperatorIdCall), - #[allow(missing_docs)] - getOperatorPubkeyG2(getOperatorPubkeyG2Call), - #[allow(missing_docs)] - getRegisteredPubkey(getRegisteredPubkeyCall), - #[allow(missing_docs)] - initializeQuorum(initializeQuorumCall), - #[allow(missing_docs)] - operatorToPubkey(operatorToPubkeyCall), - #[allow(missing_docs)] - operatorToPubkeyHash(operatorToPubkeyHashCall), - #[allow(missing_docs)] - pubkeyHashToOperator(pubkeyHashToOperatorCall), - #[allow(missing_docs)] - registerBLSPublicKey(registerBLSPublicKeyCall), - #[allow(missing_docs)] - registerOperator(registerOperatorCall), - #[allow(missing_docs)] - registryCoordinator(registryCoordinatorCall), - #[allow(missing_docs)] - verifyAndRegisterG2PubkeyForOperator(verifyAndRegisterG2PubkeyForOperatorCall), - } - #[automatically_derived] - impl BLSApkRegistryCalls { - /// 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, 161u8, 244u8, 203u8], - [19u8, 84u8, 42u8, 78u8], - [38u8, 217u8, 65u8, 242u8], - [55u8, 126u8, 217u8, 157u8], - [63u8, 178u8, 121u8, 82u8], - [71u8, 179u8, 20u8, 232u8], - [95u8, 97u8, 168u8, 132u8], - [96u8, 87u8, 71u8, 213u8], - [103u8, 22u8, 153u8, 17u8], - [104u8, 188u8, 202u8, 172u8], - [109u8, 20u8, 169u8, 135u8], - [121u8, 22u8, 206u8, 166u8], - [127u8, 248u8, 26u8, 135u8], - [163u8, 219u8, 128u8, 226u8], - [191u8, 121u8, 206u8, 88u8], - [209u8, 166u8, 70u8, 80u8], - [213u8, 37u8, 74u8, 140u8], - [222u8, 41u8, 250u8, 192u8], - [232u8, 187u8, 154u8, 230u8], - [244u8, 226u8, 79u8, 229u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for BLSApkRegistryCalls { - const NAME: &'static str = "BLSApkRegistryCalls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 20usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::apkHistory(_) => ::SELECTOR, - Self::currentApk(_) => ::SELECTOR, - Self::deregisterOperator(_) => { - ::SELECTOR - } - Self::getApk(_) => ::SELECTOR, - Self::getApkHashAtBlockNumberAndIndex(_) => { - ::SELECTOR - } - Self::getApkHistoryLength(_) => { - ::SELECTOR - } - Self::getApkIndicesAtBlockNumber(_) => { - ::SELECTOR - } - Self::getApkUpdateAtIndex(_) => { - ::SELECTOR - } - Self::getOperatorFromPubkeyHash(_) => { - ::SELECTOR - } - Self::getOperatorId(_) => ::SELECTOR, - Self::getOperatorPubkeyG2(_) => { - ::SELECTOR - } - Self::getRegisteredPubkey(_) => { - ::SELECTOR - } - Self::initializeQuorum(_) => { - ::SELECTOR - } - Self::operatorToPubkey(_) => { - ::SELECTOR - } - Self::operatorToPubkeyHash(_) => { - ::SELECTOR - } - Self::pubkeyHashToOperator(_) => { - ::SELECTOR - } - Self::registerBLSPublicKey(_) => { - ::SELECTOR - } - Self::registerOperator(_) => { - ::SELECTOR - } - Self::registryCoordinator(_) => { - ::SELECTOR - } - Self::verifyAndRegisterG2PubkeyForOperator(_) => { - ::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 operatorToPubkey( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::operatorToPubkey) - } - operatorToPubkey - }, - { - fn getOperatorId( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::getOperatorId) - } - getOperatorId - }, - { - fn initializeQuorum( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::initializeQuorum) - } - initializeQuorum - }, - { - fn getApkHistoryLength( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::getApkHistoryLength) - } - getApkHistoryLength - }, - { - fn registerOperator( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::registerOperator) - } - registerOperator - }, - { - fn getOperatorFromPubkeyHash( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::getOperatorFromPubkeyHash) - } - getOperatorFromPubkeyHash - }, - { - fn getApk( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(BLSApkRegistryCalls::getApk) - } - getApk - }, - { - fn getApkUpdateAtIndex( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::getApkUpdateAtIndex) - } - getApkUpdateAtIndex - }, - { - fn getOperatorPubkeyG2( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::getOperatorPubkeyG2) - } - getOperatorPubkeyG2 - }, - { - fn getApkHashAtBlockNumberAndIndex( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(BLSApkRegistryCalls::getApkHashAtBlockNumberAndIndex) - } - getApkHashAtBlockNumberAndIndex - }, - { - fn registryCoordinator( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::registryCoordinator) - } - registryCoordinator - }, - { - fn apkHistory( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(BLSApkRegistryCalls::apkHistory) - } - apkHistory - }, - { - fn getRegisteredPubkey( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::getRegisteredPubkey) - } - getRegisteredPubkey - }, - { - fn currentApk( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(BLSApkRegistryCalls::currentApk) - } - currentApk - }, - { - fn registerBLSPublicKey( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::registerBLSPublicKey) - } - registerBLSPublicKey - }, - { - fn verifyAndRegisterG2PubkeyForOperator( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSApkRegistryCalls::verifyAndRegisterG2PubkeyForOperator, - ) - } - verifyAndRegisterG2PubkeyForOperator - }, - { - fn getApkIndicesAtBlockNumber( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(BLSApkRegistryCalls::getApkIndicesAtBlockNumber) - } - getApkIndicesAtBlockNumber - }, - { - fn operatorToPubkeyHash( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::operatorToPubkeyHash) - } - operatorToPubkeyHash - }, - { - fn pubkeyHashToOperator( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::pubkeyHashToOperator) - } - pubkeyHashToOperator - }, - { - fn deregisterOperator( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryCalls::deregisterOperator) - } - deregisterOperator - }, - ]; - 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::apkHistory(inner) => { - ::abi_encoded_size(inner) - } - Self::currentApk(inner) => { - ::abi_encoded_size(inner) - } - Self::deregisterOperator(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getApk(inner) => { - ::abi_encoded_size(inner) - } - Self::getApkHashAtBlockNumberAndIndex(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getApkHistoryLength(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getApkIndicesAtBlockNumber(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getApkUpdateAtIndex(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorFromPubkeyHash(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorId(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorPubkeyG2(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getRegisteredPubkey(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::initializeQuorum(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::operatorToPubkey(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::operatorToPubkeyHash(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::pubkeyHashToOperator(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::registerBLSPublicKey(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::registerOperator(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::registryCoordinator(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::verifyAndRegisterG2PubkeyForOperator(inner) => { - ::abi_encoded_size( - inner, - ) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::apkHistory(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::currentApk(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::deregisterOperator(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getApk(inner) => { - ::abi_encode_raw(inner, out) - } - Self::getApkHashAtBlockNumberAndIndex(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getApkHistoryLength(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getApkIndicesAtBlockNumber(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getApkUpdateAtIndex(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getOperatorFromPubkeyHash(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getOperatorId(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getOperatorPubkeyG2(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getRegisteredPubkey(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::initializeQuorum(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::operatorToPubkey(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::operatorToPubkeyHash(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::pubkeyHashToOperator(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::registerBLSPublicKey(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::registerOperator(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::registryCoordinator(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::verifyAndRegisterG2PubkeyForOperator(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - } - } - } - ///Container for all the [`BLSApkRegistry`](self) custom errors. - #[derive(serde::Serialize, serde::Deserialize, Debug, PartialEq, Eq, Hash)] - pub enum BLSApkRegistryErrors { - #[allow(missing_docs)] - BLSPubkeyAlreadyRegistered(BLSPubkeyAlreadyRegistered), - #[allow(missing_docs)] - BlockNumberBeforeFirstUpdate(BlockNumberBeforeFirstUpdate), - #[allow(missing_docs)] - BlockNumberNotLatest(BlockNumberNotLatest), - #[allow(missing_docs)] - BlockNumberTooRecent(BlockNumberTooRecent), - #[allow(missing_docs)] - ECAddFailed(ECAddFailed), - #[allow(missing_docs)] - ECMulFailed(ECMulFailed), - #[allow(missing_docs)] - ECPairingFailed(ECPairingFailed), - #[allow(missing_docs)] - G2PubkeyAlreadySet(G2PubkeyAlreadySet), - #[allow(missing_docs)] - InvalidBLSSignatureOrPrivateKey(InvalidBLSSignatureOrPrivateKey), - #[allow(missing_docs)] - OnlyRegistryCoordinatorOwner(OnlyRegistryCoordinatorOwner), - #[allow(missing_docs)] - OperatorAlreadyRegistered(OperatorAlreadyRegistered), - #[allow(missing_docs)] - OperatorNotRegistered(OperatorNotRegistered), - #[allow(missing_docs)] - QuorumAlreadyExists(QuorumAlreadyExists), - #[allow(missing_docs)] - QuorumDoesNotExist(QuorumDoesNotExist), - #[allow(missing_docs)] - ZeroPubKey(ZeroPubKey), - } - #[automatically_derived] - impl BLSApkRegistryErrors { - /// 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]] = &[ - [12u8, 199u8, 80u8, 145u8], - [37u8, 236u8, 108u8, 31u8], - [61u8, 34u8, 136u8, 65u8], - [63u8, 76u8, 183u8, 15u8], - [66u8, 238u8, 104u8, 181u8], - [67u8, 54u8, 148u8, 92u8], - [70u8, 51u8, 190u8, 50u8], - [111u8, 224u8, 45u8, 75u8], - [132u8, 158u8, 92u8, 240u8], - [147u8, 51u8, 30u8, 76u8], - [152u8, 102u8, 153u8, 46u8], - [167u8, 45u8, 2u8, 99u8], - [212u8, 182u8, 143u8, 215u8], - [224u8, 225u8, 231u8, 98u8], - [230u8, 33u8, 159u8, 234u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for BLSApkRegistryErrors { - const NAME: &'static str = "BLSApkRegistryErrors"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 15usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::BLSPubkeyAlreadyRegistered(_) => { - ::SELECTOR - } - Self::BlockNumberBeforeFirstUpdate(_) => { - ::SELECTOR - } - Self::BlockNumberNotLatest(_) => { - ::SELECTOR - } - Self::BlockNumberTooRecent(_) => { - ::SELECTOR - } - Self::ECAddFailed(_) => ::SELECTOR, - Self::ECMulFailed(_) => ::SELECTOR, - Self::ECPairingFailed(_) => { - ::SELECTOR - } - Self::G2PubkeyAlreadySet(_) => { - ::SELECTOR - } - Self::InvalidBLSSignatureOrPrivateKey(_) => { - ::SELECTOR - } - Self::OnlyRegistryCoordinatorOwner(_) => { - ::SELECTOR - } - Self::OperatorAlreadyRegistered(_) => { - ::SELECTOR - } - Self::OperatorNotRegistered(_) => { - ::SELECTOR - } - Self::QuorumAlreadyExists(_) => { - ::SELECTOR - } - Self::QuorumDoesNotExist(_) => { - ::SELECTOR - } - Self::ZeroPubKey(_) => ::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 ZeroPubKey( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(BLSApkRegistryErrors::ZeroPubKey) - } - ZeroPubKey - }, - { - fn OperatorNotRegistered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryErrors::OperatorNotRegistered) - } - OperatorNotRegistered - }, - { - fn BlockNumberTooRecent( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryErrors::BlockNumberTooRecent) - } - BlockNumberTooRecent - }, - { - fn BlockNumberBeforeFirstUpdate( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryErrors::BlockNumberBeforeFirstUpdate) - } - BlockNumberBeforeFirstUpdate - }, - { - fn OperatorAlreadyRegistered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryErrors::OperatorAlreadyRegistered) - } - OperatorAlreadyRegistered - }, - { - fn QuorumAlreadyExists( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryErrors::QuorumAlreadyExists) - } - QuorumAlreadyExists - }, - { - fn ECMulFailed( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(BLSApkRegistryErrors::ECMulFailed) - } - ECMulFailed - }, - { - fn BlockNumberNotLatest( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryErrors::BlockNumberNotLatest) - } - BlockNumberNotLatest - }, - { - fn G2PubkeyAlreadySet( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryErrors::G2PubkeyAlreadySet) - } - G2PubkeyAlreadySet - }, - { - fn ECPairingFailed( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryErrors::ECPairingFailed) - } - ECPairingFailed - }, - { - fn BLSPubkeyAlreadyRegistered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryErrors::BLSPubkeyAlreadyRegistered) - } - BLSPubkeyAlreadyRegistered - }, - { - fn InvalidBLSSignatureOrPrivateKey( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(BLSApkRegistryErrors::InvalidBLSSignatureOrPrivateKey) - } - InvalidBLSSignatureOrPrivateKey - }, - { - fn ECAddFailed( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(BLSApkRegistryErrors::ECAddFailed) - } - ECAddFailed - }, - { - fn OnlyRegistryCoordinatorOwner( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryErrors::OnlyRegistryCoordinatorOwner) - } - OnlyRegistryCoordinatorOwner - }, - { - fn QuorumDoesNotExist( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSApkRegistryErrors::QuorumDoesNotExist) - } - QuorumDoesNotExist - }, - ]; - 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::BLSPubkeyAlreadyRegistered(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::BlockNumberBeforeFirstUpdate(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::BlockNumberNotLatest(inner) => { - ::abi_encoded_size(inner) - } - Self::BlockNumberTooRecent(inner) => { - ::abi_encoded_size(inner) - } - Self::ECAddFailed(inner) => { - ::abi_encoded_size(inner) - } - Self::ECMulFailed(inner) => { - ::abi_encoded_size(inner) - } - Self::ECPairingFailed(inner) => { - ::abi_encoded_size(inner) - } - Self::G2PubkeyAlreadySet(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidBLSSignatureOrPrivateKey(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::OnlyRegistryCoordinatorOwner(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::OperatorAlreadyRegistered(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::OperatorNotRegistered(inner) => { - ::abi_encoded_size(inner) - } - Self::QuorumAlreadyExists(inner) => { - ::abi_encoded_size(inner) - } - Self::QuorumDoesNotExist(inner) => { - ::abi_encoded_size(inner) - } - Self::ZeroPubKey(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::BLSPubkeyAlreadyRegistered(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::BlockNumberBeforeFirstUpdate(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::BlockNumberNotLatest(inner) => { - ::abi_encode_raw(inner, out) - } - Self::BlockNumberTooRecent(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ECAddFailed(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ECMulFailed(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ECPairingFailed(inner) => { - ::abi_encode_raw(inner, out) - } - Self::G2PubkeyAlreadySet(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidBLSSignatureOrPrivateKey(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::OnlyRegistryCoordinatorOwner(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::OperatorAlreadyRegistered(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::OperatorNotRegistered(inner) => { - ::abi_encode_raw(inner, out) - } - Self::QuorumAlreadyExists(inner) => { - ::abi_encode_raw(inner, out) - } - Self::QuorumDoesNotExist(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ZeroPubKey(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - ///Container for all the [`BLSApkRegistry`](self) events. - #[derive(serde::Serialize, serde::Deserialize, Debug, PartialEq, Eq, Hash)] - pub enum BLSApkRegistryEvents { - #[allow(missing_docs)] - Initialized(Initialized), - #[allow(missing_docs)] - NewG2PubkeyRegistration(NewG2PubkeyRegistration), - #[allow(missing_docs)] - NewPubkeyRegistration(NewPubkeyRegistration), - #[allow(missing_docs)] - OperatorAddedToQuorums(OperatorAddedToQuorums), - #[allow(missing_docs)] - OperatorRemovedFromQuorums(OperatorRemovedFromQuorums), - } - #[automatically_derived] - impl BLSApkRegistryEvents { - /// 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]] = &[ - [ - 92u8, 79u8, 159u8, 40u8, 21u8, 61u8, 191u8, 63u8, 0u8, 230u8, 150u8, 7u8, 165u8, - 158u8, 130u8, 173u8, 128u8, 111u8, 255u8, 183u8, 141u8, 9u8, 241u8, 121u8, 246u8, - 36u8, 50u8, 247u8, 233u8, 210u8, 81u8, 26u8, - ], - [ - 115u8, 162u8, 183u8, 251u8, 132u8, 71u8, 36u8, 185u8, 113u8, 128u8, 42u8, 233u8, - 177u8, 93u8, 176u8, 148u8, 212u8, 183u8, 25u8, 45u8, 249u8, 215u8, 53u8, 14u8, - 20u8, 235u8, 70u8, 107u8, 155u8, 34u8, 235u8, 78u8, - ], - [ - 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, - ], - [ - 227u8, 251u8, 102u8, 19u8, 175u8, 46u8, 137u8, 48u8, 207u8, 133u8, 212u8, 127u8, - 207u8, 109u8, 177u8, 1u8, 146u8, 34u8, 74u8, 100u8, 198u8, 203u8, 232u8, 2u8, 62u8, - 14u8, 238u8, 27u8, 163u8, 130u8, 128u8, 65u8, - ], - [ - 248u8, 67u8, 236u8, 213u8, 58u8, 86u8, 54u8, 117u8, 230u8, 33u8, 7u8, 190u8, 20u8, - 148u8, 253u8, 222u8, 74u8, 61u8, 73u8, 174u8, 237u8, 175u8, 141u8, 136u8, 198u8, - 22u8, 216u8, 83u8, 70u8, 227u8, 80u8, 14u8, - ], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolEventInterface for BLSApkRegistryEvents { - const NAME: &'static str = "BLSApkRegistryEvents"; - const COUNT: usize = 5usize; - 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::NewG2PubkeyRegistration) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::NewPubkeyRegistration) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorAddedToQuorums) - } - Some(::SIGNATURE_HASH) => { - ::decode_raw_log( - topics, data, validate, - ) - .map(Self::OperatorRemovedFromQuorums) - } - _ => 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 BLSApkRegistryEvents { - 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::NewG2PubkeyRegistration(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::NewPubkeyRegistration(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorAddedToQuorums(inner) => { - alloy_sol_types::private::IntoLogData::to_log_data(inner) - } - Self::OperatorRemovedFromQuorums(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::NewG2PubkeyRegistration(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::NewPubkeyRegistration(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorAddedToQuorums(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - Self::OperatorRemovedFromQuorums(inner) => { - alloy_sol_types::private::IntoLogData::into_log_data(inner) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`BLSApkRegistry`](self) contract instance. - - See the [wrapper's documentation](`BLSApkRegistryInstance`) 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, - ) -> BLSApkRegistryInstance { - BLSApkRegistryInstance::::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, - _slashingRegistryCoordinator: alloy::sol_types::private::Address, - ) -> impl ::core::future::Future>> - { - BLSApkRegistryInstance::::deploy(provider, _slashingRegistryCoordinator) - } - /**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, - _slashingRegistryCoordinator: alloy::sol_types::private::Address, - ) -> alloy_contract::RawCallBuilder { - BLSApkRegistryInstance::::deploy_builder(provider, _slashingRegistryCoordinator) - } - /**A [`BLSApkRegistry`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`BLSApkRegistry`](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 BLSApkRegistryInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for BLSApkRegistryInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BLSApkRegistryInstance") - .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, - > BLSApkRegistryInstance - { - /**Creates a new wrapper around an on-chain [`BLSApkRegistry`](self) contract instance. - - See the [wrapper's documentation](`BLSApkRegistryInstance`) 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, - _slashingRegistryCoordinator: alloy::sol_types::private::Address, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider, _slashingRegistryCoordinator); - 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, - _slashingRegistryCoordinator: alloy::sol_types::private::Address, - ) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - [ - &BYTECODE[..], - &alloy_sol_types::SolConstructor::abi_encode(&constructorCall { - _slashingRegistryCoordinator, - })[..], - ] - .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 BLSApkRegistryInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> BLSApkRegistryInstance { - BLSApkRegistryInstance { - 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, - > BLSApkRegistryInstance - { - /// 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 [`apkHistory`] function. - pub fn apkHistory( - &self, - quorumNumber: u8, - _1: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&apkHistoryCall { quorumNumber, _1 }) - } - ///Creates a new call builder for the [`currentApk`] function. - pub fn currentApk( - &self, - quorumNumber: u8, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(¤tApkCall { quorumNumber }) - } - ///Creates a new call builder for the [`deregisterOperator`] function. - pub fn deregisterOperator( - &self, - operator: alloy::sol_types::private::Address, - quorumNumbers: alloy::sol_types::private::Bytes, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&deregisterOperatorCall { - operator, - quorumNumbers, - }) - } - ///Creates a new call builder for the [`getApk`] function. - pub fn getApk( - &self, - quorumNumber: u8, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getApkCall { quorumNumber }) - } - ///Creates a new call builder for the [`getApkHashAtBlockNumberAndIndex`] function. - pub fn getApkHashAtBlockNumberAndIndex( - &self, - quorumNumber: u8, - blockNumber: u32, - index: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getApkHashAtBlockNumberAndIndexCall { - quorumNumber, - blockNumber, - index, - }) - } - ///Creates a new call builder for the [`getApkHistoryLength`] function. - pub fn getApkHistoryLength( - &self, - quorumNumber: u8, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getApkHistoryLengthCall { quorumNumber }) - } - ///Creates a new call builder for the [`getApkIndicesAtBlockNumber`] function. - pub fn getApkIndicesAtBlockNumber( - &self, - quorumNumbers: alloy::sol_types::private::Bytes, - blockNumber: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getApkIndicesAtBlockNumberCall { - quorumNumbers, - blockNumber, - }) - } - ///Creates a new call builder for the [`getApkUpdateAtIndex`] function. - pub fn getApkUpdateAtIndex( - &self, - quorumNumber: u8, - index: alloy::sol_types::private::primitives::aliases::U256, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getApkUpdateAtIndexCall { - quorumNumber, - index, - }) - } - ///Creates a new call builder for the [`getOperatorFromPubkeyHash`] function. - pub fn getOperatorFromPubkeyHash( - &self, - pubkeyHash: alloy::sol_types::private::FixedBytes<32>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorFromPubkeyHashCall { pubkeyHash }) - } - ///Creates a new call builder for the [`getOperatorId`] function. - pub fn getOperatorId( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorIdCall { operator }) - } - ///Creates a new call builder for the [`getOperatorPubkeyG2`] function. - pub fn getOperatorPubkeyG2( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorPubkeyG2Call { operator }) - } - ///Creates a new call builder for the [`getRegisteredPubkey`] function. - pub fn getRegisteredPubkey( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getRegisteredPubkeyCall { operator }) - } - ///Creates a new call builder for the [`initializeQuorum`] function. - pub fn initializeQuorum( - &self, - quorumNumber: u8, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&initializeQuorumCall { quorumNumber }) - } - ///Creates a new call builder for the [`operatorToPubkey`] function. - pub fn operatorToPubkey( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&operatorToPubkeyCall { operator }) - } - ///Creates a new call builder for the [`operatorToPubkeyHash`] function. - pub fn operatorToPubkeyHash( - &self, - operator: alloy::sol_types::private::Address, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&operatorToPubkeyHashCall { operator }) - } - ///Creates a new call builder for the [`pubkeyHashToOperator`] function. - pub fn pubkeyHashToOperator( - &self, - pubkeyHash: alloy::sol_types::private::FixedBytes<32>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&pubkeyHashToOperatorCall { pubkeyHash }) - } - ///Creates a new call builder for the [`registerBLSPublicKey`] function. - pub fn registerBLSPublicKey( - &self, - operator: alloy::sol_types::private::Address, - params: ::RustType, - pubkeyRegistrationMessageHash: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(®isterBLSPublicKeyCall { - operator, - params, - pubkeyRegistrationMessageHash, - }) - } - ///Creates a new call builder for the [`registerOperator`] function. - pub fn registerOperator( - &self, - operator: alloy::sol_types::private::Address, - quorumNumbers: alloy::sol_types::private::Bytes, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(®isterOperatorCall { - operator, - quorumNumbers, - }) - } - ///Creates a new call builder for the [`registryCoordinator`] function. - pub fn registryCoordinator( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(®istryCoordinatorCall {}) - } - ///Creates a new call builder for the [`verifyAndRegisterG2PubkeyForOperator`] function. - pub fn verifyAndRegisterG2PubkeyForOperator( - &self, - operator: alloy::sol_types::private::Address, - pubkeyG2: ::RustType, - ) -> alloy_contract::SolCallBuilder - { - self.call_builder(&verifyAndRegisterG2PubkeyForOperatorCall { operator, pubkeyG2 }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > BLSApkRegistryInstance - { - /// 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 [`NewG2PubkeyRegistration`] event. - pub fn NewG2PubkeyRegistration_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`NewPubkeyRegistration`] event. - pub fn NewPubkeyRegistration_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorAddedToQuorums`] event. - pub fn OperatorAddedToQuorums_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - ///Creates a new event filter for the [`OperatorRemovedFromQuorums`] event. - pub fn OperatorRemovedFromQuorums_filter( - &self, - ) -> alloy_contract::Event { - self.event_filter::() - } - } -} diff --git a/src/bindings/blssigcheckoperatorstateretriever copy.rs b/src/bindings/blssigcheckoperatorstateretriever copy.rs deleted file mode 100644 index 324763d..0000000 --- a/src/bindings/blssigcheckoperatorstateretriever copy.rs +++ /dev/null @@ -1,4710 +0,0 @@ -///Module containing a contract's types and functions. -/** - -```solidity -library BN254 { - struct G1Point { uint256 X; uint256 Y; } - struct G2Point { uint256[2] X; uint256[2] Y; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod BN254 { - use super::*; - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**```solidity -struct G1Point { uint256 X; uint256 Y; } -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct G1Point { - #[allow(missing_docs)] - pub X: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub Y: 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: G1Point) -> Self { - (value.X, value.Y) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for G1Point { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { X: tuple.0, Y: tuple.1 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for G1Point { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for G1Point { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize(&self.X), - as alloy_sol_types::SolType>::tokenize(&self.Y), - ) - } - #[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 G1Point { - 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 G1Point { - const NAME: &'static str = "G1Point"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed("G1Point(uint256 X,uint256 Y)") - } - #[inline] - fn eip712_components() -> alloy_sol_types::private::Vec< - alloy_sol_types::private::Cow<'static, str>, - > { - 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.X) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.Y) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for G1Point { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.X) - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.Y) - } - #[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.X, out); - as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.Y, 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), - ) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**```solidity -struct G2Point { uint256[2] X; uint256[2] Y; } -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct G2Point { - #[allow(missing_docs)] - pub X: [alloy::sol_types::private::primitives::aliases::U256; 2usize], - #[allow(missing_docs)] - pub Y: [alloy::sol_types::private::primitives::aliases::U256; 2usize], - } - #[allow( - non_camel_case_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::FixedArray< - alloy::sol_types::sol_data::Uint<256>, - 2usize, - >, - alloy::sol_types::sol_data::FixedArray< - alloy::sol_types::sol_data::Uint<256>, - 2usize, - >, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - [alloy::sol_types::private::primitives::aliases::U256; 2usize], - [alloy::sol_types::private::primitives::aliases::U256; 2usize], - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion( - _t: alloy_sol_types::private::AssertTypeEq, - ) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: G2Point) -> Self { - (value.X, value.Y) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for G2Point { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { X: tuple.0, Y: tuple.1 } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for G2Point { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for G2Point { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - 2usize, - > as alloy_sol_types::SolType>::tokenize(&self.X), - , - 2usize, - > as alloy_sol_types::SolType>::tokenize(&self.Y), - ) - } - #[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 G2Point { - 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 G2Point { - const NAME: &'static str = "G2Point"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "G2Point(uint256[2] X,uint256[2] Y)", - ) - } - #[inline] - fn eip712_components() -> alloy_sol_types::private::Vec< - alloy_sol_types::private::Cow<'static, str>, - > { - 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 { - [ - , - 2usize, - > as alloy_sol_types::SolType>::eip712_data_word(&self.X) - .0, - , - 2usize, - > as alloy_sol_types::SolType>::eip712_data_word(&self.Y) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for G2Point { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + , - 2usize, - > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.X) - + , - 2usize, - > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.Y) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve( - ::topic_preimage_length(rust), - ); - , - 2usize, - > as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.X, out); - , - 2usize, - > as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.Y, 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 [`BN254`](self) contract instance. - -See the [wrapper's documentation](`BN254Instance`) 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, - ) -> BN254Instance { - BN254Instance::::new(address, provider) - } - /**A [`BN254`](self) instance. - -Contains type-safe methods for interacting with an on-chain instance of the -[`BN254`](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 BN254Instance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for BN254Instance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BN254Instance").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, - > BN254Instance { - /**Creates a new wrapper around an on-chain [`BN254`](self) contract instance. - -See the [wrapper's documentation](`BN254Instance`) 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 BN254Instance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> BN254Instance { - BN254Instance { - 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, - > BN254Instance { - /// 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, - > BN254Instance { - /// 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 IBLSSignatureCheckerTypes { - struct NonSignerStakesAndSignature { uint32[] nonSignerQuorumBitmapIndices; BN254.G1Point[] nonSignerPubkeys; BN254.G1Point[] quorumApks; BN254.G2Point apkG2; BN254.G1Point sigma; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IBLSSignatureCheckerTypes { - use super::*; - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**```solidity -struct NonSignerStakesAndSignature { uint32[] nonSignerQuorumBitmapIndices; BN254.G1Point[] nonSignerPubkeys; BN254.G1Point[] quorumApks; BN254.G2Point apkG2; BN254.G1Point sigma; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct NonSignerStakesAndSignature { - #[allow(missing_docs)] - pub nonSignerQuorumBitmapIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub nonSignerPubkeys: alloy::sol_types::private::Vec< - ::RustType, - >, - #[allow(missing_docs)] - pub quorumApks: alloy::sol_types::private::Vec< - ::RustType, - >, - #[allow(missing_docs)] - pub apkG2: ::RustType, - #[allow(missing_docs)] - pub sigma: ::RustType, - #[allow(missing_docs)] - pub quorumApkIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub totalStakeIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub nonSignerStakeIndices: alloy::sol_types::private::Vec< - 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>, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Array, - BN254::G2Point, - BN254::G1Point, - 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, - alloy::sol_types::private::Vec< - ::RustType, - >, - alloy::sol_types::private::Vec< - ::RustType, - >, - ::RustType, - ::RustType, - alloy::sol_types::private::Vec, - 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: NonSignerStakesAndSignature) -> Self { - ( - value.nonSignerQuorumBitmapIndices, - value.nonSignerPubkeys, - value.quorumApks, - value.apkG2, - value.sigma, - value.quorumApkIndices, - value.totalStakeIndices, - value.nonSignerStakeIndices, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for NonSignerStakesAndSignature { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - nonSignerQuorumBitmapIndices: tuple.0, - nonSignerPubkeys: tuple.1, - quorumApks: tuple.2, - apkG2: tuple.3, - sigma: tuple.4, - quorumApkIndices: tuple.5, - totalStakeIndices: tuple.6, - nonSignerStakeIndices: tuple.7, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for NonSignerStakesAndSignature { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue - for NonSignerStakesAndSignature { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - > as alloy_sol_types::SolType>::tokenize( - &self.nonSignerQuorumBitmapIndices, - ), - as alloy_sol_types::SolType>::tokenize(&self.nonSignerPubkeys), - as alloy_sol_types::SolType>::tokenize(&self.quorumApks), - ::tokenize(&self.apkG2), - ::tokenize(&self.sigma), - , - > as alloy_sol_types::SolType>::tokenize(&self.quorumApkIndices), - , - > as alloy_sol_types::SolType>::tokenize(&self.totalStakeIndices), - , - >, - > as alloy_sol_types::SolType>::tokenize(&self.nonSignerStakeIndices), - ) - } - #[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 NonSignerStakesAndSignature { - 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 NonSignerStakesAndSignature { - const NAME: &'static str = "NonSignerStakesAndSignature"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "NonSignerStakesAndSignature(uint32[] nonSignerQuorumBitmapIndices,BN254.G1Point[] nonSignerPubkeys,BN254.G1Point[] quorumApks,BN254.G2Point apkG2,BN254.G1Point sigma,uint32[] quorumApkIndices,uint32[] totalStakeIndices,uint32[][] nonSignerStakeIndices)", - ) - } - #[inline] - fn eip712_components() -> alloy_sol_types::private::Vec< - alloy_sol_types::private::Cow<'static, str>, - > { - let mut components = alloy_sol_types::private::Vec::with_capacity(4); - components - .push( - ::eip712_root_type(), - ); - components - .extend( - ::eip712_components(), - ); - components - .push( - ::eip712_root_type(), - ); - components - .extend( - ::eip712_components(), - ); - 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.nonSignerQuorumBitmapIndices, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.nonSignerPubkeys, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.quorumApks) - .0, - ::eip712_data_word( - &self.apkG2, - ) - .0, - ::eip712_data_word( - &self.sigma, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.quorumApkIndices, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.totalStakeIndices, - ) - .0, - , - >, - > as alloy_sol_types::SolType>::eip712_data_word( - &self.nonSignerStakeIndices, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for NonSignerStakesAndSignature { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerQuorumBitmapIndices, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerPubkeys, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.quorumApks, - ) - + ::topic_preimage_length( - &rust.apkG2, - ) - + ::topic_preimage_length( - &rust.sigma, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.quorumApkIndices, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.totalStakeIndices, - ) - + , - >, - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerStakeIndices, - ) - } - #[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.nonSignerQuorumBitmapIndices, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.nonSignerPubkeys, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.quorumApks, - out, - ); - ::encode_topic_preimage( - &rust.apkG2, - out, - ); - ::encode_topic_preimage( - &rust.sigma, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.quorumApkIndices, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.totalStakeIndices, - out, - ); - , - >, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.nonSignerStakeIndices, - 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 [`IBLSSignatureCheckerTypes`](self) contract instance. - -See the [wrapper's documentation](`IBLSSignatureCheckerTypesInstance`) 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, - ) -> IBLSSignatureCheckerTypesInstance { - IBLSSignatureCheckerTypesInstance::::new(address, provider) - } - /**A [`IBLSSignatureCheckerTypes`](self) instance. - -Contains type-safe methods for interacting with an on-chain instance of the -[`IBLSSignatureCheckerTypes`](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 IBLSSignatureCheckerTypesInstance< - 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 IBLSSignatureCheckerTypesInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IBLSSignatureCheckerTypesInstance") - .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, - > IBLSSignatureCheckerTypesInstance { - /**Creates a new wrapper around an on-chain [`IBLSSignatureCheckerTypes`](self) contract instance. - -See the [wrapper's documentation](`IBLSSignatureCheckerTypesInstance`) 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 IBLSSignatureCheckerTypesInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IBLSSignatureCheckerTypesInstance { - IBLSSignatureCheckerTypesInstance { - 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, - > IBLSSignatureCheckerTypesInstance { - /// 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, - > IBLSSignatureCheckerTypesInstance { - /// 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 OperatorStateRetriever { - struct CheckSignaturesIndices { uint32[] nonSignerQuorumBitmapIndices; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } - struct Operator { address operator; bytes32 operatorId; uint96 stake; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod OperatorStateRetriever { - use super::*; - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**```solidity -struct CheckSignaturesIndices { uint32[] nonSignerQuorumBitmapIndices; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct CheckSignaturesIndices { - #[allow(missing_docs)] - pub nonSignerQuorumBitmapIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub quorumApkIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub totalStakeIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub nonSignerStakeIndices: alloy::sol_types::private::Vec< - 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>, - 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, - alloy::sol_types::private::Vec, - 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: CheckSignaturesIndices) -> Self { - ( - value.nonSignerQuorumBitmapIndices, - value.quorumApkIndices, - value.totalStakeIndices, - value.nonSignerStakeIndices, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for CheckSignaturesIndices { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - nonSignerQuorumBitmapIndices: tuple.0, - quorumApkIndices: tuple.1, - totalStakeIndices: tuple.2, - nonSignerStakeIndices: tuple.3, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for CheckSignaturesIndices { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for CheckSignaturesIndices { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - > as alloy_sol_types::SolType>::tokenize( - &self.nonSignerQuorumBitmapIndices, - ), - , - > as alloy_sol_types::SolType>::tokenize(&self.quorumApkIndices), - , - > as alloy_sol_types::SolType>::tokenize(&self.totalStakeIndices), - , - >, - > as alloy_sol_types::SolType>::tokenize(&self.nonSignerStakeIndices), - ) - } - #[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 CheckSignaturesIndices { - 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 CheckSignaturesIndices { - const NAME: &'static str = "CheckSignaturesIndices"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "CheckSignaturesIndices(uint32[] nonSignerQuorumBitmapIndices,uint32[] quorumApkIndices,uint32[] totalStakeIndices,uint32[][] nonSignerStakeIndices)", - ) - } - #[inline] - fn eip712_components() -> alloy_sol_types::private::Vec< - alloy_sol_types::private::Cow<'static, str>, - > { - 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.nonSignerQuorumBitmapIndices, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.quorumApkIndices, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.totalStakeIndices, - ) - .0, - , - >, - > as alloy_sol_types::SolType>::eip712_data_word( - &self.nonSignerStakeIndices, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for CheckSignaturesIndices { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerQuorumBitmapIndices, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.quorumApkIndices, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.totalStakeIndices, - ) - + , - >, - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerStakeIndices, - ) - } - #[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.nonSignerQuorumBitmapIndices, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.quorumApkIndices, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.totalStakeIndices, - out, - ); - , - >, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.nonSignerStakeIndices, - 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), - ) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**```solidity -struct Operator { address operator; bytes32 operatorId; uint96 stake; } -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct Operator { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorId: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub stake: 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::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<96>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::FixedBytes<32>, - 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: Operator) -> Self { - (value.operator, value.operatorId, value.stake) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for Operator { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - operator: tuple.0, - operatorId: tuple.1, - stake: tuple.2, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for Operator { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for Operator { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - as alloy_sol_types::SolType>::tokenize(&self.operatorId), - as alloy_sol_types::SolType>::tokenize(&self.stake), - ) - } - #[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 Operator { - 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 Operator { - const NAME: &'static str = "Operator"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "Operator(address operator,bytes32 operatorId,uint96 stake)", - ) - } - #[inline] - fn eip712_components() -> alloy_sol_types::private::Vec< - alloy_sol_types::private::Cow<'static, str>, - > { - 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.operatorId) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.stake) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for Operator { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - 0usize - + ::topic_preimage_length( - &rust.operator, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.operatorId, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.stake) - } - #[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.operatorId, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.stake, - 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 [`OperatorStateRetriever`](self) contract instance. - -See the [wrapper's documentation](`OperatorStateRetrieverInstance`) 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, - ) -> OperatorStateRetrieverInstance { - OperatorStateRetrieverInstance::::new(address, provider) - } - /**A [`OperatorStateRetriever`](self) instance. - -Contains type-safe methods for interacting with an on-chain instance of the -[`OperatorStateRetriever`](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 OperatorStateRetrieverInstance< - 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 OperatorStateRetrieverInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("OperatorStateRetrieverInstance").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, - > OperatorStateRetrieverInstance { - /**Creates a new wrapper around an on-chain [`OperatorStateRetriever`](self) contract instance. - -See the [wrapper's documentation](`OperatorStateRetrieverInstance`) 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 OperatorStateRetrieverInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> OperatorStateRetrieverInstance { - OperatorStateRetrieverInstance { - 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, - > OperatorStateRetrieverInstance { - /// 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, - > OperatorStateRetrieverInstance { - /// 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 BN254 { - struct G1Point { - uint256 X; - uint256 Y; - } - struct G2Point { - uint256[2] X; - uint256[2] Y; - } -} - -library IBLSSignatureCheckerTypes { - struct NonSignerStakesAndSignature { - uint32[] nonSignerQuorumBitmapIndices; - BN254.G1Point[] nonSignerPubkeys; - BN254.G1Point[] quorumApks; - BN254.G2Point apkG2; - BN254.G1Point sigma; - uint32[] quorumApkIndices; - uint32[] totalStakeIndices; - uint32[][] nonSignerStakeIndices; - } -} - -library OperatorStateRetriever { - struct CheckSignaturesIndices { - uint32[] nonSignerQuorumBitmapIndices; - uint32[] quorumApkIndices; - uint32[] totalStakeIndices; - uint32[][] nonSignerStakeIndices; - } - struct Operator { - address operator; - bytes32 operatorId; - uint96 stake; - } -} - -interface BLSSigCheckOperatorStateRetriever { - error BytesArrayLengthTooLong(); - error BytesArrayNotOrdered(); - error ECAddFailed(); - error InvalidSigma(); - error OperatorNotRegistered(); - - function getBatchOperatorFromId(address registryCoordinator, bytes32[] memory operatorIds) external view returns (address[] memory operators); - function getBatchOperatorId(address registryCoordinator, address[] memory operators) external view returns (bytes32[] memory operatorIds); - function getCheckSignaturesIndices(address registryCoordinator, uint32 referenceBlockNumber, bytes memory quorumNumbers, bytes32[] memory nonSignerOperatorIds) external view returns (OperatorStateRetriever.CheckSignaturesIndices memory); - function getNonSignerStakesAndSignature(address registryCoordinator, bytes memory quorumNumbers, BN254.G1Point memory sigma, address[] memory operators, uint32 blockNumber) external view returns (IBLSSignatureCheckerTypes.NonSignerStakesAndSignature memory); - function getOperatorState(address registryCoordinator, bytes memory quorumNumbers, uint32 blockNumber) external view returns (OperatorStateRetriever.Operator[][] memory); - function getOperatorState(address registryCoordinator, bytes32 operatorId, uint32 blockNumber) external view returns (uint256, OperatorStateRetriever.Operator[][] memory); - function getQuorumBitmapsAtBlockNumber(address registryCoordinator, bytes32[] memory operatorIds, uint32 blockNumber) external view returns (uint256[] memory); -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "getBatchOperatorFromId", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "operatorIds", - "type": "bytes32[]", - "internalType": "bytes32[]" - } - ], - "outputs": [ - { - "name": "operators", - "type": "address[]", - "internalType": "address[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getBatchOperatorId", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "operators", - "type": "address[]", - "internalType": "address[]" - } - ], - "outputs": [ - { - "name": "operatorIds", - "type": "bytes32[]", - "internalType": "bytes32[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getCheckSignaturesIndices", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "referenceBlockNumber", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "nonSignerOperatorIds", - "type": "bytes32[]", - "internalType": "bytes32[]" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct OperatorStateRetriever.CheckSignaturesIndices", - "components": [ - { - "name": "nonSignerQuorumBitmapIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "quorumApkIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "totalStakeIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerStakeIndices", - "type": "uint32[][]", - "internalType": "uint32[][]" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getNonSignerStakesAndSignature", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "sigma", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "operators", - "type": "address[]", - "internalType": "address[]" - }, - { - "name": "blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct IBLSSignatureCheckerTypes.NonSignerStakesAndSignature", - "components": [ - { - "name": "nonSignerQuorumBitmapIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerPubkeys", - "type": "tuple[]", - "internalType": "struct BN254.G1Point[]", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "quorumApks", - "type": "tuple[]", - "internalType": "struct BN254.G1Point[]", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "apkG2", - "type": "tuple", - "internalType": "struct BN254.G2Point", - "components": [ - { - "name": "X", - "type": "uint256[2]", - "internalType": "uint256[2]" - }, - { - "name": "Y", - "type": "uint256[2]", - "internalType": "uint256[2]" - } - ] - }, - { - "name": "sigma", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "quorumApkIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "totalStakeIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerStakeIndices", - "type": "uint32[][]", - "internalType": "uint32[][]" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorState", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple[][]", - "internalType": "struct OperatorStateRetriever.Operator[][]", - "components": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "operatorId", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "stake", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorState", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "operatorId", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "", - "type": "tuple[][]", - "internalType": "struct OperatorStateRetriever.Operator[][]", - "components": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "operatorId", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "stake", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getQuorumBitmapsAtBlockNumber", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "operatorIds", - "type": "bytes32[]", - "internalType": "bytes32[]" - }, - { - "name": "blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256[]", - "internalType": "uint256[]" - } - ], - "stateMutability": "view" - }, - { - "type": "error", - "name": "BytesArrayLengthTooLong", - "inputs": [] - }, - { - "type": "error", - "name": "BytesArrayNotOrdered", - "inputs": [] - }, - { - "type": "error", - "name": "ECAddFailed", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidSigma", - "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 BLSSigCheckOperatorStateRetriever { - use super::*; - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BytesArrayLengthTooLong()` and selector `0xfb4a9c8e`. -```solidity -error BytesArrayLengthTooLong(); -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BytesArrayLengthTooLong {} - #[allow( - non_camel_case_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: BytesArrayLengthTooLong) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BytesArrayLengthTooLong { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BytesArrayLengthTooLong { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BytesArrayLengthTooLong()"; - const SELECTOR: [u8; 4] = [251u8, 74u8, 156u8, 142u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BytesArrayNotOrdered()` and selector `0x80c88348`. -```solidity -error BytesArrayNotOrdered(); -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BytesArrayNotOrdered {} - #[allow( - non_camel_case_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: BytesArrayNotOrdered) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BytesArrayNotOrdered { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BytesArrayNotOrdered { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BytesArrayNotOrdered()"; - const SELECTOR: [u8; 4] = [128u8, 200u8, 131u8, 72u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ECAddFailed()` and selector `0xd4b68fd7`. -```solidity -error ECAddFailed(); -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ECAddFailed {} - #[allow( - non_camel_case_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: ECAddFailed) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ECAddFailed { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ECAddFailed { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ECAddFailed()"; - const SELECTOR: [u8; 4] = [212u8, 182u8, 143u8, 215u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InvalidSigma()` and selector `0x55ad4720`. -```solidity -error InvalidSigma(); -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidSigma {} - #[allow( - non_camel_case_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: InvalidSigma) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidSigma { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidSigma { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidSigma()"; - const SELECTOR: [u8; 4] = [85u8, 173u8, 71u8, 32u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**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<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getBatchOperatorFromId(address,bytes32[])` and selector `0x4d2b57fe`. -```solidity -function getBatchOperatorFromId(address registryCoordinator, bytes32[] memory operatorIds) external view returns (address[] memory operators); -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getBatchOperatorFromIdCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorIds: alloy::sol_types::private::Vec< - alloy::sol_types::private::FixedBytes<32>, - >, - } - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getBatchOperatorFromId(address,bytes32[])`](getBatchOperatorFromIdCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getBatchOperatorFromIdReturn { - #[allow(missing_docs)] - pub operators: alloy::sol_types::private::Vec< - 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::Array< - alloy::sol_types::sol_data::FixedBytes<32>, - >, - ); - #[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: getBatchOperatorFromIdCall) -> Self { - (value.registryCoordinator, value.operatorIds) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getBatchOperatorFromIdCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - operatorIds: tuple.1, - } - } - } - } - { - #[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: getBatchOperatorFromIdReturn) -> Self { - (value.operators,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getBatchOperatorFromIdReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operators: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getBatchOperatorFromIdCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Array< - alloy::sol_types::sol_data::FixedBytes<32>, - >, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getBatchOperatorFromIdReturn; - type ReturnTuple<'a> = ( - alloy::sol_types::sol_data::Array, - ); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getBatchOperatorFromId(address,bytes32[])"; - const SELECTOR: [u8; 4] = [77u8, 43u8, 87u8, 254u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - , - > as alloy_sol_types::SolType>::tokenize(&self.operatorIds), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getBatchOperatorId(address,address[])` and selector `0x31b36bd9`. -```solidity -function getBatchOperatorId(address registryCoordinator, address[] memory operators) external view returns (bytes32[] memory operatorIds); -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getBatchOperatorIdCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operators: alloy::sol_types::private::Vec< - alloy::sol_types::private::Address, - >, - } - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getBatchOperatorId(address,address[])`](getBatchOperatorIdCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getBatchOperatorIdReturn { - #[allow(missing_docs)] - pub operatorIds: alloy::sol_types::private::Vec< - 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::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: getBatchOperatorIdCall) -> Self { - (value.registryCoordinator, value.operators) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getBatchOperatorIdCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - operators: tuple.1, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Array< - alloy::sol_types::sol_data::FixedBytes<32>, - >, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Vec< - 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: getBatchOperatorIdReturn) -> Self { - (value.operatorIds,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getBatchOperatorIdReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operatorIds: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getBatchOperatorIdCall { - 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 = getBatchOperatorIdReturn; - type ReturnTuple<'a> = ( - alloy::sol_types::sol_data::Array< - alloy::sol_types::sol_data::FixedBytes<32>, - >, - ); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getBatchOperatorId(address,address[])"; - const SELECTOR: [u8; 4] = [49u8, 179u8, 107u8, 217u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getCheckSignaturesIndices(address,uint32,bytes,bytes32[])` and selector `0x4f739f74`. -```solidity -function getCheckSignaturesIndices(address registryCoordinator, uint32 referenceBlockNumber, bytes memory quorumNumbers, bytes32[] memory nonSignerOperatorIds) external view returns (OperatorStateRetriever.CheckSignaturesIndices memory); -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getCheckSignaturesIndicesCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub referenceBlockNumber: u32, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - #[allow(missing_docs)] - pub nonSignerOperatorIds: alloy::sol_types::private::Vec< - alloy::sol_types::private::FixedBytes<32>, - >, - } - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getCheckSignaturesIndices(address,uint32,bytes,bytes32[])`](getCheckSignaturesIndicesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getCheckSignaturesIndicesReturn { - #[allow(missing_docs)] - 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, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Array< - alloy::sol_types::sol_data::FixedBytes<32>, - >, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - u32, - alloy::sol_types::private::Bytes, - 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: getCheckSignaturesIndicesCall) -> Self { - ( - value.registryCoordinator, - value.referenceBlockNumber, - value.quorumNumbers, - value.nonSignerOperatorIds, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getCheckSignaturesIndicesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - referenceBlockNumber: tuple.1, - quorumNumbers: tuple.2, - nonSignerOperatorIds: tuple.3, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - OperatorStateRetriever::CheckSignaturesIndices, - ); - #[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: getCheckSignaturesIndicesReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getCheckSignaturesIndicesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getCheckSignaturesIndicesCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Array< - alloy::sol_types::sol_data::FixedBytes<32>, - >, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getCheckSignaturesIndicesReturn; - type ReturnTuple<'a> = (OperatorStateRetriever::CheckSignaturesIndices,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getCheckSignaturesIndices(address,uint32,bytes,bytes32[])"; - const SELECTOR: [u8; 4] = [79u8, 115u8, 159u8, 116u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - as alloy_sol_types::SolType>::tokenize(&self.referenceBlockNumber), - ::tokenize( - &self.quorumNumbers, - ), - , - > as alloy_sol_types::SolType>::tokenize(&self.nonSignerOperatorIds), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getNonSignerStakesAndSignature(address,bytes,(uint256,uint256),address[],uint32)` and selector `0x932a4caa`. -```solidity -function getNonSignerStakesAndSignature(address registryCoordinator, bytes memory quorumNumbers, BN254.G1Point memory sigma, address[] memory operators, uint32 blockNumber) external view returns (IBLSSignatureCheckerTypes.NonSignerStakesAndSignature memory); -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getNonSignerStakesAndSignatureCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - #[allow(missing_docs)] - pub sigma: ::RustType, - #[allow(missing_docs)] - pub operators: alloy::sol_types::private::Vec< - alloy::sol_types::private::Address, - >, - #[allow(missing_docs)] - pub blockNumber: u32, - } - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getNonSignerStakesAndSignature(address,bytes,(uint256,uint256),address[],uint32)`](getNonSignerStakesAndSignatureCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getNonSignerStakesAndSignatureReturn { - #[allow(missing_docs)] - 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, - alloy::sol_types::sol_data::Bytes, - BN254::G1Point, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Bytes, - ::RustType, - alloy::sol_types::private::Vec, - 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: getNonSignerStakesAndSignatureCall) -> Self { - ( - value.registryCoordinator, - value.quorumNumbers, - value.sigma, - value.operators, - value.blockNumber, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getNonSignerStakesAndSignatureCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - quorumNumbers: tuple.1, - sigma: tuple.2, - operators: tuple.3, - blockNumber: tuple.4, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - IBLSSignatureCheckerTypes::NonSignerStakesAndSignature, - ); - #[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: getNonSignerStakesAndSignatureReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getNonSignerStakesAndSignatureReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getNonSignerStakesAndSignatureCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Bytes, - BN254::G1Point, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Uint<32>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getNonSignerStakesAndSignatureReturn; - type ReturnTuple<'a> = ( - IBLSSignatureCheckerTypes::NonSignerStakesAndSignature, - ); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getNonSignerStakesAndSignature(address,bytes,(uint256,uint256),address[],uint32)"; - const SELECTOR: [u8; 4] = [147u8, 42u8, 76u8, 170u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - ::tokenize( - &self.quorumNumbers, - ), - ::tokenize(&self.sigma), - as alloy_sol_types::SolType>::tokenize(&self.operators), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getOperatorState(address,bytes,uint32)` and selector `0x3563b0d1`. -```solidity -function getOperatorState(address registryCoordinator, bytes memory quorumNumbers, uint32 blockNumber) external view returns (OperatorStateRetriever.Operator[][] memory); -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorState_0Call { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - #[allow(missing_docs)] - pub blockNumber: u32, - } - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getOperatorState(address,bytes,uint32)`](getOperatorState_0Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorState_0Return { - #[allow(missing_docs)] - pub _0: alloy::sol_types::private::Vec< - 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::Address, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Bytes, - 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: getOperatorState_0Call) -> Self { - (value.registryCoordinator, value.quorumNumbers, value.blockNumber) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getOperatorState_0Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - quorumNumbers: tuple.1, - blockNumber: tuple.2, - } - } - } - } - { - #[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< - ::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: getOperatorState_0Return) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getOperatorState_0Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorState_0Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Uint<32>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorState_0Return; - 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 = "getOperatorState(address,bytes,uint32)"; - const SELECTOR: [u8; 4] = [53u8, 99u8, 176u8, 209u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - ::tokenize( - &self.quorumNumbers, - ), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getOperatorState(address,bytes32,uint32)` and selector `0xcefdc1d4`. -```solidity -function getOperatorState(address registryCoordinator, bytes32 operatorId, uint32 blockNumber) external view returns (uint256, OperatorStateRetriever.Operator[][] memory); -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorState_1Call { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorId: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub blockNumber: u32, - } - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getOperatorState(address,bytes32,uint32)`](getOperatorState_1Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorState_1Return { - #[allow(missing_docs)] - pub _0: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub _1: alloy::sol_types::private::Vec< - 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::Address, - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - 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: getOperatorState_1Call) -> Self { - (value.registryCoordinator, value.operatorId, value.blockNumber) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getOperatorState_1Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - operatorId: tuple.1, - blockNumber: tuple.2, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Array< - alloy::sol_types::sol_data::Array, - >, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::primitives::aliases::U256, - 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: getOperatorState_1Return) -> Self { - (value._0, value._1) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getOperatorState_1Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0, _1: tuple.1 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorState_1Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - 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 = getOperatorState_1Return; - type ReturnTuple<'a> = ( - alloy::sol_types::sol_data::Uint<256>, - 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 = "getOperatorState(address,bytes32,uint32)"; - const SELECTOR: [u8; 4] = [206u8, 253u8, 193u8, 212u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - as alloy_sol_types::SolType>::tokenize(&self.operatorId), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getQuorumBitmapsAtBlockNumber(address,bytes32[],uint32)` and selector `0x5c155662`. -```solidity -function getQuorumBitmapsAtBlockNumber(address registryCoordinator, bytes32[] memory operatorIds, uint32 blockNumber) external view returns (uint256[] memory); -```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getQuorumBitmapsAtBlockNumberCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorIds: alloy::sol_types::private::Vec< - alloy::sol_types::private::FixedBytes<32>, - >, - #[allow(missing_docs)] - pub blockNumber: u32, - } - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getQuorumBitmapsAtBlockNumber(address,bytes32[],uint32)`](getQuorumBitmapsAtBlockNumberCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getQuorumBitmapsAtBlockNumberReturn { - #[allow(missing_docs)] - pub _0: alloy::sol_types::private::Vec< - 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::Array< - alloy::sol_types::sol_data::FixedBytes<32>, - >, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Vec< - 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: getQuorumBitmapsAtBlockNumberCall) -> Self { - (value.registryCoordinator, value.operatorIds, value.blockNumber) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getQuorumBitmapsAtBlockNumberCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - operatorIds: tuple.1, - blockNumber: tuple.2, - } - } - } - } - { - #[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: getQuorumBitmapsAtBlockNumberReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> - for getQuorumBitmapsAtBlockNumberReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getQuorumBitmapsAtBlockNumberCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Array< - 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 = getQuorumBitmapsAtBlockNumberReturn; - type ReturnTuple<'a> = ( - alloy::sol_types::sol_data::Array>, - ); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getQuorumBitmapsAtBlockNumber(address,bytes32[],uint32)"; - const SELECTOR: [u8; 4] = [92u8, 21u8, 86u8, 98u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - , - > as alloy_sol_types::SolType>::tokenize(&self.operatorIds), - 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) - } - } - }; - ///Container for all the [`BLSSigCheckOperatorStateRetriever`](self) function calls. - #[derive(serde::Serialize, serde::Deserialize)] - #[derive()] - pub enum BLSSigCheckOperatorStateRetrieverCalls { - #[allow(missing_docs)] - getBatchOperatorFromId(getBatchOperatorFromIdCall), - #[allow(missing_docs)] - getBatchOperatorId(getBatchOperatorIdCall), - #[allow(missing_docs)] - getCheckSignaturesIndices(getCheckSignaturesIndicesCall), - #[allow(missing_docs)] - getNonSignerStakesAndSignature(getNonSignerStakesAndSignatureCall), - #[allow(missing_docs)] - getOperatorState_0(getOperatorState_0Call), - #[allow(missing_docs)] - getOperatorState_1(getOperatorState_1Call), - #[allow(missing_docs)] - getQuorumBitmapsAtBlockNumber(getQuorumBitmapsAtBlockNumberCall), - } - #[automatically_derived] - impl BLSSigCheckOperatorStateRetrieverCalls { - /// 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]] = &[ - [49u8, 179u8, 107u8, 217u8], - [53u8, 99u8, 176u8, 209u8], - [77u8, 43u8, 87u8, 254u8], - [79u8, 115u8, 159u8, 116u8], - [92u8, 21u8, 86u8, 98u8], - [147u8, 42u8, 76u8, 170u8], - [206u8, 253u8, 193u8, 212u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for BLSSigCheckOperatorStateRetrieverCalls { - const NAME: &'static str = "BLSSigCheckOperatorStateRetrieverCalls"; - const MIN_DATA_LENGTH: usize = 96usize; - const COUNT: usize = 7usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::getBatchOperatorFromId(_) => { - ::SELECTOR - } - Self::getBatchOperatorId(_) => { - ::SELECTOR - } - Self::getCheckSignaturesIndices(_) => { - ::SELECTOR - } - Self::getNonSignerStakesAndSignature(_) => { - ::SELECTOR - } - Self::getOperatorState_0(_) => { - ::SELECTOR - } - Self::getOperatorState_1(_) => { - ::SELECTOR - } - Self::getQuorumBitmapsAtBlockNumber(_) => { - ::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 getBatchOperatorId( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result< - BLSSigCheckOperatorStateRetrieverCalls, - > { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSSigCheckOperatorStateRetrieverCalls::getBatchOperatorId, - ) - } - getBatchOperatorId - }, - { - fn getOperatorState_0( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result< - BLSSigCheckOperatorStateRetrieverCalls, - > { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSSigCheckOperatorStateRetrieverCalls::getOperatorState_0, - ) - } - getOperatorState_0 - }, - { - fn getBatchOperatorFromId( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result< - BLSSigCheckOperatorStateRetrieverCalls, - > { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSSigCheckOperatorStateRetrieverCalls::getBatchOperatorFromId, - ) - } - getBatchOperatorFromId - }, - { - fn getCheckSignaturesIndices( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result< - BLSSigCheckOperatorStateRetrieverCalls, - > { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSSigCheckOperatorStateRetrieverCalls::getCheckSignaturesIndices, - ) - } - getCheckSignaturesIndices - }, - { - fn getQuorumBitmapsAtBlockNumber( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result< - BLSSigCheckOperatorStateRetrieverCalls, - > { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSSigCheckOperatorStateRetrieverCalls::getQuorumBitmapsAtBlockNumber, - ) - } - getQuorumBitmapsAtBlockNumber - }, - { - fn getNonSignerStakesAndSignature( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result< - BLSSigCheckOperatorStateRetrieverCalls, - > { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSSigCheckOperatorStateRetrieverCalls::getNonSignerStakesAndSignature, - ) - } - getNonSignerStakesAndSignature - }, - { - fn getOperatorState_1( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result< - BLSSigCheckOperatorStateRetrieverCalls, - > { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSSigCheckOperatorStateRetrieverCalls::getOperatorState_1, - ) - } - getOperatorState_1 - }, - ]; - 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::getBatchOperatorFromId(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getBatchOperatorId(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getCheckSignaturesIndices(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getNonSignerStakesAndSignature(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorState_0(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorState_1(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getQuorumBitmapsAtBlockNumber(inner) => { - ::abi_encoded_size( - inner, - ) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::getBatchOperatorFromId(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getBatchOperatorId(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getCheckSignaturesIndices(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getNonSignerStakesAndSignature(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getOperatorState_0(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getOperatorState_1(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::getQuorumBitmapsAtBlockNumber(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - } - } - } - ///Container for all the [`BLSSigCheckOperatorStateRetriever`](self) custom errors. - #[derive(serde::Serialize, serde::Deserialize)] - #[derive(Debug, PartialEq, Eq, Hash)] - pub enum BLSSigCheckOperatorStateRetrieverErrors { - #[allow(missing_docs)] - BytesArrayLengthTooLong(BytesArrayLengthTooLong), - #[allow(missing_docs)] - BytesArrayNotOrdered(BytesArrayNotOrdered), - #[allow(missing_docs)] - ECAddFailed(ECAddFailed), - #[allow(missing_docs)] - InvalidSigma(InvalidSigma), - #[allow(missing_docs)] - OperatorNotRegistered(OperatorNotRegistered), - } - #[automatically_derived] - impl BLSSigCheckOperatorStateRetrieverErrors { - /// 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], - [85u8, 173u8, 71u8, 32u8], - [128u8, 200u8, 131u8, 72u8], - [212u8, 182u8, 143u8, 215u8], - [251u8, 74u8, 156u8, 142u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for BLSSigCheckOperatorStateRetrieverErrors { - const NAME: &'static str = "BLSSigCheckOperatorStateRetrieverErrors"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 5usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::BytesArrayLengthTooLong(_) => { - ::SELECTOR - } - Self::BytesArrayNotOrdered(_) => { - ::SELECTOR - } - Self::ECAddFailed(_) => { - ::SELECTOR - } - Self::InvalidSigma(_) => { - ::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< - BLSSigCheckOperatorStateRetrieverErrors, - > { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSSigCheckOperatorStateRetrieverErrors::OperatorNotRegistered, - ) - } - OperatorNotRegistered - }, - { - fn InvalidSigma( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result< - BLSSigCheckOperatorStateRetrieverErrors, - > { - ::abi_decode_raw( - data, - validate, - ) - .map(BLSSigCheckOperatorStateRetrieverErrors::InvalidSigma) - } - InvalidSigma - }, - { - fn BytesArrayNotOrdered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result< - BLSSigCheckOperatorStateRetrieverErrors, - > { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSSigCheckOperatorStateRetrieverErrors::BytesArrayNotOrdered, - ) - } - BytesArrayNotOrdered - }, - { - fn ECAddFailed( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result< - BLSSigCheckOperatorStateRetrieverErrors, - > { - ::abi_decode_raw( - data, - validate, - ) - .map(BLSSigCheckOperatorStateRetrieverErrors::ECAddFailed) - } - ECAddFailed - }, - { - fn BytesArrayLengthTooLong( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result< - BLSSigCheckOperatorStateRetrieverErrors, - > { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSSigCheckOperatorStateRetrieverErrors::BytesArrayLengthTooLong, - ) - } - BytesArrayLengthTooLong - }, - ]; - 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::BytesArrayLengthTooLong(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::BytesArrayNotOrdered(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::ECAddFailed(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidSigma(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::BytesArrayLengthTooLong(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::BytesArrayNotOrdered(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::ECAddFailed(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::InvalidSigma(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - Self::OperatorNotRegistered(inner) => { - ::abi_encode_raw( - inner, - out, - ) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`BLSSigCheckOperatorStateRetriever`](self) contract instance. - -See the [wrapper's documentation](`BLSSigCheckOperatorStateRetrieverInstance`) 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, - ) -> BLSSigCheckOperatorStateRetrieverInstance { - BLSSigCheckOperatorStateRetrieverInstance::::new(address, provider) - } - /**A [`BLSSigCheckOperatorStateRetriever`](self) instance. - -Contains type-safe methods for interacting with an on-chain instance of the -[`BLSSigCheckOperatorStateRetriever`](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 BLSSigCheckOperatorStateRetrieverInstance< - 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 BLSSigCheckOperatorStateRetrieverInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BLSSigCheckOperatorStateRetrieverInstance") - .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, - > BLSSigCheckOperatorStateRetrieverInstance { - /**Creates a new wrapper around an on-chain [`BLSSigCheckOperatorStateRetriever`](self) contract instance. - -See the [wrapper's documentation](`BLSSigCheckOperatorStateRetrieverInstance`) 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< - T, - P: ::core::clone::Clone, - N, - > BLSSigCheckOperatorStateRetrieverInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider( - self, - ) -> BLSSigCheckOperatorStateRetrieverInstance { - BLSSigCheckOperatorStateRetrieverInstance { - 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, - > BLSSigCheckOperatorStateRetrieverInstance { - /// 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 [`getBatchOperatorFromId`] function. - pub fn getBatchOperatorFromId( - &self, - registryCoordinator: alloy::sol_types::private::Address, - operatorIds: alloy::sol_types::private::Vec< - alloy::sol_types::private::FixedBytes<32>, - >, - ) -> alloy_contract::SolCallBuilder { - self.call_builder( - &getBatchOperatorFromIdCall { - registryCoordinator, - operatorIds, - }, - ) - } - ///Creates a new call builder for the [`getBatchOperatorId`] function. - pub fn getBatchOperatorId( - &self, - registryCoordinator: alloy::sol_types::private::Address, - operators: alloy::sol_types::private::Vec, - ) -> alloy_contract::SolCallBuilder { - self.call_builder( - &getBatchOperatorIdCall { - registryCoordinator, - operators, - }, - ) - } - ///Creates a new call builder for the [`getCheckSignaturesIndices`] function. - pub fn getCheckSignaturesIndices( - &self, - registryCoordinator: alloy::sol_types::private::Address, - referenceBlockNumber: u32, - quorumNumbers: alloy::sol_types::private::Bytes, - nonSignerOperatorIds: alloy::sol_types::private::Vec< - alloy::sol_types::private::FixedBytes<32>, - >, - ) -> alloy_contract::SolCallBuilder { - self.call_builder( - &getCheckSignaturesIndicesCall { - registryCoordinator, - referenceBlockNumber, - quorumNumbers, - nonSignerOperatorIds, - }, - ) - } - ///Creates a new call builder for the [`getNonSignerStakesAndSignature`] function. - pub fn getNonSignerStakesAndSignature( - &self, - registryCoordinator: alloy::sol_types::private::Address, - quorumNumbers: alloy::sol_types::private::Bytes, - sigma: ::RustType, - operators: alloy::sol_types::private::Vec< - alloy::sol_types::private::Address, - >, - blockNumber: u32, - ) -> alloy_contract::SolCallBuilder< - T, - &P, - getNonSignerStakesAndSignatureCall, - N, - > { - self.call_builder( - &getNonSignerStakesAndSignatureCall { - registryCoordinator, - quorumNumbers, - sigma, - operators, - blockNumber, - }, - ) - } - ///Creates a new call builder for the [`getOperatorState_0`] function. - pub fn getOperatorState_0( - &self, - registryCoordinator: alloy::sol_types::private::Address, - quorumNumbers: alloy::sol_types::private::Bytes, - blockNumber: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder( - &getOperatorState_0Call { - registryCoordinator, - quorumNumbers, - blockNumber, - }, - ) - } - ///Creates a new call builder for the [`getOperatorState_1`] function. - pub fn getOperatorState_1( - &self, - registryCoordinator: alloy::sol_types::private::Address, - operatorId: alloy::sol_types::private::FixedBytes<32>, - blockNumber: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder( - &getOperatorState_1Call { - registryCoordinator, - operatorId, - blockNumber, - }, - ) - } - ///Creates a new call builder for the [`getQuorumBitmapsAtBlockNumber`] function. - pub fn getQuorumBitmapsAtBlockNumber( - &self, - registryCoordinator: alloy::sol_types::private::Address, - operatorIds: alloy::sol_types::private::Vec< - alloy::sol_types::private::FixedBytes<32>, - >, - blockNumber: u32, - ) -> alloy_contract::SolCallBuilder< - T, - &P, - getQuorumBitmapsAtBlockNumberCall, - N, - > { - self.call_builder( - &getQuorumBitmapsAtBlockNumberCall { - registryCoordinator, - operatorIds, - blockNumber, - }, - ) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > BLSSigCheckOperatorStateRetrieverInstance { - /// 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/src/bindings/blssigcheckoperatorstateretriever.rs b/src/bindings/blssigcheckoperatorstateretriever.rs deleted file mode 100644 index 33d6427..0000000 --- a/src/bindings/blssigcheckoperatorstateretriever.rs +++ /dev/null @@ -1,4271 +0,0 @@ -///Module containing a contract's types and functions. -/** - -```solidity -library BN254 { - struct G1Point { uint256 X; uint256 Y; } - struct G2Point { uint256[2] X; uint256[2] Y; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod BN254 { - - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct G1Point { uint256 X; uint256 Y; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct G1Point { - #[allow(missing_docs)] - pub X: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub Y: 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: G1Point) -> Self { - (value.X, value.Y) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for G1Point { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - X: tuple.0, - Y: tuple.1, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for G1Point { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for G1Point { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.X, - ), - as alloy_sol_types::SolType>::tokenize( - &self.Y, - ), - ) - } - #[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 G1Point { - 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 G1Point { - const NAME: &'static str = "G1Point"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed("G1Point(uint256 X,uint256 Y)") - } - #[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.X) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.Y) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for G1Point { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.X) - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.Y) - } - #[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.X, out); - as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.Y, 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)) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct G2Point { uint256[2] X; uint256[2] Y; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct G2Point { - #[allow(missing_docs)] - pub X: [alloy::sol_types::private::primitives::aliases::U256; 2usize], - #[allow(missing_docs)] - pub Y: [alloy::sol_types::private::primitives::aliases::U256; 2usize], - } - #[allow( - non_camel_case_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::FixedArray, 2usize>, - alloy::sol_types::sol_data::FixedArray, 2usize>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - [alloy::sol_types::private::primitives::aliases::U256; 2usize], - [alloy::sol_types::private::primitives::aliases::U256; 2usize], - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: G2Point) -> Self { - (value.X, value.Y) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for G2Point { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - X: tuple.0, - Y: tuple.1, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for G2Point { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for G2Point { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - 2usize, - > as alloy_sol_types::SolType>::tokenize(&self.X), - , - 2usize, - > as alloy_sol_types::SolType>::tokenize(&self.Y), - ) - } - #[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 G2Point { - 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 G2Point { - const NAME: &'static str = "G2Point"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed("G2Point(uint256[2] X,uint256[2] Y)") - } - #[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 { - [ - , - 2usize, - > as alloy_sol_types::SolType>::eip712_data_word(&self.X) - .0, - , - 2usize, - > as alloy_sol_types::SolType>::eip712_data_word(&self.Y) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for G2Point { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - , - 2usize, - > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.X) - + , - 2usize, - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.Y - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - , - 2usize, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.X, out - ); - , - 2usize, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.Y, 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 [`BN254`](self) contract instance. - - See the [wrapper's documentation](`BN254Instance`) 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, - ) -> BN254Instance { - BN254Instance::::new(address, provider) - } - /**A [`BN254`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`BN254`](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 BN254Instance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for BN254Instance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BN254Instance").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, - > BN254Instance - { - /**Creates a new wrapper around an on-chain [`BN254`](self) contract instance. - - See the [wrapper's documentation](`BN254Instance`) 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 BN254Instance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> BN254Instance { - BN254Instance { - 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, - > BN254Instance - { - /// 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, - > BN254Instance - { - /// 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 IBLSSignatureCheckerTypes { - struct NonSignerStakesAndSignature { uint32[] nonSignerQuorumBitmapIndices; BN254.G1Point[] nonSignerPubkeys; BN254.G1Point[] quorumApks; BN254.G2Point apkG2; BN254.G1Point sigma; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IBLSSignatureCheckerTypes { - use super::*; - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct NonSignerStakesAndSignature { uint32[] nonSignerQuorumBitmapIndices; BN254.G1Point[] nonSignerPubkeys; BN254.G1Point[] quorumApks; BN254.G2Point apkG2; BN254.G1Point sigma; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct NonSignerStakesAndSignature { - #[allow(missing_docs)] - pub nonSignerQuorumBitmapIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub nonSignerPubkeys: - alloy::sol_types::private::Vec<::RustType>, - #[allow(missing_docs)] - pub quorumApks: - alloy::sol_types::private::Vec<::RustType>, - #[allow(missing_docs)] - pub apkG2: ::RustType, - #[allow(missing_docs)] - pub sigma: ::RustType, - #[allow(missing_docs)] - pub quorumApkIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub totalStakeIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub nonSignerStakeIndices: - 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>, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Array, - BN254::G2Point, - BN254::G1Point, - 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, - alloy::sol_types::private::Vec<::RustType>, - alloy::sol_types::private::Vec<::RustType>, - ::RustType, - ::RustType, - alloy::sol_types::private::Vec, - 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: NonSignerStakesAndSignature) -> Self { - ( - value.nonSignerQuorumBitmapIndices, - value.nonSignerPubkeys, - value.quorumApks, - value.apkG2, - value.sigma, - value.quorumApkIndices, - value.totalStakeIndices, - value.nonSignerStakeIndices, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for NonSignerStakesAndSignature { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - nonSignerQuorumBitmapIndices: tuple.0, - nonSignerPubkeys: tuple.1, - quorumApks: tuple.2, - apkG2: tuple.3, - sigma: tuple.4, - quorumApkIndices: tuple.5, - totalStakeIndices: tuple.6, - nonSignerStakeIndices: tuple.7, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for NonSignerStakesAndSignature { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for NonSignerStakesAndSignature { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - > as alloy_sol_types::SolType>::tokenize( - &self.nonSignerQuorumBitmapIndices, - ), - as alloy_sol_types::SolType>::tokenize(&self.nonSignerPubkeys), - as alloy_sol_types::SolType>::tokenize(&self.quorumApks), - ::tokenize(&self.apkG2), - ::tokenize(&self.sigma), - , - > as alloy_sol_types::SolType>::tokenize(&self.quorumApkIndices), - , - > as alloy_sol_types::SolType>::tokenize(&self.totalStakeIndices), - , - >, - > as alloy_sol_types::SolType>::tokenize(&self.nonSignerStakeIndices), - ) - } - #[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 NonSignerStakesAndSignature { - 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 NonSignerStakesAndSignature { - const NAME: &'static str = "NonSignerStakesAndSignature"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "NonSignerStakesAndSignature(uint32[] nonSignerQuorumBitmapIndices,BN254.G1Point[] nonSignerPubkeys,BN254.G1Point[] quorumApks,BN254.G2Point apkG2,BN254.G1Point sigma,uint32[] quorumApkIndices,uint32[] totalStakeIndices,uint32[][] nonSignerStakeIndices)", - ) - } - #[inline] - fn eip712_components() - -> alloy_sol_types::private::Vec> - { - let mut components = alloy_sol_types::private::Vec::with_capacity(4); - components.push(::eip712_root_type()); - components - .extend(::eip712_components()); - components.push(::eip712_root_type()); - components - .extend(::eip712_components()); - 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.nonSignerQuorumBitmapIndices, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.nonSignerPubkeys, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.quorumApks) - .0, - ::eip712_data_word( - &self.apkG2, - ) - .0, - ::eip712_data_word( - &self.sigma, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.quorumApkIndices, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.totalStakeIndices, - ) - .0, - , - >, - > as alloy_sol_types::SolType>::eip712_data_word( - &self.nonSignerStakeIndices, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for NonSignerStakesAndSignature { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerQuorumBitmapIndices, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerPubkeys, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.quorumApks, - ) - + ::topic_preimage_length( - &rust.apkG2, - ) - + ::topic_preimage_length( - &rust.sigma, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.quorumApkIndices, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.totalStakeIndices, - ) - + , - >, - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerStakeIndices, - ) - } - #[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.nonSignerQuorumBitmapIndices, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.nonSignerPubkeys, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.quorumApks, - out, - ); - ::encode_topic_preimage( - &rust.apkG2, - out, - ); - ::encode_topic_preimage( - &rust.sigma, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.quorumApkIndices, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.totalStakeIndices, - out, - ); - >, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.nonSignerStakeIndices, - 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 [`IBLSSignatureCheckerTypes`](self) contract instance. - - See the [wrapper's documentation](`IBLSSignatureCheckerTypesInstance`) 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, - ) -> IBLSSignatureCheckerTypesInstance { - IBLSSignatureCheckerTypesInstance::::new(address, provider) - } - /**A [`IBLSSignatureCheckerTypes`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IBLSSignatureCheckerTypes`](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 IBLSSignatureCheckerTypesInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IBLSSignatureCheckerTypesInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IBLSSignatureCheckerTypesInstance") - .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, - > IBLSSignatureCheckerTypesInstance - { - /**Creates a new wrapper around an on-chain [`IBLSSignatureCheckerTypes`](self) contract instance. - - See the [wrapper's documentation](`IBLSSignatureCheckerTypesInstance`) 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 IBLSSignatureCheckerTypesInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IBLSSignatureCheckerTypesInstance { - IBLSSignatureCheckerTypesInstance { - 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, - > IBLSSignatureCheckerTypesInstance - { - /// 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, - > IBLSSignatureCheckerTypesInstance - { - /// 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 OperatorStateRetriever { - struct CheckSignaturesIndices { uint32[] nonSignerQuorumBitmapIndices; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } - struct Operator { address operator; bytes32 operatorId; uint96 stake; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod OperatorStateRetriever { - - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct CheckSignaturesIndices { uint32[] nonSignerQuorumBitmapIndices; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct CheckSignaturesIndices { - #[allow(missing_docs)] - pub nonSignerQuorumBitmapIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub quorumApkIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub totalStakeIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub nonSignerStakeIndices: - 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>, - 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, - alloy::sol_types::private::Vec, - 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: CheckSignaturesIndices) -> Self { - ( - value.nonSignerQuorumBitmapIndices, - value.quorumApkIndices, - value.totalStakeIndices, - value.nonSignerStakeIndices, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for CheckSignaturesIndices { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - nonSignerQuorumBitmapIndices: tuple.0, - quorumApkIndices: tuple.1, - totalStakeIndices: tuple.2, - nonSignerStakeIndices: tuple.3, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for CheckSignaturesIndices { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for CheckSignaturesIndices { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - > as alloy_sol_types::SolType>::tokenize( - &self.nonSignerQuorumBitmapIndices, - ), - , - > as alloy_sol_types::SolType>::tokenize(&self.quorumApkIndices), - , - > as alloy_sol_types::SolType>::tokenize(&self.totalStakeIndices), - , - >, - > as alloy_sol_types::SolType>::tokenize(&self.nonSignerStakeIndices), - ) - } - #[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 CheckSignaturesIndices { - 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 CheckSignaturesIndices { - const NAME: &'static str = "CheckSignaturesIndices"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "CheckSignaturesIndices(uint32[] nonSignerQuorumBitmapIndices,uint32[] quorumApkIndices,uint32[] totalStakeIndices,uint32[][] nonSignerStakeIndices)", - ) - } - #[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.nonSignerQuorumBitmapIndices, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.quorumApkIndices, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.totalStakeIndices, - ) - .0, - , - >, - > as alloy_sol_types::SolType>::eip712_data_word( - &self.nonSignerStakeIndices, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for CheckSignaturesIndices { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerQuorumBitmapIndices, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.quorumApkIndices, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.totalStakeIndices, - ) - + , - >, - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerStakeIndices, - ) - } - #[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.nonSignerQuorumBitmapIndices, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.quorumApkIndices, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.totalStakeIndices, - out, - ); - >, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.nonSignerStakeIndices, - 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)) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct Operator { address operator; bytes32 operatorId; uint96 stake; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct Operator { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorId: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub stake: 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::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<96>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::FixedBytes<32>, - 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: Operator) -> Self { - (value.operator, value.operatorId, value.stake) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for Operator { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - operator: tuple.0, - operatorId: tuple.1, - stake: tuple.2, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for Operator { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for Operator { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - as alloy_sol_types::SolType>::tokenize(&self.operatorId), - as alloy_sol_types::SolType>::tokenize(&self.stake), - ) - } - #[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 Operator { - 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 Operator { - const NAME: &'static str = "Operator"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "Operator(address operator,bytes32 operatorId,uint96 stake)", - ) - } - #[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.operatorId) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.stake) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for Operator { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - ::topic_preimage_length( - &rust.operator, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.operatorId, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.stake) - } - #[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.operatorId, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.stake, - 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 [`OperatorStateRetriever`](self) contract instance. - - See the [wrapper's documentation](`OperatorStateRetrieverInstance`) 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, - ) -> OperatorStateRetrieverInstance { - OperatorStateRetrieverInstance::::new(address, provider) - } - /**A [`OperatorStateRetriever`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`OperatorStateRetriever`](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 OperatorStateRetrieverInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for OperatorStateRetrieverInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("OperatorStateRetrieverInstance") - .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, - > OperatorStateRetrieverInstance - { - /**Creates a new wrapper around an on-chain [`OperatorStateRetriever`](self) contract instance. - - See the [wrapper's documentation](`OperatorStateRetrieverInstance`) 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 OperatorStateRetrieverInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> OperatorStateRetrieverInstance { - OperatorStateRetrieverInstance { - 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, - > OperatorStateRetrieverInstance - { - /// 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, - > OperatorStateRetrieverInstance - { - /// 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 BN254 { - struct G1Point { - uint256 X; - uint256 Y; - } - struct G2Point { - uint256[2] X; - uint256[2] Y; - } -} - -library IBLSSignatureCheckerTypes { - struct NonSignerStakesAndSignature { - uint32[] nonSignerQuorumBitmapIndices; - BN254.G1Point[] nonSignerPubkeys; - BN254.G1Point[] quorumApks; - BN254.G2Point apkG2; - BN254.G1Point sigma; - uint32[] quorumApkIndices; - uint32[] totalStakeIndices; - uint32[][] nonSignerStakeIndices; - } -} - -library OperatorStateRetriever { - struct CheckSignaturesIndices { - uint32[] nonSignerQuorumBitmapIndices; - uint32[] quorumApkIndices; - uint32[] totalStakeIndices; - uint32[][] nonSignerStakeIndices; - } - struct Operator { - address operator; - bytes32 operatorId; - uint96 stake; - } -} - -interface BLSSigCheckOperatorStateRetriever { - error BytesArrayLengthTooLong(); - error BytesArrayNotOrdered(); - error ECAddFailed(); - error InvalidSigma(); - error OperatorNotRegistered(); - - function getBatchOperatorFromId(address registryCoordinator, bytes32[] memory operatorIds) external view returns (address[] memory operators); - function getBatchOperatorId(address registryCoordinator, address[] memory operators) external view returns (bytes32[] memory operatorIds); - function getCheckSignaturesIndices(address registryCoordinator, uint32 referenceBlockNumber, bytes memory quorumNumbers, bytes32[] memory nonSignerOperatorIds) external view returns (OperatorStateRetriever.CheckSignaturesIndices memory); - function getNonSignerStakesAndSignature(address registryCoordinator, bytes memory quorumNumbers, BN254.G1Point memory sigma, address[] memory operators, uint32 blockNumber) external view returns (IBLSSignatureCheckerTypes.NonSignerStakesAndSignature memory); - function getOperatorState(address registryCoordinator, bytes memory quorumNumbers, uint32 blockNumber) external view returns (OperatorStateRetriever.Operator[][] memory); - function getOperatorState(address registryCoordinator, bytes32 operatorId, uint32 blockNumber) external view returns (uint256, OperatorStateRetriever.Operator[][] memory); - function getQuorumBitmapsAtBlockNumber(address registryCoordinator, bytes32[] memory operatorIds, uint32 blockNumber) external view returns (uint256[] memory); -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "function", - "name": "getBatchOperatorFromId", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "operatorIds", - "type": "bytes32[]", - "internalType": "bytes32[]" - } - ], - "outputs": [ - { - "name": "operators", - "type": "address[]", - "internalType": "address[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getBatchOperatorId", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "operators", - "type": "address[]", - "internalType": "address[]" - } - ], - "outputs": [ - { - "name": "operatorIds", - "type": "bytes32[]", - "internalType": "bytes32[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getCheckSignaturesIndices", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "referenceBlockNumber", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "nonSignerOperatorIds", - "type": "bytes32[]", - "internalType": "bytes32[]" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct OperatorStateRetriever.CheckSignaturesIndices", - "components": [ - { - "name": "nonSignerQuorumBitmapIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "quorumApkIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "totalStakeIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerStakeIndices", - "type": "uint32[][]", - "internalType": "uint32[][]" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getNonSignerStakesAndSignature", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "sigma", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "operators", - "type": "address[]", - "internalType": "address[]" - }, - { - "name": "blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct IBLSSignatureCheckerTypes.NonSignerStakesAndSignature", - "components": [ - { - "name": "nonSignerQuorumBitmapIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerPubkeys", - "type": "tuple[]", - "internalType": "struct BN254.G1Point[]", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "quorumApks", - "type": "tuple[]", - "internalType": "struct BN254.G1Point[]", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "apkG2", - "type": "tuple", - "internalType": "struct BN254.G2Point", - "components": [ - { - "name": "X", - "type": "uint256[2]", - "internalType": "uint256[2]" - }, - { - "name": "Y", - "type": "uint256[2]", - "internalType": "uint256[2]" - } - ] - }, - { - "name": "sigma", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "quorumApkIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "totalStakeIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerStakeIndices", - "type": "uint32[][]", - "internalType": "uint32[][]" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorState", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple[][]", - "internalType": "struct OperatorStateRetriever.Operator[][]", - "components": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "operatorId", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "stake", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorState", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "operatorId", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "", - "type": "tuple[][]", - "internalType": "struct OperatorStateRetriever.Operator[][]", - "components": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "operatorId", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "stake", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getQuorumBitmapsAtBlockNumber", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "operatorIds", - "type": "bytes32[]", - "internalType": "bytes32[]" - }, - { - "name": "blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256[]", - "internalType": "uint256[]" - } - ], - "stateMutability": "view" - }, - { - "type": "error", - "name": "BytesArrayLengthTooLong", - "inputs": [] - }, - { - "type": "error", - "name": "BytesArrayNotOrdered", - "inputs": [] - }, - { - "type": "error", - "name": "ECAddFailed", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidSigma", - "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 BLSSigCheckOperatorStateRetriever { - use super::*; - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BytesArrayLengthTooLong()` and selector `0xfb4a9c8e`. - ```solidity - error BytesArrayLengthTooLong(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BytesArrayLengthTooLong {} - #[allow( - non_camel_case_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: BytesArrayLengthTooLong) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BytesArrayLengthTooLong { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BytesArrayLengthTooLong { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BytesArrayLengthTooLong()"; - const SELECTOR: [u8; 4] = [251u8, 74u8, 156u8, 142u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BytesArrayNotOrdered()` and selector `0x80c88348`. - ```solidity - error BytesArrayNotOrdered(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BytesArrayNotOrdered {} - #[allow( - non_camel_case_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: BytesArrayNotOrdered) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BytesArrayNotOrdered { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BytesArrayNotOrdered { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BytesArrayNotOrdered()"; - const SELECTOR: [u8; 4] = [128u8, 200u8, 131u8, 72u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ECAddFailed()` and selector `0xd4b68fd7`. - ```solidity - error ECAddFailed(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ECAddFailed {} - #[allow( - non_camel_case_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: ECAddFailed) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ECAddFailed { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ECAddFailed { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ECAddFailed()"; - const SELECTOR: [u8; 4] = [212u8, 182u8, 143u8, 215u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InvalidSigma()` and selector `0x55ad4720`. - ```solidity - error InvalidSigma(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidSigma {} - #[allow( - non_camel_case_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: InvalidSigma) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidSigma { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidSigma { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidSigma()"; - const SELECTOR: [u8; 4] = [85u8, 173u8, 71u8, 32u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**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<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getBatchOperatorFromId(address,bytes32[])` and selector `0x4d2b57fe`. - ```solidity - function getBatchOperatorFromId(address registryCoordinator, bytes32[] memory operatorIds) external view returns (address[] memory operators); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getBatchOperatorFromIdCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorIds: alloy::sol_types::private::Vec>, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getBatchOperatorFromId(address,bytes32[])`](getBatchOperatorFromIdCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getBatchOperatorFromIdReturn { - #[allow(missing_docs)] - pub operators: 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: getBatchOperatorFromIdCall) -> Self { - (value.registryCoordinator, value.operatorIds) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getBatchOperatorFromIdCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - operatorIds: tuple.1, - } - } - } - } - { - #[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: getBatchOperatorFromIdReturn) -> Self { - (value.operators,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getBatchOperatorFromIdReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operators: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getBatchOperatorFromIdCall { - 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 = getBatchOperatorFromIdReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getBatchOperatorFromId(address,bytes32[])"; - const SELECTOR: [u8; 4] = [77u8, 43u8, 87u8, 254u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - , - > as alloy_sol_types::SolType>::tokenize(&self.operatorIds), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getBatchOperatorId(address,address[])` and selector `0x31b36bd9`. - ```solidity - function getBatchOperatorId(address registryCoordinator, address[] memory operators) external view returns (bytes32[] memory operatorIds); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getBatchOperatorIdCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operators: alloy::sol_types::private::Vec, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getBatchOperatorId(address,address[])`](getBatchOperatorIdCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getBatchOperatorIdReturn { - #[allow(missing_docs)] - pub operatorIds: 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: getBatchOperatorIdCall) -> Self { - (value.registryCoordinator, value.operators) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getBatchOperatorIdCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - operators: tuple.1, - } - } - } - } - { - #[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: getBatchOperatorIdReturn) -> Self { - (value.operatorIds,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getBatchOperatorIdReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - operatorIds: tuple.0, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getBatchOperatorIdCall { - 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 = getBatchOperatorIdReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getBatchOperatorId(address,address[])"; - const SELECTOR: [u8; 4] = [49u8, 179u8, 107u8, 217u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getCheckSignaturesIndices(address,uint32,bytes,bytes32[])` and selector `0x4f739f74`. - ```solidity - function getCheckSignaturesIndices(address registryCoordinator, uint32 referenceBlockNumber, bytes memory quorumNumbers, bytes32[] memory nonSignerOperatorIds) external view returns (OperatorStateRetriever.CheckSignaturesIndices memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getCheckSignaturesIndicesCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub referenceBlockNumber: u32, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - #[allow(missing_docs)] - pub nonSignerOperatorIds: - alloy::sol_types::private::Vec>, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getCheckSignaturesIndices(address,uint32,bytes,bytes32[])`](getCheckSignaturesIndicesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getCheckSignaturesIndicesReturn { - #[allow(missing_docs)] - 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, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Array>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - u32, - alloy::sol_types::private::Bytes, - 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: getCheckSignaturesIndicesCall) -> Self { - ( - value.registryCoordinator, - value.referenceBlockNumber, - value.quorumNumbers, - value.nonSignerOperatorIds, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getCheckSignaturesIndicesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - referenceBlockNumber: tuple.1, - quorumNumbers: tuple.2, - nonSignerOperatorIds: tuple.3, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (OperatorStateRetriever::CheckSignaturesIndices,); - #[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: getCheckSignaturesIndicesReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getCheckSignaturesIndicesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getCheckSignaturesIndicesCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Array>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getCheckSignaturesIndicesReturn; - type ReturnTuple<'a> = (OperatorStateRetriever::CheckSignaturesIndices,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "getCheckSignaturesIndices(address,uint32,bytes,bytes32[])"; - const SELECTOR: [u8; 4] = [79u8, 115u8, 159u8, 116u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - as alloy_sol_types::SolType>::tokenize(&self.referenceBlockNumber), - ::tokenize( - &self.quorumNumbers, - ), - , - > as alloy_sol_types::SolType>::tokenize(&self.nonSignerOperatorIds), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getNonSignerStakesAndSignature(address,bytes,(uint256,uint256),address[],uint32)` and selector `0x932a4caa`. - ```solidity - function getNonSignerStakesAndSignature(address registryCoordinator, bytes memory quorumNumbers, BN254.G1Point memory sigma, address[] memory operators, uint32 blockNumber) external view returns (IBLSSignatureCheckerTypes.NonSignerStakesAndSignature memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getNonSignerStakesAndSignatureCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - #[allow(missing_docs)] - pub sigma: ::RustType, - #[allow(missing_docs)] - pub operators: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub blockNumber: u32, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getNonSignerStakesAndSignature(address,bytes,(uint256,uint256),address[],uint32)`](getNonSignerStakesAndSignatureCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getNonSignerStakesAndSignatureReturn { - #[allow(missing_docs)] - 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, - alloy::sol_types::sol_data::Bytes, - BN254::G1Point, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Bytes, - ::RustType, - alloy::sol_types::private::Vec, - 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: getNonSignerStakesAndSignatureCall) -> Self { - ( - value.registryCoordinator, - value.quorumNumbers, - value.sigma, - value.operators, - value.blockNumber, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getNonSignerStakesAndSignatureCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - quorumNumbers: tuple.1, - sigma: tuple.2, - operators: tuple.3, - blockNumber: tuple.4, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (IBLSSignatureCheckerTypes::NonSignerStakesAndSignature,); - #[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: getNonSignerStakesAndSignatureReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getNonSignerStakesAndSignatureReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getNonSignerStakesAndSignatureCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Bytes, - BN254::G1Point, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Uint<32>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getNonSignerStakesAndSignatureReturn; - type ReturnTuple<'a> = (IBLSSignatureCheckerTypes::NonSignerStakesAndSignature,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "getNonSignerStakesAndSignature(address,bytes,(uint256,uint256),address[],uint32)"; - const SELECTOR: [u8; 4] = [147u8, 42u8, 76u8, 170u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - ::tokenize( - &self.quorumNumbers, - ), - ::tokenize(&self.sigma), - as alloy_sol_types::SolType>::tokenize(&self.operators), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getOperatorState(address,bytes,uint32)` and selector `0x3563b0d1`. - ```solidity - function getOperatorState(address registryCoordinator, bytes memory quorumNumbers, uint32 blockNumber) external view returns (OperatorStateRetriever.Operator[][] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorState_0Call { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - #[allow(missing_docs)] - pub blockNumber: u32, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getOperatorState(address,bytes,uint32)`](getOperatorState_0Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorState_0Return { - #[allow(missing_docs)] - pub _0: alloy::sol_types::private::Vec< - 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::Address, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Bytes, - 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: getOperatorState_0Call) -> Self { - ( - value.registryCoordinator, - value.quorumNumbers, - value.blockNumber, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorState_0Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - quorumNumbers: tuple.1, - blockNumber: tuple.2, - } - } - } - } - { - #[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< - ::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: getOperatorState_0Return) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorState_0Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorState_0Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Uint<32>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorState_0Return; - 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 = "getOperatorState(address,bytes,uint32)"; - const SELECTOR: [u8; 4] = [53u8, 99u8, 176u8, 209u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - ::tokenize( - &self.quorumNumbers, - ), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getOperatorState(address,bytes32,uint32)` and selector `0xcefdc1d4`. - ```solidity - function getOperatorState(address registryCoordinator, bytes32 operatorId, uint32 blockNumber) external view returns (uint256, OperatorStateRetriever.Operator[][] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorState_1Call { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorId: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub blockNumber: u32, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getOperatorState(address,bytes32,uint32)`](getOperatorState_1Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorState_1Return { - #[allow(missing_docs)] - pub _0: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub _1: alloy::sol_types::private::Vec< - 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::Address, - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - 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: getOperatorState_1Call) -> Self { - ( - value.registryCoordinator, - value.operatorId, - value.blockNumber, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorState_1Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - operatorId: tuple.1, - blockNumber: tuple.2, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Array< - alloy::sol_types::sol_data::Array, - >, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::primitives::aliases::U256, - 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: getOperatorState_1Return) -> Self { - (value._0, value._1) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorState_1Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - _0: tuple.0, - _1: tuple.1, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorState_1Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - 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 = getOperatorState_1Return; - type ReturnTuple<'a> = ( - alloy::sol_types::sol_data::Uint<256>, - 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 = "getOperatorState(address,bytes32,uint32)"; - const SELECTOR: [u8; 4] = [206u8, 253u8, 193u8, 212u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - as alloy_sol_types::SolType>::tokenize(&self.operatorId), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getQuorumBitmapsAtBlockNumber(address,bytes32[],uint32)` and selector `0x5c155662`. - ```solidity - function getQuorumBitmapsAtBlockNumber(address registryCoordinator, bytes32[] memory operatorIds, uint32 blockNumber) external view returns (uint256[] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getQuorumBitmapsAtBlockNumberCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorIds: alloy::sol_types::private::Vec>, - #[allow(missing_docs)] - pub blockNumber: u32, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getQuorumBitmapsAtBlockNumber(address,bytes32[],uint32)`](getQuorumBitmapsAtBlockNumberCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getQuorumBitmapsAtBlockNumberReturn { - #[allow(missing_docs)] - 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>, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Vec>, - 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: getQuorumBitmapsAtBlockNumberCall) -> Self { - ( - value.registryCoordinator, - value.operatorIds, - value.blockNumber, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getQuorumBitmapsAtBlockNumberCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - operatorIds: tuple.1, - blockNumber: tuple.2, - } - } - } - } - { - #[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: getQuorumBitmapsAtBlockNumberReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getQuorumBitmapsAtBlockNumberReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getQuorumBitmapsAtBlockNumberCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Array>, - alloy::sol_types::sol_data::Uint<32>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getQuorumBitmapsAtBlockNumberReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "getQuorumBitmapsAtBlockNumber(address,bytes32[],uint32)"; - const SELECTOR: [u8; 4] = [92u8, 21u8, 86u8, 98u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - , - > as alloy_sol_types::SolType>::tokenize(&self.operatorIds), - 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) - } - } - }; - ///Container for all the [`BLSSigCheckOperatorStateRetriever`](self) function calls. - #[derive(serde::Serialize, serde::Deserialize)] - pub enum BLSSigCheckOperatorStateRetrieverCalls { - #[allow(missing_docs)] - getBatchOperatorFromId(getBatchOperatorFromIdCall), - #[allow(missing_docs)] - getBatchOperatorId(getBatchOperatorIdCall), - #[allow(missing_docs)] - getCheckSignaturesIndices(getCheckSignaturesIndicesCall), - #[allow(missing_docs)] - getNonSignerStakesAndSignature(getNonSignerStakesAndSignatureCall), - #[allow(missing_docs)] - getOperatorState_0(getOperatorState_0Call), - #[allow(missing_docs)] - getOperatorState_1(getOperatorState_1Call), - #[allow(missing_docs)] - getQuorumBitmapsAtBlockNumber(getQuorumBitmapsAtBlockNumberCall), - } - #[automatically_derived] - impl BLSSigCheckOperatorStateRetrieverCalls { - /// 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]] = &[ - [49u8, 179u8, 107u8, 217u8], - [53u8, 99u8, 176u8, 209u8], - [77u8, 43u8, 87u8, 254u8], - [79u8, 115u8, 159u8, 116u8], - [92u8, 21u8, 86u8, 98u8], - [147u8, 42u8, 76u8, 170u8], - [206u8, 253u8, 193u8, 212u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for BLSSigCheckOperatorStateRetrieverCalls { - const NAME: &'static str = "BLSSigCheckOperatorStateRetrieverCalls"; - const MIN_DATA_LENGTH: usize = 96usize; - const COUNT: usize = 7usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::getBatchOperatorFromId(_) => { - ::SELECTOR - } - Self::getBatchOperatorId(_) => { - ::SELECTOR - } - Self::getCheckSignaturesIndices(_) => { - ::SELECTOR - } - Self::getNonSignerStakesAndSignature(_) => { - ::SELECTOR - } - Self::getOperatorState_0(_) => { - ::SELECTOR - } - Self::getOperatorState_1(_) => { - ::SELECTOR - } - Self::getQuorumBitmapsAtBlockNumber(_) => { - ::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< - BLSSigCheckOperatorStateRetrieverCalls, - >] = &[ - { - fn getBatchOperatorId( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSigCheckOperatorStateRetrieverCalls::getBatchOperatorId) - } - getBatchOperatorId - }, - { - fn getOperatorState_0( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSigCheckOperatorStateRetrieverCalls::getOperatorState_0) - } - getOperatorState_0 - }, - { - fn getBatchOperatorFromId( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSigCheckOperatorStateRetrieverCalls::getBatchOperatorFromId) - } - getBatchOperatorFromId - }, - { - fn getCheckSignaturesIndices( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSigCheckOperatorStateRetrieverCalls::getCheckSignaturesIndices) - } - getCheckSignaturesIndices - }, - { - fn getQuorumBitmapsAtBlockNumber( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSSigCheckOperatorStateRetrieverCalls::getQuorumBitmapsAtBlockNumber, - ) - } - getQuorumBitmapsAtBlockNumber - }, - { - fn getNonSignerStakesAndSignature( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSSigCheckOperatorStateRetrieverCalls::getNonSignerStakesAndSignature, - ) - } - getNonSignerStakesAndSignature - }, - { - fn getOperatorState_1( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSigCheckOperatorStateRetrieverCalls::getOperatorState_1) - } - getOperatorState_1 - }, - ]; - 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::getBatchOperatorFromId(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getBatchOperatorId(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getCheckSignaturesIndices(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getNonSignerStakesAndSignature(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorState_0(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorState_1(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getQuorumBitmapsAtBlockNumber(inner) => { - ::abi_encoded_size( - inner, - ) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::getBatchOperatorFromId(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::getBatchOperatorId(inner) => { - ::abi_encode_raw(inner, out) - } - Self::getCheckSignaturesIndices(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::getNonSignerStakesAndSignature(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::getOperatorState_0(inner) => { - ::abi_encode_raw(inner, out) - } - Self::getOperatorState_1(inner) => { - ::abi_encode_raw(inner, out) - } - Self::getQuorumBitmapsAtBlockNumber(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - } - } - } - ///Container for all the [`BLSSigCheckOperatorStateRetriever`](self) custom errors. - #[derive(serde::Serialize, serde::Deserialize, Debug, PartialEq, Eq, Hash)] - pub enum BLSSigCheckOperatorStateRetrieverErrors { - #[allow(missing_docs)] - BytesArrayLengthTooLong(BytesArrayLengthTooLong), - #[allow(missing_docs)] - BytesArrayNotOrdered(BytesArrayNotOrdered), - #[allow(missing_docs)] - ECAddFailed(ECAddFailed), - #[allow(missing_docs)] - InvalidSigma(InvalidSigma), - #[allow(missing_docs)] - OperatorNotRegistered(OperatorNotRegistered), - } - #[automatically_derived] - impl BLSSigCheckOperatorStateRetrieverErrors { - /// 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], - [85u8, 173u8, 71u8, 32u8], - [128u8, 200u8, 131u8, 72u8], - [212u8, 182u8, 143u8, 215u8], - [251u8, 74u8, 156u8, 142u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for BLSSigCheckOperatorStateRetrieverErrors { - const NAME: &'static str = "BLSSigCheckOperatorStateRetrieverErrors"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 5usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::BytesArrayLengthTooLong(_) => { - ::SELECTOR - } - Self::BytesArrayNotOrdered(_) => { - ::SELECTOR - } - Self::ECAddFailed(_) => ::SELECTOR, - Self::InvalidSigma(_) => ::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< - BLSSigCheckOperatorStateRetrieverErrors, - >] = &[ - { - fn OperatorNotRegistered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSigCheckOperatorStateRetrieverErrors::OperatorNotRegistered) - } - OperatorNotRegistered - }, - { - fn InvalidSigma( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw(data, validate) - .map(BLSSigCheckOperatorStateRetrieverErrors::InvalidSigma) - } - InvalidSigma - }, - { - fn BytesArrayNotOrdered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSigCheckOperatorStateRetrieverErrors::BytesArrayNotOrdered) - } - BytesArrayNotOrdered - }, - { - fn ECAddFailed( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw(data, validate) - .map(BLSSigCheckOperatorStateRetrieverErrors::ECAddFailed) - } - ECAddFailed - }, - { - fn BytesArrayLengthTooLong( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result - { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSigCheckOperatorStateRetrieverErrors::BytesArrayLengthTooLong) - } - BytesArrayLengthTooLong - }, - ]; - 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::BytesArrayLengthTooLong(inner) => { - ::abi_encoded_size(inner) - } - Self::BytesArrayNotOrdered(inner) => { - ::abi_encoded_size(inner) - } - Self::ECAddFailed(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidSigma(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::BytesArrayLengthTooLong(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::BytesArrayNotOrdered(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ECAddFailed(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidSigma(inner) => { - ::abi_encode_raw(inner, out) - } - Self::OperatorNotRegistered(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`BLSSigCheckOperatorStateRetriever`](self) contract instance. - - See the [wrapper's documentation](`BLSSigCheckOperatorStateRetrieverInstance`) 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, - ) -> BLSSigCheckOperatorStateRetrieverInstance { - BLSSigCheckOperatorStateRetrieverInstance::::new(address, provider) - } - /**A [`BLSSigCheckOperatorStateRetriever`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`BLSSigCheckOperatorStateRetriever`](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 BLSSigCheckOperatorStateRetrieverInstance< - 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 BLSSigCheckOperatorStateRetrieverInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BLSSigCheckOperatorStateRetrieverInstance") - .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, - > BLSSigCheckOperatorStateRetrieverInstance - { - /**Creates a new wrapper around an on-chain [`BLSSigCheckOperatorStateRetriever`](self) contract instance. - - See the [wrapper's documentation](`BLSSigCheckOperatorStateRetrieverInstance`) 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 BLSSigCheckOperatorStateRetrieverInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> BLSSigCheckOperatorStateRetrieverInstance { - BLSSigCheckOperatorStateRetrieverInstance { - 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, - > BLSSigCheckOperatorStateRetrieverInstance - { - /// 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 [`getBatchOperatorFromId`] function. - pub fn getBatchOperatorFromId( - &self, - registryCoordinator: alloy::sol_types::private::Address, - operatorIds: alloy::sol_types::private::Vec>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getBatchOperatorFromIdCall { - registryCoordinator, - operatorIds, - }) - } - ///Creates a new call builder for the [`getBatchOperatorId`] function. - pub fn getBatchOperatorId( - &self, - registryCoordinator: alloy::sol_types::private::Address, - operators: alloy::sol_types::private::Vec, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getBatchOperatorIdCall { - registryCoordinator, - operators, - }) - } - ///Creates a new call builder for the [`getCheckSignaturesIndices`] function. - pub fn getCheckSignaturesIndices( - &self, - registryCoordinator: alloy::sol_types::private::Address, - referenceBlockNumber: u32, - quorumNumbers: alloy::sol_types::private::Bytes, - nonSignerOperatorIds: alloy::sol_types::private::Vec< - alloy::sol_types::private::FixedBytes<32>, - >, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getCheckSignaturesIndicesCall { - registryCoordinator, - referenceBlockNumber, - quorumNumbers, - nonSignerOperatorIds, - }) - } - ///Creates a new call builder for the [`getNonSignerStakesAndSignature`] function. - pub fn getNonSignerStakesAndSignature( - &self, - registryCoordinator: alloy::sol_types::private::Address, - quorumNumbers: alloy::sol_types::private::Bytes, - sigma: ::RustType, - operators: alloy::sol_types::private::Vec, - blockNumber: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getNonSignerStakesAndSignatureCall { - registryCoordinator, - quorumNumbers, - sigma, - operators, - blockNumber, - }) - } - ///Creates a new call builder for the [`getOperatorState_0`] function. - pub fn getOperatorState_0( - &self, - registryCoordinator: alloy::sol_types::private::Address, - quorumNumbers: alloy::sol_types::private::Bytes, - blockNumber: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorState_0Call { - registryCoordinator, - quorumNumbers, - blockNumber, - }) - } - ///Creates a new call builder for the [`getOperatorState_1`] function. - pub fn getOperatorState_1( - &self, - registryCoordinator: alloy::sol_types::private::Address, - operatorId: alloy::sol_types::private::FixedBytes<32>, - blockNumber: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorState_1Call { - registryCoordinator, - operatorId, - blockNumber, - }) - } - ///Creates a new call builder for the [`getQuorumBitmapsAtBlockNumber`] function. - pub fn getQuorumBitmapsAtBlockNumber( - &self, - registryCoordinator: alloy::sol_types::private::Address, - operatorIds: alloy::sol_types::private::Vec>, - blockNumber: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getQuorumBitmapsAtBlockNumberCall { - registryCoordinator, - operatorIds, - blockNumber, - }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > BLSSigCheckOperatorStateRetrieverInstance - { - /// 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/src/bindings/blssignaturechecker.rs b/src/bindings/blssignaturechecker.rs deleted file mode 100644 index f68454f..0000000 --- a/src/bindings/blssignaturechecker.rs +++ /dev/null @@ -1,4470 +0,0 @@ -///Module containing a contract's types and functions. -/** - -```solidity -library BN254 { - struct G1Point { uint256 X; uint256 Y; } - struct G2Point { uint256[2] X; uint256[2] Y; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod BN254 { - - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct G1Point { uint256 X; uint256 Y; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct G1Point { - #[allow(missing_docs)] - pub X: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub Y: 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: G1Point) -> Self { - (value.X, value.Y) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for G1Point { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - X: tuple.0, - Y: tuple.1, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for G1Point { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for G1Point { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.X, - ), - as alloy_sol_types::SolType>::tokenize( - &self.Y, - ), - ) - } - #[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 G1Point { - 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 G1Point { - const NAME: &'static str = "G1Point"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed("G1Point(uint256 X,uint256 Y)") - } - #[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.X) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.Y) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for G1Point { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.X) - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.Y) - } - #[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.X, out); - as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.Y, 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)) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct G2Point { uint256[2] X; uint256[2] Y; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct G2Point { - #[allow(missing_docs)] - pub X: [alloy::sol_types::private::primitives::aliases::U256; 2usize], - #[allow(missing_docs)] - pub Y: [alloy::sol_types::private::primitives::aliases::U256; 2usize], - } - #[allow( - non_camel_case_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::FixedArray, 2usize>, - alloy::sol_types::sol_data::FixedArray, 2usize>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - [alloy::sol_types::private::primitives::aliases::U256; 2usize], - [alloy::sol_types::private::primitives::aliases::U256; 2usize], - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: G2Point) -> Self { - (value.X, value.Y) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for G2Point { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - X: tuple.0, - Y: tuple.1, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for G2Point { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for G2Point { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - 2usize, - > as alloy_sol_types::SolType>::tokenize(&self.X), - , - 2usize, - > as alloy_sol_types::SolType>::tokenize(&self.Y), - ) - } - #[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 G2Point { - 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 G2Point { - const NAME: &'static str = "G2Point"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed("G2Point(uint256[2] X,uint256[2] Y)") - } - #[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 { - [ - , - 2usize, - > as alloy_sol_types::SolType>::eip712_data_word(&self.X) - .0, - , - 2usize, - > as alloy_sol_types::SolType>::eip712_data_word(&self.Y) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for G2Point { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - , - 2usize, - > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.X) - + , - 2usize, - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.Y - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - , - 2usize, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.X, out - ); - , - 2usize, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.Y, 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 [`BN254`](self) contract instance. - - See the [wrapper's documentation](`BN254Instance`) 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, - ) -> BN254Instance { - BN254Instance::::new(address, provider) - } - /**A [`BN254`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`BN254`](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 BN254Instance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for BN254Instance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BN254Instance").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, - > BN254Instance - { - /**Creates a new wrapper around an on-chain [`BN254`](self) contract instance. - - See the [wrapper's documentation](`BN254Instance`) 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 BN254Instance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> BN254Instance { - BN254Instance { - 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, - > BN254Instance - { - /// 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, - > BN254Instance - { - /// 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 IBLSSignatureCheckerTypes { - struct NonSignerStakesAndSignature { uint32[] nonSignerQuorumBitmapIndices; BN254.G1Point[] nonSignerPubkeys; BN254.G1Point[] quorumApks; BN254.G2Point apkG2; BN254.G1Point sigma; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } - struct QuorumStakeTotals { uint96[] signedStakeForQuorum; uint96[] totalStakeForQuorum; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IBLSSignatureCheckerTypes { - use super::*; - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct NonSignerStakesAndSignature { uint32[] nonSignerQuorumBitmapIndices; BN254.G1Point[] nonSignerPubkeys; BN254.G1Point[] quorumApks; BN254.G2Point apkG2; BN254.G1Point sigma; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct NonSignerStakesAndSignature { - #[allow(missing_docs)] - pub nonSignerQuorumBitmapIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub nonSignerPubkeys: - alloy::sol_types::private::Vec<::RustType>, - #[allow(missing_docs)] - pub quorumApks: - alloy::sol_types::private::Vec<::RustType>, - #[allow(missing_docs)] - pub apkG2: ::RustType, - #[allow(missing_docs)] - pub sigma: ::RustType, - #[allow(missing_docs)] - pub quorumApkIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub totalStakeIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub nonSignerStakeIndices: - 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>, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Array, - BN254::G2Point, - BN254::G1Point, - 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, - alloy::sol_types::private::Vec<::RustType>, - alloy::sol_types::private::Vec<::RustType>, - ::RustType, - ::RustType, - alloy::sol_types::private::Vec, - 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: NonSignerStakesAndSignature) -> Self { - ( - value.nonSignerQuorumBitmapIndices, - value.nonSignerPubkeys, - value.quorumApks, - value.apkG2, - value.sigma, - value.quorumApkIndices, - value.totalStakeIndices, - value.nonSignerStakeIndices, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for NonSignerStakesAndSignature { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - nonSignerQuorumBitmapIndices: tuple.0, - nonSignerPubkeys: tuple.1, - quorumApks: tuple.2, - apkG2: tuple.3, - sigma: tuple.4, - quorumApkIndices: tuple.5, - totalStakeIndices: tuple.6, - nonSignerStakeIndices: tuple.7, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for NonSignerStakesAndSignature { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for NonSignerStakesAndSignature { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - > as alloy_sol_types::SolType>::tokenize( - &self.nonSignerQuorumBitmapIndices, - ), - as alloy_sol_types::SolType>::tokenize(&self.nonSignerPubkeys), - as alloy_sol_types::SolType>::tokenize(&self.quorumApks), - ::tokenize(&self.apkG2), - ::tokenize(&self.sigma), - , - > as alloy_sol_types::SolType>::tokenize(&self.quorumApkIndices), - , - > as alloy_sol_types::SolType>::tokenize(&self.totalStakeIndices), - , - >, - > as alloy_sol_types::SolType>::tokenize(&self.nonSignerStakeIndices), - ) - } - #[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 NonSignerStakesAndSignature { - 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 NonSignerStakesAndSignature { - const NAME: &'static str = "NonSignerStakesAndSignature"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "NonSignerStakesAndSignature(uint32[] nonSignerQuorumBitmapIndices,BN254.G1Point[] nonSignerPubkeys,BN254.G1Point[] quorumApks,BN254.G2Point apkG2,BN254.G1Point sigma,uint32[] quorumApkIndices,uint32[] totalStakeIndices,uint32[][] nonSignerStakeIndices)", - ) - } - #[inline] - fn eip712_components() - -> alloy_sol_types::private::Vec> - { - let mut components = alloy_sol_types::private::Vec::with_capacity(4); - components.push(::eip712_root_type()); - components - .extend(::eip712_components()); - components.push(::eip712_root_type()); - components - .extend(::eip712_components()); - 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.nonSignerQuorumBitmapIndices, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.nonSignerPubkeys, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.quorumApks) - .0, - ::eip712_data_word( - &self.apkG2, - ) - .0, - ::eip712_data_word( - &self.sigma, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.quorumApkIndices, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.totalStakeIndices, - ) - .0, - , - >, - > as alloy_sol_types::SolType>::eip712_data_word( - &self.nonSignerStakeIndices, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for NonSignerStakesAndSignature { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerQuorumBitmapIndices, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerPubkeys, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.quorumApks, - ) - + ::topic_preimage_length( - &rust.apkG2, - ) - + ::topic_preimage_length( - &rust.sigma, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.quorumApkIndices, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.totalStakeIndices, - ) - + , - >, - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerStakeIndices, - ) - } - #[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.nonSignerQuorumBitmapIndices, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.nonSignerPubkeys, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.quorumApks, - out, - ); - ::encode_topic_preimage( - &rust.apkG2, - out, - ); - ::encode_topic_preimage( - &rust.sigma, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.quorumApkIndices, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.totalStakeIndices, - out, - ); - >, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.nonSignerStakeIndices, - 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)) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct QuorumStakeTotals { uint96[] signedStakeForQuorum; uint96[] totalStakeForQuorum; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct QuorumStakeTotals { - #[allow(missing_docs)] - pub signedStakeForQuorum: - alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub totalStakeForQuorum: - 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>, - alloy::sol_types::sol_data::Array>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - 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: QuorumStakeTotals) -> Self { - (value.signedStakeForQuorum, value.totalStakeForQuorum) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for QuorumStakeTotals { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - signedStakeForQuorum: tuple.0, - totalStakeForQuorum: tuple.1, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for QuorumStakeTotals { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for QuorumStakeTotals { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - > as alloy_sol_types::SolType>::tokenize(&self.signedStakeForQuorum), - , - > as alloy_sol_types::SolType>::tokenize(&self.totalStakeForQuorum), - ) - } - #[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 QuorumStakeTotals { - 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 QuorumStakeTotals { - const NAME: &'static str = "QuorumStakeTotals"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "QuorumStakeTotals(uint96[] signedStakeForQuorum,uint96[] totalStakeForQuorum)", - ) - } - #[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.signedStakeForQuorum, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.totalStakeForQuorum, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for QuorumStakeTotals { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.signedStakeForQuorum, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.totalStakeForQuorum, - ) - } - #[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.signedStakeForQuorum, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.totalStakeForQuorum, - 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 [`IBLSSignatureCheckerTypes`](self) contract instance. - - See the [wrapper's documentation](`IBLSSignatureCheckerTypesInstance`) 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, - ) -> IBLSSignatureCheckerTypesInstance { - IBLSSignatureCheckerTypesInstance::::new(address, provider) - } - /**A [`IBLSSignatureCheckerTypes`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IBLSSignatureCheckerTypes`](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 IBLSSignatureCheckerTypesInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IBLSSignatureCheckerTypesInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IBLSSignatureCheckerTypesInstance") - .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, - > IBLSSignatureCheckerTypesInstance - { - /**Creates a new wrapper around an on-chain [`IBLSSignatureCheckerTypes`](self) contract instance. - - See the [wrapper's documentation](`IBLSSignatureCheckerTypesInstance`) 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 IBLSSignatureCheckerTypesInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IBLSSignatureCheckerTypesInstance { - IBLSSignatureCheckerTypesInstance { - 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, - > IBLSSignatureCheckerTypesInstance - { - /// 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, - > IBLSSignatureCheckerTypesInstance - { - /// 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 BN254 { - struct G1Point { - uint256 X; - uint256 Y; - } - struct G2Point { - uint256[2] X; - uint256[2] Y; - } -} - -library IBLSSignatureCheckerTypes { - struct NonSignerStakesAndSignature { - uint32[] nonSignerQuorumBitmapIndices; - BN254.G1Point[] nonSignerPubkeys; - BN254.G1Point[] quorumApks; - BN254.G2Point apkG2; - BN254.G1Point sigma; - uint32[] quorumApkIndices; - uint32[] totalStakeIndices; - uint32[][] nonSignerStakeIndices; - } - struct QuorumStakeTotals { - uint96[] signedStakeForQuorum; - uint96[] totalStakeForQuorum; - } -} - -interface BLSSignatureChecker { - error BitmapValueTooLarge(); - error BytesArrayLengthTooLong(); - error BytesArrayNotOrdered(); - error ECAddFailed(); - error ECMulFailed(); - error ExpModFailed(); - error InputArrayLengthMismatch(); - error InputEmptyQuorumNumbers(); - error InputNonSignerLengthMismatch(); - error InvalidBLSPairingKey(); - error InvalidBLSSignature(); - error InvalidQuorumApkHash(); - error InvalidReferenceBlocknumber(); - error NonSignerPubkeysNotSorted(); - error OnlyRegistryCoordinatorOwner(); - error ScalarTooLarge(); - - constructor(address _registryCoordinator); - - function blsApkRegistry() external view returns (address); - function checkSignatures(bytes32 msgHash, bytes memory quorumNumbers, uint32 referenceBlockNumber, IBLSSignatureCheckerTypes.NonSignerStakesAndSignature memory params) external view returns (IBLSSignatureCheckerTypes.QuorumStakeTotals memory, bytes32); - function delegation() external view returns (address); - function registryCoordinator() external view returns (address); - function stakeRegistry() external view returns (address); - function trySignatureAndApkVerification(bytes32 msgHash, BN254.G1Point memory apk, BN254.G2Point memory apkG2, BN254.G1Point memory sigma) external view returns (bool pairingSuccessful, bool siganatureIsValid); -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "constructor", - "inputs": [ - { - "name": "_registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "blsApkRegistry", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "contract IBLSApkRegistry" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "checkSignatures", - "inputs": [ - { - "name": "msgHash", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "referenceBlockNumber", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "params", - "type": "tuple", - "internalType": "struct IBLSSignatureCheckerTypes.NonSignerStakesAndSignature", - "components": [ - { - "name": "nonSignerQuorumBitmapIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerPubkeys", - "type": "tuple[]", - "internalType": "struct BN254.G1Point[]", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "quorumApks", - "type": "tuple[]", - "internalType": "struct BN254.G1Point[]", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "apkG2", - "type": "tuple", - "internalType": "struct BN254.G2Point", - "components": [ - { - "name": "X", - "type": "uint256[2]", - "internalType": "uint256[2]" - }, - { - "name": "Y", - "type": "uint256[2]", - "internalType": "uint256[2]" - } - ] - }, - { - "name": "sigma", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "quorumApkIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "totalStakeIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerStakeIndices", - "type": "uint32[][]", - "internalType": "uint32[][]" - } - ] - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct IBLSSignatureCheckerTypes.QuorumStakeTotals", - "components": [ - { - "name": "signedStakeForQuorum", - "type": "uint96[]", - "internalType": "uint96[]" - }, - { - "name": "totalStakeForQuorum", - "type": "uint96[]", - "internalType": "uint96[]" - } - ] - }, - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "delegation", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "contract IDelegationManager" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "registryCoordinator", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "stakeRegistry", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "contract IStakeRegistry" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "trySignatureAndApkVerification", - "inputs": [ - { - "name": "msgHash", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "apk", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "apkG2", - "type": "tuple", - "internalType": "struct BN254.G2Point", - "components": [ - { - "name": "X", - "type": "uint256[2]", - "internalType": "uint256[2]" - }, - { - "name": "Y", - "type": "uint256[2]", - "internalType": "uint256[2]" - } - ] - }, - { - "name": "sigma", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - } - ], - "outputs": [ - { - "name": "pairingSuccessful", - "type": "bool", - "internalType": "bool" - }, - { - "name": "siganatureIsValid", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "error", - "name": "BitmapValueTooLarge", - "inputs": [] - }, - { - "type": "error", - "name": "BytesArrayLengthTooLong", - "inputs": [] - }, - { - "type": "error", - "name": "BytesArrayNotOrdered", - "inputs": [] - }, - { - "type": "error", - "name": "ECAddFailed", - "inputs": [] - }, - { - "type": "error", - "name": "ECMulFailed", - "inputs": [] - }, - { - "type": "error", - "name": "ExpModFailed", - "inputs": [] - }, - { - "type": "error", - "name": "InputArrayLengthMismatch", - "inputs": [] - }, - { - "type": "error", - "name": "InputEmptyQuorumNumbers", - "inputs": [] - }, - { - "type": "error", - "name": "InputNonSignerLengthMismatch", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidBLSPairingKey", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidBLSSignature", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidQuorumApkHash", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidReferenceBlocknumber", - "inputs": [] - }, - { - "type": "error", - "name": "NonSignerPubkeysNotSorted", - "inputs": [] - }, - { - "type": "error", - "name": "OnlyRegistryCoordinatorOwner", - "inputs": [] - }, - { - "type": "error", - "name": "ScalarTooLarge", - "inputs": [] - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod BLSSignatureChecker { - use super::*; - use alloy::sol_types as alloy_sol_types; - /// The creation / init bytecode of the contract. - /// - /// ```text - ///0x610100604052348015610010575f5ffd5b506040516131d33803806131d3833981810160405281019061003291906102bf565b808073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663683048356040518163ffffffff1660e01b8152600401602060405180830381865afa1580156100b0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100d49190610325565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff16635df459466040518163ffffffff1660e01b8152600401602060405180830381865afa158015610150573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610174919061038b565b73ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff168152505060a05173ffffffffffffffffffffffffffffffffffffffff1663df5cf7236040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f2573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061021691906103f1565b73ffffffffffffffffffffffffffffffffffffffff1660e08173ffffffffffffffffffffffffffffffffffffffff1681525050505061041c565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61027d82610254565b9050919050565b5f61028e82610273565b9050919050565b61029e81610284565b81146102a8575f5ffd5b50565b5f815190506102b981610295565b92915050565b5f602082840312156102d4576102d3610250565b5b5f6102e1848285016102ab565b91505092915050565b5f6102f482610273565b9050919050565b610304816102ea565b811461030e575f5ffd5b50565b5f8151905061031f816102fb565b92915050565b5f6020828403121561033a57610339610250565b5b5f61034784828501610311565b91505092915050565b5f61035a82610273565b9050919050565b61036a81610350565b8114610374575f5ffd5b50565b5f8151905061038581610361565b92915050565b5f602082840312156103a05761039f610250565b5b5f6103ad84828501610377565b91505092915050565b5f6103c082610273565b9050919050565b6103d0816103b6565b81146103da575f5ffd5b50565b5f815190506103eb816103c7565b92915050565b5f6020828403121561040657610405610250565b5b5f610413848285016103dd565b91505092915050565b60805160a05160c05160e051612d616104725f395f610eeb01525f81816102a3015261093d01525f81816102c701528181610abd0152610c9701525f81816102eb0152818161061701526107940152612d615ff3fe608060405234801561000f575f5ffd5b5060043610610060575f3560e01c8063171f1d5b146100645780635df459461461009557806368304835146100b35780636d14a987146100d15780636efb4636146100ef578063df5cf72314610120575b5f5ffd5b61007e60048036038101906100799190611e8f565b61013e565b60405161008c929190611f0e565b60405180910390f35b61009d6102a1565b6040516100aa9190611faf565b60405180910390f35b6100bb6102c5565b6040516100c89190611fe8565b60405180910390f35b6100d96102e9565b6040516100e69190612021565b60405180910390f35b6101096004803603810190610104919061249c565b61030d565b60405161011792919061265a565b60405180910390f35b610128610ee9565b60405161013591906126a8565b60405180910390f35b5f5f5f7f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f000000187875f01518860200151885f01515f60028110610182576101816126c1565b5b6020020151895f015160016002811061019e5761019d6126c1565b5b60200201518a602001515f600281106101ba576101b96126c1565b5b60200201518b602001516001600281106101d7576101d66126c1565b5b60200201518b5f01518c602001516040516020016101fd9998979695949392919061272e565b604051602081830303815290604052805190602001205f1c61021f91906127fd565b905061028f61024961023a8389610f0d90919063ffffffff16565b86610fd890919063ffffffff16565b6102516110c8565b61028561026e85610260611192565b610f0d90919063ffffffff16565b6102778c6111b6565b610fd890919063ffffffff16565b886201d4c06112c1565b80935081945050505094509492505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b610315611af9565b5f5f8686905003610352576040517f1f0405a000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8260400151518686905014801561037057508260a001515186869050145b801561038357508260c001515186869050145b801561039657508260e001515186869050145b6103cc576040517f43714afd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b825f0151518360200151511461040e576040517f5f832f4100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b4363ffffffff168463ffffffff1610610453576040517f4b874f4500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60405180604001604052805f81526020015f8152509050610473611af9565b8787905067ffffffffffffffff8111156104905761048f611c90565b5b6040519080825280602002602001820160405280156104be5781602001602082028036833780820191505090505b5081602001819052508787905067ffffffffffffffff8111156104e4576104e3611c90565b5b6040519080825280602002602001820160405280156105125781602001602082028036833780820191505090505b50815f0181905250610522611b13565b85602001515167ffffffffffffffff81111561054157610540611c90565b5b60405190808252806020026020018201604052801561056f5781602001602082028036833780820191505090505b50815f018190525085602001515167ffffffffffffffff81111561059657610595611c90565b5b6040519080825280602002602001820160405280156105c45781602001602082028036833780820191505090505b5081602001819052505f6106a78a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16639aa1653d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561067e573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a29190612863565b611561565b90505f5f90505b87602001515181101561091e576106e2886020015182815181106106d5576106d46126c1565b5b60200260200101516115b8565b836020015182815181106106f9576106f86126c1565b5b6020026020010181815250505f811461079257826020015160018261071e91906128bb565b8151811061072f5761072e6126c1565b5b60200260200101515f1c836020015182815181106107505761074f6126c1565b5b60200260200101515f1c11610791576040517fff71941400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166304ec6351846020015183815181106107e5576107e46126c1565b5b60200260200101518b8b5f01518581518110610804576108036126c1565b5b60200260200101516040518463ffffffff1660e01b815260040161082a9392919061292d565b602060405180830381865afa158015610845573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061086991906129af565b77ffffffffffffffffffffffffffffffffffffffffffffffff16835f01518281518110610899576108986126c1565b5b60200260200101818152505061090f6109006108d384865f015185815181106108c5576108c46126c1565b5b6020026020010151166115d0565b8a6020015184815181106108ea576108e96126c1565b5b602002602001015161160b90919063ffffffff16565b86610fd890919063ffffffff16565b945080806001019150506106ae565b5050610929836116f0565b92505f5f90505b89899050811015610e1a577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166368bccaac8b8b8481811061098a576109896126c1565b5b9050013560f81c60f81b60f81c8a8a60a0015185815181106109af576109ae6126c1565b5b60200260200101516040518463ffffffff1660e01b81526004016109d5939291906129e9565b602060405180830381865afa1580156109f0573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a149190612a73565b67ffffffffffffffff1916610a4688604001518381518110610a3957610a386126c1565b5b60200260200101516115b8565b67ffffffffffffffff191614610a88576040517fe1310aed00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610ab987604001518281518110610aa257610aa16126c1565b5b602002602001015185610fd890919063ffffffff16565b93507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663c8294c568b8b84818110610b0a57610b096126c1565b5b9050013560f81c60f81b60f81c8a8a60c001518581518110610b2f57610b2e6126c1565b5b60200260200101516040518463ffffffff1660e01b8152600401610b55939291906129e9565b602060405180830381865afa158015610b70573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b949190612ac8565b83602001518281518110610bab57610baa6126c1565b5b60200260200101906bffffffffffffffffffffffff1690816bffffffffffffffffffffffff168152505082602001518181518110610bec57610beb6126c1565b5b6020026020010151835f01518281518110610c0a57610c096126c1565b5b60200260200101906bffffffffffffffffffffffff1690816bffffffffffffffffffffffff16815250505f5f90505f5f90505b886020015151811015610e0b57610c90845f01518281518110610c6357610c626126c1565b5b60200260200101518d8d86818110610c7e57610c7d6126c1565b5b9050013560f81c60f81b60f81c6117a8565b15610dfe577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f2be94ae8d8d86818110610ce457610ce36126c1565b5b9050013560f81c60f81b60f81c8c87602001518581518110610d0957610d086126c1565b5b60200260200101518d60e001518881518110610d2857610d276126c1565b5b60200260200101518781518110610d4257610d416126c1565b5b60200260200101516040518563ffffffff1660e01b8152600401610d699493929190612af3565b602060405180830381865afa158015610d84573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da89190612ac8565b855f01518481518110610dbe57610dbd6126c1565b5b60200260200101818151610dd29190612b36565b9150906bffffffffffffffffffffffff1690816bffffffffffffffffffffffff16815250508160010191505b8080600101915050610c3d565b50508080600101915050610930565b505f5f610e318c868a606001518b6080015161013e565b9150915081610e6c576040517f67988d3300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80610ea3576040517fab1b236b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505f878260200151604051602001610ebd929190612c5a565b604051602081830303815290604052805190602001209050828195509550505050509550959350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b610f15611b2d565b610f1d611b45565b835f0151815f60038110610f3457610f336126c1565b5b602002018181525050836020015181600160038110610f5657610f556126c1565b5b6020020181815250508281600260038110610f7457610f736126c1565b5b6020020181815250505f60408360608460076107d05a03fa9050805f8103610f9857fe5b5080610fd0576040517f4633be3200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505092915050565b610fe0611b2d565b610fe8611b67565b835f0151815f60048110610fff57610ffe6126c1565b5b602002018181525050836020015181600160048110611021576110206126c1565b5b602002018181525050825f015181600260048110611042576110416126c1565b5b602002018181525050826020015181600360048110611064576110636126c1565b5b6020020181815250505f60408360808460066107d05a03fa9050805f810361108857fe5b50806110c0576040517fd4b68fd700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505092915050565b6110d0611b89565b604051806040016040528060405180604001604052807f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c281526020017f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed815250815260200160405180604001604052807f275dc4a288d1afb3cbb1ac09187524c7db36395df7be3b99e673b13a075a65ec81526020017f1d9befcd05a5323e6da4d435f3b617cdb3af83285c2df711ef39c01571827f9d815250815250905090565b61119a611b2d565b6040518060400160405280600181526020016002815250905090565b6111be611b2d565b5f5f90505f5f90505f7f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd47855f1c6111f591906127fd565b90505b6001156112a157611208816117be565b80935081945050507f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd478061123f5761123e6127d0565b5b82830983036112675760405180604001604052808281526020018381525093505050506112bc565b7f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4780611296576112956127d0565b5b6001820890506111f8565b60405180604001604052805f81526020015f81525093505050505b919050565b5f5f5f60405180604001604052808981526020018781525090505f60405180604001604052808981526020018781525090506112fb611baf565b5f5f90505b6002811015611519575f6006826113179190612c81565b905084826002811061132c5761132b6126c1565b5b60200201515f0151835f836113419190612cc2565b600c8110611352576113516126c1565b5b60200201818152505084826002811061136e5761136d6126c1565b5b602002015160200151836001836113859190612cc2565b600c8110611396576113956126c1565b5b6020020181815250508382600281106113b2576113b16126c1565b5b60200201515f01515f600281106113cc576113cb6126c1565b5b6020020151836002836113df9190612cc2565b600c81106113f0576113ef6126c1565b5b60200201818152505083826002811061140c5761140b6126c1565b5b60200201515f0151600160028110611427576114266126c1565b5b60200201518360038361143a9190612cc2565b600c811061144b5761144a6126c1565b5b602002018181525050838260028110611467576114666126c1565b5b6020020151602001515f60028110611482576114816126c1565b5b6020020151836004836114959190612cc2565b600c81106114a6576114a56126c1565b5b6020020181815250508382600281106114c2576114c16126c1565b5b6020020151602001516001600281106114de576114dd6126c1565b5b6020020151836005836114f19190612cc2565b600c8110611502576115016126c1565b5b602002018181525050508080600101915050611300565b50611522611bd2565b5f6020826020600c028560088cfa9050805f835f60018110611547576115466126c1565b5b602002015114159650965050505050509550959350505050565b5f5f61156c846118b3565b9050808360ff166001901b116115ae576040517fca95733300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8091505092915050565b5f81515f52816020015160205260405f209050919050565b5f5f5f90505b5f831115611602576001836115eb91906128bb565b8316925080806115fa90612d02565b9150506115d6565b80915050919050565b611613611b2d565b6102008261ffff1610611652576040517fff89d4fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60018261ffff1603611666578290506116ea565b5f60405180604001604052805f81526020015f81525090505f8490505f600190505f5f90505b8161ffff168661ffff16106116e2576001808260ff168861ffff16901c1661ffff16036116c0576116bd8484610fd8565b93505b6116ca8384610fd8565b925060018261ffff16901b915080600101905061168c565b839450505050505b92915050565b6116f8611b2d565b5f825f015114801561170d57505f8260200151145b1561172e5760405180604001604052805f81526020015f81525090506117a3565b6040518060400160405280835f015181526020017f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd47846020015161177291906127fd565b7f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4761179d91906128bb565b81525090505b919050565b5f60018260ff1684901c16600114905092915050565b5f5f5f7f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd47806117f0576117ef6127d0565b5b60037f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4780611821576118206127d0565b5b867f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4780611851576118506127d0565b5b888909090890505f6118a4827f0c19139cb84c680a6e14116da060561765e05aa45a1c72a34f082305b61f3f527f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd476119bb565b90508181935093505050915091565b5f610100825111156118f1576040517ffb4a9c8e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f825103611901575f90506119b6565b5f5f835f81518110611916576119156126c1565b5b602001015160f81c60f81b60f81c60ff166001901b91505f600190505b84518110156119af5784818151811061194f5761194e6126c1565b5b602001015160f81c60f81b60f81c60ff166001901b915082821161199f576040517f80c8834800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8183179250806001019050611933565b5081925050505b919050565b5f5f6119c5611bd2565b6119cd611bf4565b6020815f600681106119e2576119e16126c1565b5b602002018181525050602081600160068110611a0157611a006126c1565b5b602002018181525050602081600260068110611a2057611a1f6126c1565b5b6020020181815250508681600360068110611a3e57611a3d6126c1565b5b6020020181815250508581600460068110611a5c57611a5b6126c1565b5b6020020181815250508481600560068110611a7a57611a796126c1565b5b60200201818152505060208260c08360056107d05a03fa9250825f8103611a9d57fe5b5082611ad5576040517fd51edae300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b815f60018110611ae857611ae76126c1565b5b602002015193505050509392505050565b604051806040016040528060608152602001606081525090565b604051806040016040528060608152602001606081525090565b60405180604001604052805f81526020015f81525090565b6040518060600160405280600390602082028036833780820191505090505090565b6040518060800160405280600490602082028036833780820191505090505090565b6040518060400160405280611b9c611c16565b8152602001611ba9611c16565b81525090565b604051806101800160405280600c90602082028036833780820191505090505090565b6040518060200160405280600190602082028036833780820191505090505090565b6040518060c00160405280600690602082028036833780820191505090505090565b6040518060400160405280600290602082028036833780820191505090505090565b5f604051905090565b5f5ffd5b5f5ffd5b5f819050919050565b611c5b81611c49565b8114611c65575f5ffd5b50565b5f81359050611c7681611c52565b92915050565b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611cc682611c80565b810181811067ffffffffffffffff82111715611ce557611ce4611c90565b5b80604052505050565b5f611cf7611c38565b9050611d038282611cbd565b919050565b5f5ffd5b5f819050919050565b611d1e81611d0c565b8114611d28575f5ffd5b50565b5f81359050611d3981611d15565b92915050565b5f60408284031215611d5457611d53611c7c565b5b611d5e6040611cee565b90505f611d6d84828501611d2b565b5f830152506020611d8084828501611d2b565b60208301525092915050565b5f5ffd5b5f67ffffffffffffffff821115611daa57611da9611c90565b5b602082029050919050565b5f5ffd5b5f611dcb611dc684611d90565b611cee565b90508060208402830185811115611de557611de4611db5565b5b835b81811015611e0e5780611dfa8882611d2b565b845260208401935050602081019050611de7565b5050509392505050565b5f82601f830112611e2c57611e2b611d8c565b5b6002611e39848285611db9565b91505092915050565b5f60808284031215611e5757611e56611c7c565b5b611e616040611cee565b90505f611e7084828501611e18565b5f830152506040611e8384828501611e18565b60208301525092915050565b5f5f5f5f6101208587031215611ea857611ea7611c41565b5b5f611eb587828801611c68565b9450506020611ec687828801611d3f565b9350506060611ed787828801611e42565b92505060e0611ee887828801611d3f565b91505092959194509250565b5f8115159050919050565b611f0881611ef4565b82525050565b5f604082019050611f215f830185611eff565b611f2e6020830184611eff565b9392505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f819050919050565b5f611f77611f72611f6d84611f35565b611f54565b611f35565b9050919050565b5f611f8882611f5d565b9050919050565b5f611f9982611f7e565b9050919050565b611fa981611f8f565b82525050565b5f602082019050611fc25f830184611fa0565b92915050565b5f611fd282611f7e565b9050919050565b611fe281611fc8565b82525050565b5f602082019050611ffb5f830184611fd9565b92915050565b5f61200b82611f7e565b9050919050565b61201b81612001565b82525050565b5f6020820190506120345f830184612012565b92915050565b5f5ffd5b5f5f83601f84011261205357612052611d8c565b5b8235905067ffffffffffffffff8111156120705761206f61203a565b5b60208301915083600182028301111561208c5761208b611db5565b5b9250929050565b5f63ffffffff82169050919050565b6120ab81612093565b81146120b5575f5ffd5b50565b5f813590506120c6816120a2565b92915050565b5f67ffffffffffffffff8211156120e6576120e5611c90565b5b602082029050602081019050919050565b5f612109612104846120cc565b611cee565b9050808382526020820190506020840283018581111561212c5761212b611db5565b5b835b81811015612155578061214188826120b8565b84526020840193505060208101905061212e565b5050509392505050565b5f82601f83011261217357612172611d8c565b5b81356121838482602086016120f7565b91505092915050565b5f67ffffffffffffffff8211156121a6576121a5611c90565b5b602082029050602081019050919050565b5f6121c96121c48461218c565b611cee565b905080838252602082019050604084028301858111156121ec576121eb611db5565b5b835b8181101561221557806122018882611d3f565b8452602084019350506040810190506121ee565b5050509392505050565b5f82601f83011261223357612232611d8c565b5b81356122438482602086016121b7565b91505092915050565b5f67ffffffffffffffff82111561226657612265611c90565b5b602082029050602081019050919050565b5f6122896122848461224c565b611cee565b905080838252602082019050602084028301858111156122ac576122ab611db5565b5b835b818110156122f357803567ffffffffffffffff8111156122d1576122d0611d8c565b5b8086016122de898261215f565b855260208501945050506020810190506122ae565b5050509392505050565b5f82601f83011261231157612310611d8c565b5b8135612321848260208601612277565b91505092915050565b5f61018082840312156123405761233f611c7c565b5b61234b610100611cee565b90505f82013567ffffffffffffffff81111561236a57612369611d08565b5b6123768482850161215f565b5f83015250602082013567ffffffffffffffff81111561239957612398611d08565b5b6123a58482850161221f565b602083015250604082013567ffffffffffffffff8111156123c9576123c8611d08565b5b6123d58482850161221f565b60408301525060606123e984828501611e42565b60608301525060e06123fd84828501611d3f565b60808301525061012082013567ffffffffffffffff81111561242257612421611d08565b5b61242e8482850161215f565b60a08301525061014082013567ffffffffffffffff81111561245357612452611d08565b5b61245f8482850161215f565b60c08301525061016082013567ffffffffffffffff81111561248457612483611d08565b5b612490848285016122fd565b60e08301525092915050565b5f5f5f5f5f608086880312156124b5576124b4611c41565b5b5f6124c288828901611c68565b955050602086013567ffffffffffffffff8111156124e3576124e2611c45565b5b6124ef8882890161203e565b94509450506040612502888289016120b8565b925050606086013567ffffffffffffffff81111561252357612522611c45565b5b61252f8882890161232a565b9150509295509295909350565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f6bffffffffffffffffffffffff82169050919050565b61258581612565565b82525050565b5f612596838361257c565b60208301905092915050565b5f602082019050919050565b5f6125b88261253c565b6125c28185612546565b93506125cd83612556565b805f5b838110156125fd5781516125e4888261258b565b97506125ef836125a2565b9250506001810190506125d0565b5085935050505092915050565b5f604083015f8301518482035f86015261262482826125ae565b9150506020830151848203602086015261263e82826125ae565b9150508091505092915050565b61265481611c49565b82525050565b5f6040820190508181035f830152612672818561260a565b9050612681602083018461264b565b9392505050565b5f61269282611f7e565b9050919050565b6126a281612688565b82525050565b5f6020820190506126bb5f830184612699565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f819050919050565b61270861270382611c49565b6126ee565b82525050565b5f819050919050565b61272861272382611d0c565b61270e565b82525050565b5f612739828c6126f7565b602082019150612749828b612717565b602082019150612759828a612717565b6020820191506127698289612717565b6020820191506127798288612717565b6020820191506127898287612717565b6020820191506127998286612717565b6020820191506127a98285612717565b6020820191506127b98284612717565b6020820191508190509a9950505050505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61280782611d0c565b915061281283611d0c565b925082612822576128216127d0565b5b828206905092915050565b5f60ff82169050919050565b6128428161282d565b811461284c575f5ffd5b50565b5f8151905061285d81612839565b92915050565b5f6020828403121561287857612877611c41565b5b5f6128858482850161284f565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6128c582611d0c565b91506128d083611d0c565b92508282039050818111156128e8576128e761288e565b5b92915050565b6128f781612093565b82525050565b5f61291761291261290d84612093565b611f54565b611d0c565b9050919050565b612927816128fd565b82525050565b5f6060820190506129405f83018661264b565b61294d60208301856128ee565b61295a604083018461291e565b949350505050565b5f77ffffffffffffffffffffffffffffffffffffffffffffffff82169050919050565b61298e81612962565b8114612998575f5ffd5b50565b5f815190506129a981612985565b92915050565b5f602082840312156129c4576129c3611c41565b5b5f6129d18482850161299b565b91505092915050565b6129e38161282d565b82525050565b5f6060820190506129fc5f8301866129da565b612a0960208301856128ee565b612a16604083018461291e565b949350505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000082169050919050565b612a5281612a1e565b8114612a5c575f5ffd5b50565b5f81519050612a6d81612a49565b92915050565b5f60208284031215612a8857612a87611c41565b5b5f612a9584828501612a5f565b91505092915050565b612aa781612565565b8114612ab1575f5ffd5b50565b5f81519050612ac281612a9e565b92915050565b5f60208284031215612add57612adc611c41565b5b5f612aea84828501612ab4565b91505092915050565b5f608082019050612b065f8301876129da565b612b1360208301866128ee565b612b20604083018561264b565b612b2d606083018461291e565b95945050505050565b5f612b4082612565565b9150612b4b83612565565b925082820390506bffffffffffffffffffffffff811115612b6f57612b6e61288e565b5b92915050565b5f8160e01b9050919050565b5f612b8b82612b75565b9050919050565b612ba3612b9e82612093565b612b81565b82525050565b5f81519050919050565b5f81905092915050565b5f819050602082019050919050565b612bd581611c49565b82525050565b5f612be68383612bcc565b60208301905092915050565b5f602082019050919050565b5f612c0882612ba9565b612c128185612bb3565b9350612c1d83612bbd565b805f5b83811015612c4d578151612c348882612bdb565b9750612c3f83612bf2565b925050600181019050612c20565b5085935050505092915050565b5f612c658285612b92565b600482019150612c758284612bfe565b91508190509392505050565b5f612c8b82611d0c565b9150612c9683611d0c565b9250828202612ca481611d0c565b91508282048414831517612cbb57612cba61288e565b5b5092915050565b5f612ccc82611d0c565b9150612cd783611d0c565b9250828201905080821115612cef57612cee61288e565b5b92915050565b5f61ffff82169050919050565b5f612d0c82612cf5565b915061ffff8203612d2057612d1f61288e565b5b60018201905091905056fea264697066735822122009fafd6a9cb72c083d065be8b674687b4e0fc68c06baf5234eac5e2e4975cdc864736f6c634300081d0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"a\x01\0`@R4\x80\x15a\0\x10W__\xFD[P`@Qa1\xD38\x03\x80a1\xD3\x839\x81\x81\x01`@R\x81\x01\x90a\x002\x91\x90a\x02\xBFV[\x80\x80s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16`\x80\x81s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81RPP\x80s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16ch0H5`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\0\xB0W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\0\xD4\x91\x90a\x03%V[s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16`\xA0\x81s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81RPP\x80s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16c]\xF4YF`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x01PW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x01t\x91\x90a\x03\x8BV[s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16`\xC0\x81s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81RPP`\xA0Qs\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16c\xDF\\\xF7#`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x01\xF2W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x02\x16\x91\x90a\x03\xF1V[s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16`\xE0\x81s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81RPPPPa\x04\x1CV[__\xFD[_s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x16\x90P\x91\x90PV[_a\x02}\x82a\x02TV[\x90P\x91\x90PV[_a\x02\x8E\x82a\x02sV[\x90P\x91\x90PV[a\x02\x9E\x81a\x02\x84V[\x81\x14a\x02\xA8W__\xFD[PV[_\x81Q\x90Pa\x02\xB9\x81a\x02\x95V[\x92\x91PPV[_` \x82\x84\x03\x12\x15a\x02\xD4Wa\x02\xD3a\x02PV[[_a\x02\xE1\x84\x82\x85\x01a\x02\xABV[\x91PP\x92\x91PPV[_a\x02\xF4\x82a\x02sV[\x90P\x91\x90PV[a\x03\x04\x81a\x02\xEAV[\x81\x14a\x03\x0EW__\xFD[PV[_\x81Q\x90Pa\x03\x1F\x81a\x02\xFBV[\x92\x91PPV[_` \x82\x84\x03\x12\x15a\x03:Wa\x039a\x02PV[[_a\x03G\x84\x82\x85\x01a\x03\x11V[\x91PP\x92\x91PPV[_a\x03Z\x82a\x02sV[\x90P\x91\x90PV[a\x03j\x81a\x03PV[\x81\x14a\x03tW__\xFD[PV[_\x81Q\x90Pa\x03\x85\x81a\x03aV[\x92\x91PPV[_` \x82\x84\x03\x12\x15a\x03\xA0Wa\x03\x9Fa\x02PV[[_a\x03\xAD\x84\x82\x85\x01a\x03wV[\x91PP\x92\x91PPV[_a\x03\xC0\x82a\x02sV[\x90P\x91\x90PV[a\x03\xD0\x81a\x03\xB6V[\x81\x14a\x03\xDAW__\xFD[PV[_\x81Q\x90Pa\x03\xEB\x81a\x03\xC7V[\x92\x91PPV[_` \x82\x84\x03\x12\x15a\x04\x06Wa\x04\x05a\x02PV[[_a\x04\x13\x84\x82\x85\x01a\x03\xDDV[\x91PP\x92\x91PPV[`\x80Q`\xA0Q`\xC0Q`\xE0Qa-aa\x04r_9_a\x0E\xEB\x01R_\x81\x81a\x02\xA3\x01Ra\t=\x01R_\x81\x81a\x02\xC7\x01R\x81\x81a\n\xBD\x01Ra\x0C\x97\x01R_\x81\x81a\x02\xEB\x01R\x81\x81a\x06\x17\x01Ra\x07\x94\x01Ra-a_\xF3\xFE`\x80`@R4\x80\x15a\0\x0FW__\xFD[P`\x046\x10a\0`W_5`\xE0\x1C\x80c\x17\x1F\x1D[\x14a\0dW\x80c]\xF4YF\x14a\0\x95W\x80ch0H5\x14a\0\xB3W\x80cm\x14\xA9\x87\x14a\0\xD1W\x80cn\xFBF6\x14a\0\xEFW\x80c\xDF\\\xF7#\x14a\x01 W[__\xFD[a\0~`\x04\x806\x03\x81\x01\x90a\0y\x91\x90a\x1E\x8FV[a\x01>V[`@Qa\0\x8C\x92\x91\x90a\x1F\x0EV[`@Q\x80\x91\x03\x90\xF3[a\0\x9Da\x02\xA1V[`@Qa\0\xAA\x91\x90a\x1F\xAFV[`@Q\x80\x91\x03\x90\xF3[a\0\xBBa\x02\xC5V[`@Qa\0\xC8\x91\x90a\x1F\xE8V[`@Q\x80\x91\x03\x90\xF3[a\0\xD9a\x02\xE9V[`@Qa\0\xE6\x91\x90a !V[`@Q\x80\x91\x03\x90\xF3[a\x01\t`\x04\x806\x03\x81\x01\x90a\x01\x04\x91\x90a$\x9CV[a\x03\rV[`@Qa\x01\x17\x92\x91\x90a&ZV[`@Q\x80\x91\x03\x90\xF3[a\x01(a\x0E\xE9V[`@Qa\x015\x91\x90a&\xA8V[`@Q\x80\x91\x03\x90\xF3[___\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X](3\xE8Hy\xB9p\x91C\xE1\xF5\x93\xF0\0\0\x01\x87\x87_\x01Q\x88` \x01Q\x88_\x01Q_`\x02\x81\x10a\x01\x82Wa\x01\x81a&\xC1V[[` \x02\x01Q\x89_\x01Q`\x01`\x02\x81\x10a\x01\x9EWa\x01\x9Da&\xC1V[[` \x02\x01Q\x8A` \x01Q_`\x02\x81\x10a\x01\xBAWa\x01\xB9a&\xC1V[[` \x02\x01Q\x8B` \x01Q`\x01`\x02\x81\x10a\x01\xD7Wa\x01\xD6a&\xC1V[[` \x02\x01Q\x8B_\x01Q\x8C` \x01Q`@Q` \x01a\x01\xFD\x99\x98\x97\x96\x95\x94\x93\x92\x91\x90a'.V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 _\x1Ca\x02\x1F\x91\x90a'\xFDV[\x90Pa\x02\x8Fa\x02Ia\x02:\x83\x89a\x0F\r\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x86a\x0F\xD8\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[a\x02Qa\x10\xC8V[a\x02\x85a\x02n\x85a\x02`a\x11\x92V[a\x0F\r\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[a\x02w\x8Ca\x11\xB6V[a\x0F\xD8\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x88b\x01\xD4\xC0a\x12\xC1V[\x80\x93P\x81\x94PPPP\x94P\x94\x92PPPV[\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\x81V[\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\x81V[\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\x81V[a\x03\x15a\x1A\xF9V[__\x86\x86\x90P\x03a\x03RW`@Q\x7F\x1F\x04\x05\xA0\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x82`@\x01QQ\x86\x86\x90P\x14\x80\x15a\x03pWP\x82`\xA0\x01QQ\x86\x86\x90P\x14[\x80\x15a\x03\x83WP\x82`\xC0\x01QQ\x86\x86\x90P\x14[\x80\x15a\x03\x96WP\x82`\xE0\x01QQ\x86\x86\x90P\x14[a\x03\xCCW`@Q\x7FCqJ\xFD\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x82_\x01QQ\x83` \x01QQ\x14a\x04\x0EW`@Q\x7F_\x83/A\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[Cc\xFF\xFF\xFF\xFF\x16\x84c\xFF\xFF\xFF\xFF\x16\x10a\x04SW`@Q\x7FK\x87OE\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90Pa\x04sa\x1A\xF9V[\x87\x87\x90Pg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x04\x90Wa\x04\x8Fa\x1C\x90V[[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x04\xBEW\x81` \x01` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90P[P\x81` \x01\x81\x90RP\x87\x87\x90Pg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x04\xE4Wa\x04\xE3a\x1C\x90V[[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x05\x12W\x81` \x01` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90P[P\x81_\x01\x81\x90RPa\x05\"a\x1B\x13V[\x85` \x01QQg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x05AWa\x05@a\x1C\x90V[[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x05oW\x81` \x01` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90P[P\x81_\x01\x81\x90RP\x85` \x01QQg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x05\x96Wa\x05\x95a\x1C\x90V[[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x05\xC4W\x81` \x01` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90P[P\x81` \x01\x81\x90RP_a\x06\xA7\x8A\x8A\x80\x80`\x1F\x01` \x80\x91\x04\x02` \x01`@Q\x90\x81\x01`@R\x80\x93\x92\x91\x90\x81\x81R` \x01\x83\x83\x80\x82\x847_\x81\x84\x01R`\x1F\x19`\x1F\x82\x01\x16\x90P\x80\x83\x01\x92PPPPPPP\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\0s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16c\x9A\xA1e=`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x06~W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x06\xA2\x91\x90a(cV[a\x15aV[\x90P__\x90P[\x87` \x01QQ\x81\x10\x15a\t\x1EWa\x06\xE2\x88` \x01Q\x82\x81Q\x81\x10a\x06\xD5Wa\x06\xD4a&\xC1V[[` \x02` \x01\x01Qa\x15\xB8V[\x83` \x01Q\x82\x81Q\x81\x10a\x06\xF9Wa\x06\xF8a&\xC1V[[` \x02` \x01\x01\x81\x81RPP_\x81\x14a\x07\x92W\x82` \x01Q`\x01\x82a\x07\x1E\x91\x90a(\xBBV[\x81Q\x81\x10a\x07/Wa\x07.a&\xC1V[[` \x02` \x01\x01Q_\x1C\x83` \x01Q\x82\x81Q\x81\x10a\x07PWa\x07Oa&\xC1V[[` \x02` \x01\x01Q_\x1C\x11a\x07\x91W`@Q\x7F\xFFq\x94\x14\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[[\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\0s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16c\x04\xECcQ\x84` \x01Q\x83\x81Q\x81\x10a\x07\xE5Wa\x07\xE4a&\xC1V[[` \x02` \x01\x01Q\x8B\x8B_\x01Q\x85\x81Q\x81\x10a\x08\x04Wa\x08\x03a&\xC1V[[` \x02` \x01\x01Q`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a\x08*\x93\x92\x91\x90a)-V[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x08EW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x08i\x91\x90a)\xAFV[w\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x83_\x01Q\x82\x81Q\x81\x10a\x08\x99Wa\x08\x98a&\xC1V[[` \x02` \x01\x01\x81\x81RPPa\t\x0Fa\t\0a\x08\xD3\x84\x86_\x01Q\x85\x81Q\x81\x10a\x08\xC5Wa\x08\xC4a&\xC1V[[` \x02` \x01\x01Q\x16a\x15\xD0V[\x8A` \x01Q\x84\x81Q\x81\x10a\x08\xEAWa\x08\xE9a&\xC1V[[` \x02` \x01\x01Qa\x16\x0B\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x86a\x0F\xD8\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x94P\x80\x80`\x01\x01\x91PPa\x06\xAEV[PPa\t)\x83a\x16\xF0V[\x92P__\x90P[\x89\x89\x90P\x81\x10\x15a\x0E\x1AW\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\0s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16ch\xBC\xCA\xAC\x8B\x8B\x84\x81\x81\x10a\t\x8AWa\t\x89a&\xC1V[[\x90P\x015`\xF8\x1C`\xF8\x1B`\xF8\x1C\x8A\x8A`\xA0\x01Q\x85\x81Q\x81\x10a\t\xAFWa\t\xAEa&\xC1V[[` \x02` \x01\x01Q`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a\t\xD5\x93\x92\x91\x90a)\xE9V[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\t\xF0W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\n\x14\x91\x90a*sV[g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16a\nF\x88`@\x01Q\x83\x81Q\x81\x10a\n9Wa\n8a&\xC1V[[` \x02` \x01\x01Qa\x15\xB8V[g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16\x14a\n\x88W`@Q\x7F\xE11\n\xED\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\n\xB9\x87`@\x01Q\x82\x81Q\x81\x10a\n\xA2Wa\n\xA1a&\xC1V[[` \x02` \x01\x01Q\x85a\x0F\xD8\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x93P\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\0s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16c\xC8)LV\x8B\x8B\x84\x81\x81\x10a\x0B\nWa\x0B\ta&\xC1V[[\x90P\x015`\xF8\x1C`\xF8\x1B`\xF8\x1C\x8A\x8A`\xC0\x01Q\x85\x81Q\x81\x10a\x0B/Wa\x0B.a&\xC1V[[` \x02` \x01\x01Q`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a\x0BU\x93\x92\x91\x90a)\xE9V[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x0BpW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x0B\x94\x91\x90a*\xC8V[\x83` \x01Q\x82\x81Q\x81\x10a\x0B\xABWa\x0B\xAAa&\xC1V[[` \x02` \x01\x01\x90k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x90\x81k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81RPP\x82` \x01Q\x81\x81Q\x81\x10a\x0B\xECWa\x0B\xEBa&\xC1V[[` \x02` \x01\x01Q\x83_\x01Q\x82\x81Q\x81\x10a\x0C\nWa\x0C\ta&\xC1V[[` \x02` \x01\x01\x90k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x90\x81k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81RPP__\x90P__\x90P[\x88` \x01QQ\x81\x10\x15a\x0E\x0BWa\x0C\x90\x84_\x01Q\x82\x81Q\x81\x10a\x0CcWa\x0Cba&\xC1V[[` \x02` \x01\x01Q\x8D\x8D\x86\x81\x81\x10a\x0C~Wa\x0C}a&\xC1V[[\x90P\x015`\xF8\x1C`\xF8\x1B`\xF8\x1Ca\x17\xA8V[\x15a\r\xFEW\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\0s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16c\xF2\xBE\x94\xAE\x8D\x8D\x86\x81\x81\x10a\x0C\xE4Wa\x0C\xE3a&\xC1V[[\x90P\x015`\xF8\x1C`\xF8\x1B`\xF8\x1C\x8C\x87` \x01Q\x85\x81Q\x81\x10a\r\tWa\r\x08a&\xC1V[[` \x02` \x01\x01Q\x8D`\xE0\x01Q\x88\x81Q\x81\x10a\r(Wa\r'a&\xC1V[[` \x02` \x01\x01Q\x87\x81Q\x81\x10a\rBWa\rAa&\xC1V[[` \x02` \x01\x01Q`@Q\x85c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a\ri\x94\x93\x92\x91\x90a*\xF3V[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\r\x84W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\r\xA8\x91\x90a*\xC8V[\x85_\x01Q\x84\x81Q\x81\x10a\r\xBEWa\r\xBDa&\xC1V[[` \x02` \x01\x01\x81\x81Qa\r\xD2\x91\x90a+6V[\x91P\x90k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x90\x81k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81RPP\x81`\x01\x01\x91P[\x80\x80`\x01\x01\x91PPa\x0C=V[PP\x80\x80`\x01\x01\x91PPa\t0V[P__a\x0E1\x8C\x86\x8A``\x01Q\x8B`\x80\x01Qa\x01>V[\x91P\x91P\x81a\x0ElW`@Q\x7Fg\x98\x8D3\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80a\x0E\xA3W`@Q\x7F\xAB\x1B#k\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PP_\x87\x82` \x01Q`@Q` \x01a\x0E\xBD\x92\x91\x90a,ZV[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x82\x81\x95P\x95PPPPP\x95P\x95\x93PPPPV[\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\x81V[a\x0F\x15a\x1B-V[a\x0F\x1Da\x1BEV[\x83_\x01Q\x81_`\x03\x81\x10a\x0F4Wa\x0F3a&\xC1V[[` \x02\x01\x81\x81RPP\x83` \x01Q\x81`\x01`\x03\x81\x10a\x0FVWa\x0FUa&\xC1V[[` \x02\x01\x81\x81RPP\x82\x81`\x02`\x03\x81\x10a\x0FtWa\x0Fsa&\xC1V[[` \x02\x01\x81\x81RPP_`@\x83``\x84`\x07a\x07\xD0Z\x03\xFA\x90P\x80_\x81\x03a\x0F\x98W\xFE[P\x80a\x0F\xD0W`@Q\x7FF3\xBE2\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PP\x92\x91PPV[a\x0F\xE0a\x1B-V[a\x0F\xE8a\x1BgV[\x83_\x01Q\x81_`\x04\x81\x10a\x0F\xFFWa\x0F\xFEa&\xC1V[[` \x02\x01\x81\x81RPP\x83` \x01Q\x81`\x01`\x04\x81\x10a\x10!Wa\x10 a&\xC1V[[` \x02\x01\x81\x81RPP\x82_\x01Q\x81`\x02`\x04\x81\x10a\x10BWa\x10Aa&\xC1V[[` \x02\x01\x81\x81RPP\x82` \x01Q\x81`\x03`\x04\x81\x10a\x10dWa\x10ca&\xC1V[[` \x02\x01\x81\x81RPP_`@\x83`\x80\x84`\x06a\x07\xD0Z\x03\xFA\x90P\x80_\x81\x03a\x10\x88W\xFE[P\x80a\x10\xC0W`@Q\x7F\xD4\xB6\x8F\xD7\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PP\x92\x91PPV[a\x10\xD0a\x1B\x89V[`@Q\x80`@\x01`@R\x80`@Q\x80`@\x01`@R\x80\x7F\x19\x8E\x93\x93\x92\rH:r`\xBF\xB71\xFB]%\xF1\xAAI35\xA9\xE7\x12\x97\xE4\x85\xB7\xAE\xF3\x12\xC2\x81R` \x01\x7F\x18\0\xDE\xEF\x12\x1F\x1EvBj\0f^\\DygC\"\xD4\xF7^\xDA\xDDF\xDE\xBD\\\xD9\x92\xF6\xED\x81RP\x81R` \x01`@Q\x80`@\x01`@R\x80\x7F']\xC4\xA2\x88\xD1\xAF\xB3\xCB\xB1\xAC\t\x18u$\xC7\xDB69]\xF7\xBE;\x99\xE6s\xB1:\x07Ze\xEC\x81R` \x01\x7F\x1D\x9B\xEF\xCD\x05\xA52>m\xA4\xD45\xF3\xB6\x17\xCD\xB3\xAF\x83(\\-\xF7\x11\xEF9\xC0\x15q\x82\x7F\x9D\x81RP\x81RP\x90P\x90V[a\x11\x9Aa\x1B-V[`@Q\x80`@\x01`@R\x80`\x01\x81R` \x01`\x02\x81RP\x90P\x90V[a\x11\xBEa\x1B-V[__\x90P__\x90P_\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x85_\x1Ca\x11\xF5\x91\x90a'\xFDV[\x90P[`\x01\x15a\x12\xA1Wa\x12\x08\x81a\x17\xBEV[\x80\x93P\x81\x94PPP\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x80a\x12?Wa\x12>a'\xD0V[[\x82\x83\t\x83\x03a\x12gW`@Q\x80`@\x01`@R\x80\x82\x81R` \x01\x83\x81RP\x93PPPPa\x12\xBCV[\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x80a\x12\x96Wa\x12\x95a'\xD0V[[`\x01\x82\x08\x90Pa\x11\xF8V[`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x93PPPP[\x91\x90PV[___`@Q\x80`@\x01`@R\x80\x89\x81R` \x01\x87\x81RP\x90P_`@Q\x80`@\x01`@R\x80\x89\x81R` \x01\x87\x81RP\x90Pa\x12\xFBa\x1B\xAFV[__\x90P[`\x02\x81\x10\x15a\x15\x19W_`\x06\x82a\x13\x17\x91\x90a,\x81V[\x90P\x84\x82`\x02\x81\x10a\x13,Wa\x13+a&\xC1V[[` \x02\x01Q_\x01Q\x83_\x83a\x13A\x91\x90a,\xC2V[`\x0C\x81\x10a\x13RWa\x13Qa&\xC1V[[` \x02\x01\x81\x81RPP\x84\x82`\x02\x81\x10a\x13nWa\x13ma&\xC1V[[` \x02\x01Q` \x01Q\x83`\x01\x83a\x13\x85\x91\x90a,\xC2V[`\x0C\x81\x10a\x13\x96Wa\x13\x95a&\xC1V[[` \x02\x01\x81\x81RPP\x83\x82`\x02\x81\x10a\x13\xB2Wa\x13\xB1a&\xC1V[[` \x02\x01Q_\x01Q_`\x02\x81\x10a\x13\xCCWa\x13\xCBa&\xC1V[[` \x02\x01Q\x83`\x02\x83a\x13\xDF\x91\x90a,\xC2V[`\x0C\x81\x10a\x13\xF0Wa\x13\xEFa&\xC1V[[` \x02\x01\x81\x81RPP\x83\x82`\x02\x81\x10a\x14\x0CWa\x14\x0Ba&\xC1V[[` \x02\x01Q_\x01Q`\x01`\x02\x81\x10a\x14'Wa\x14&a&\xC1V[[` \x02\x01Q\x83`\x03\x83a\x14:\x91\x90a,\xC2V[`\x0C\x81\x10a\x14KWa\x14Ja&\xC1V[[` \x02\x01\x81\x81RPP\x83\x82`\x02\x81\x10a\x14gWa\x14fa&\xC1V[[` \x02\x01Q` \x01Q_`\x02\x81\x10a\x14\x82Wa\x14\x81a&\xC1V[[` \x02\x01Q\x83`\x04\x83a\x14\x95\x91\x90a,\xC2V[`\x0C\x81\x10a\x14\xA6Wa\x14\xA5a&\xC1V[[` \x02\x01\x81\x81RPP\x83\x82`\x02\x81\x10a\x14\xC2Wa\x14\xC1a&\xC1V[[` \x02\x01Q` \x01Q`\x01`\x02\x81\x10a\x14\xDEWa\x14\xDDa&\xC1V[[` \x02\x01Q\x83`\x05\x83a\x14\xF1\x91\x90a,\xC2V[`\x0C\x81\x10a\x15\x02Wa\x15\x01a&\xC1V[[` \x02\x01\x81\x81RPPP\x80\x80`\x01\x01\x91PPa\x13\0V[Pa\x15\"a\x1B\xD2V[_` \x82` `\x0C\x02\x85`\x08\x8C\xFA\x90P\x80_\x83_`\x01\x81\x10a\x15GWa\x15Fa&\xC1V[[` \x02\x01Q\x14\x15\x96P\x96PPPPPP\x95P\x95\x93PPPPV[__a\x15l\x84a\x18\xB3V[\x90P\x80\x83`\xFF\x16`\x01\x90\x1B\x11a\x15\xAEW`@Q\x7F\xCA\x95s3\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80\x91PP\x92\x91PPV[_\x81Q_R\x81` \x01Q` R`@_ \x90P\x91\x90PV[___\x90P[_\x83\x11\x15a\x16\x02W`\x01\x83a\x15\xEB\x91\x90a(\xBBV[\x83\x16\x92P\x80\x80a\x15\xFA\x90a-\x02V[\x91PPa\x15\xD6V[\x80\x91PP\x91\x90PV[a\x16\x13a\x1B-V[a\x02\0\x82a\xFF\xFF\x16\x10a\x16RW`@Q\x7F\xFF\x89\xD4\xFA\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01\x82a\xFF\xFF\x16\x03a\x16fW\x82\x90Pa\x16\xEAV[_`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90P_\x84\x90P_`\x01\x90P__\x90P[\x81a\xFF\xFF\x16\x86a\xFF\xFF\x16\x10a\x16\xE2W`\x01\x80\x82`\xFF\x16\x88a\xFF\xFF\x16\x90\x1C\x16a\xFF\xFF\x16\x03a\x16\xC0Wa\x16\xBD\x84\x84a\x0F\xD8V[\x93P[a\x16\xCA\x83\x84a\x0F\xD8V[\x92P`\x01\x82a\xFF\xFF\x16\x90\x1B\x91P\x80`\x01\x01\x90Pa\x16\x8CV[\x83\x94PPPPP[\x92\x91PPV[a\x16\xF8a\x1B-V[_\x82_\x01Q\x14\x80\x15a\x17\rWP_\x82` \x01Q\x14[\x15a\x17.W`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90Pa\x17\xA3V[`@Q\x80`@\x01`@R\x80\x83_\x01Q\x81R` \x01\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x84` \x01Qa\x17r\x91\x90a'\xFDV[\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDGa\x17\x9D\x91\x90a(\xBBV[\x81RP\x90P[\x91\x90PV[_`\x01\x82`\xFF\x16\x84\x90\x1C\x16`\x01\x14\x90P\x92\x91PPV[___\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x80a\x17\xF0Wa\x17\xEFa'\xD0V[[`\x03\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x80a\x18!Wa\x18 a'\xD0V[[\x86\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x80a\x18QWa\x18Pa'\xD0V[[\x88\x89\t\t\x08\x90P_a\x18\xA4\x82\x7F\x0C\x19\x13\x9C\xB8Lh\nn\x14\x11m\xA0`V\x17e\xE0Z\xA4Z\x1Cr\xA3O\x08#\x05\xB6\x1F?R\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDGa\x19\xBBV[\x90P\x81\x81\x93P\x93PPP\x91P\x91V[_a\x01\0\x82Q\x11\x15a\x18\xF1W`@Q\x7F\xFBJ\x9C\x8E\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_\x82Q\x03a\x19\x01W_\x90Pa\x19\xB6V[__\x83_\x81Q\x81\x10a\x19\x16Wa\x19\x15a&\xC1V[[` \x01\x01Q`\xF8\x1C`\xF8\x1B`\xF8\x1C`\xFF\x16`\x01\x90\x1B\x91P_`\x01\x90P[\x84Q\x81\x10\x15a\x19\xAFW\x84\x81\x81Q\x81\x10a\x19OWa\x19Na&\xC1V[[` \x01\x01Q`\xF8\x1C`\xF8\x1B`\xF8\x1C`\xFF\x16`\x01\x90\x1B\x91P\x82\x82\x11a\x19\x9FW`@Q\x7F\x80\xC8\x83H\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x81\x83\x17\x92P\x80`\x01\x01\x90Pa\x193V[P\x81\x92PPP[\x91\x90PV[__a\x19\xC5a\x1B\xD2V[a\x19\xCDa\x1B\xF4V[` \x81_`\x06\x81\x10a\x19\xE2Wa\x19\xE1a&\xC1V[[` \x02\x01\x81\x81RPP` \x81`\x01`\x06\x81\x10a\x1A\x01Wa\x1A\0a&\xC1V[[` \x02\x01\x81\x81RPP` \x81`\x02`\x06\x81\x10a\x1A Wa\x1A\x1Fa&\xC1V[[` \x02\x01\x81\x81RPP\x86\x81`\x03`\x06\x81\x10a\x1A>Wa\x1A=a&\xC1V[[` \x02\x01\x81\x81RPP\x85\x81`\x04`\x06\x81\x10a\x1A\\Wa\x1A[a&\xC1V[[` \x02\x01\x81\x81RPP\x84\x81`\x05`\x06\x81\x10a\x1AzWa\x1Aya&\xC1V[[` \x02\x01\x81\x81RPP` \x82`\xC0\x83`\x05a\x07\xD0Z\x03\xFA\x92P\x82_\x81\x03a\x1A\x9DW\xFE[P\x82a\x1A\xD5W`@Q\x7F\xD5\x1E\xDA\xE3\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x81_`\x01\x81\x10a\x1A\xE8Wa\x1A\xE7a&\xC1V[[` \x02\x01Q\x93PPPP\x93\x92PPPV[`@Q\x80`@\x01`@R\x80``\x81R` \x01``\x81RP\x90V[`@Q\x80`@\x01`@R\x80``\x81R` \x01``\x81RP\x90V[`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[`@Q\x80``\x01`@R\x80`\x03\x90` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90PP\x90V[`@Q\x80`\x80\x01`@R\x80`\x04\x90` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90PP\x90V[`@Q\x80`@\x01`@R\x80a\x1B\x9Ca\x1C\x16V[\x81R` \x01a\x1B\xA9a\x1C\x16V[\x81RP\x90V[`@Q\x80a\x01\x80\x01`@R\x80`\x0C\x90` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90PP\x90V[`@Q\x80` \x01`@R\x80`\x01\x90` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90PP\x90V[`@Q\x80`\xC0\x01`@R\x80`\x06\x90` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90PP\x90V[`@Q\x80`@\x01`@R\x80`\x02\x90` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90PP\x90V[_`@Q\x90P\x90V[__\xFD[__\xFD[_\x81\x90P\x91\x90PV[a\x1C[\x81a\x1CIV[\x81\x14a\x1CeW__\xFD[PV[_\x815\x90Pa\x1Cv\x81a\x1CRV[\x92\x91PPV[__\xFD[_`\x1F\x19`\x1F\x83\x01\x16\x90P\x91\x90PV[\x7FNH{q\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_R`A`\x04R`$_\xFD[a\x1C\xC6\x82a\x1C\x80V[\x81\x01\x81\x81\x10g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x17\x15a\x1C\xE5Wa\x1C\xE4a\x1C\x90V[[\x80`@RPPPV[_a\x1C\xF7a\x1C8V[\x90Pa\x1D\x03\x82\x82a\x1C\xBDV[\x91\x90PV[__\xFD[_\x81\x90P\x91\x90PV[a\x1D\x1E\x81a\x1D\x0CV[\x81\x14a\x1D(W__\xFD[PV[_\x815\x90Pa\x1D9\x81a\x1D\x15V[\x92\x91PPV[_`@\x82\x84\x03\x12\x15a\x1DTWa\x1DSa\x1C|V[[a\x1D^`@a\x1C\xEEV[\x90P_a\x1Dm\x84\x82\x85\x01a\x1D+V[_\x83\x01RP` a\x1D\x80\x84\x82\x85\x01a\x1D+V[` \x83\x01RP\x92\x91PPV[__\xFD[_g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x15a\x1D\xAAWa\x1D\xA9a\x1C\x90V[[` \x82\x02\x90P\x91\x90PV[__\xFD[_a\x1D\xCBa\x1D\xC6\x84a\x1D\x90V[a\x1C\xEEV[\x90P\x80` \x84\x02\x83\x01\x85\x81\x11\x15a\x1D\xE5Wa\x1D\xE4a\x1D\xB5V[[\x83[\x81\x81\x10\x15a\x1E\x0EW\x80a\x1D\xFA\x88\x82a\x1D+V[\x84R` \x84\x01\x93PP` \x81\x01\x90Pa\x1D\xE7V[PPP\x93\x92PPPV[_\x82`\x1F\x83\x01\x12a\x1E,Wa\x1E+a\x1D\x8CV[[`\x02a\x1E9\x84\x82\x85a\x1D\xB9V[\x91PP\x92\x91PPV[_`\x80\x82\x84\x03\x12\x15a\x1EWWa\x1EVa\x1C|V[[a\x1Ea`@a\x1C\xEEV[\x90P_a\x1Ep\x84\x82\x85\x01a\x1E\x18V[_\x83\x01RP`@a\x1E\x83\x84\x82\x85\x01a\x1E\x18V[` \x83\x01RP\x92\x91PPV[____a\x01 \x85\x87\x03\x12\x15a\x1E\xA8Wa\x1E\xA7a\x1CAV[[_a\x1E\xB5\x87\x82\x88\x01a\x1ChV[\x94PP` a\x1E\xC6\x87\x82\x88\x01a\x1D?V[\x93PP``a\x1E\xD7\x87\x82\x88\x01a\x1EBV[\x92PP`\xE0a\x1E\xE8\x87\x82\x88\x01a\x1D?V[\x91PP\x92\x95\x91\x94P\x92PV[_\x81\x15\x15\x90P\x91\x90PV[a\x1F\x08\x81a\x1E\xF4V[\x82RPPV[_`@\x82\x01\x90Pa\x1F!_\x83\x01\x85a\x1E\xFFV[a\x1F.` \x83\x01\x84a\x1E\xFFV[\x93\x92PPPV[_s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x16\x90P\x91\x90PV[_\x81\x90P\x91\x90PV[_a\x1Fwa\x1Fra\x1Fm\x84a\x1F5V[a\x1FTV[a\x1F5V[\x90P\x91\x90PV[_a\x1F\x88\x82a\x1F]V[\x90P\x91\x90PV[_a\x1F\x99\x82a\x1F~V[\x90P\x91\x90PV[a\x1F\xA9\x81a\x1F\x8FV[\x82RPPV[_` \x82\x01\x90Pa\x1F\xC2_\x83\x01\x84a\x1F\xA0V[\x92\x91PPV[_a\x1F\xD2\x82a\x1F~V[\x90P\x91\x90PV[a\x1F\xE2\x81a\x1F\xC8V[\x82RPPV[_` \x82\x01\x90Pa\x1F\xFB_\x83\x01\x84a\x1F\xD9V[\x92\x91PPV[_a \x0B\x82a\x1F~V[\x90P\x91\x90PV[a \x1B\x81a \x01V[\x82RPPV[_` \x82\x01\x90Pa 4_\x83\x01\x84a \x12V[\x92\x91PPV[__\xFD[__\x83`\x1F\x84\x01\x12a SWa Ra\x1D\x8CV[[\x825\x90Pg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a pWa oa :V[[` \x83\x01\x91P\x83`\x01\x82\x02\x83\x01\x11\x15a \x8CWa \x8Ba\x1D\xB5V[[\x92P\x92\x90PV[_c\xFF\xFF\xFF\xFF\x82\x16\x90P\x91\x90PV[a \xAB\x81a \x93V[\x81\x14a \xB5W__\xFD[PV[_\x815\x90Pa \xC6\x81a \xA2V[\x92\x91PPV[_g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x15a \xE6Wa \xE5a\x1C\x90V[[` \x82\x02\x90P` \x81\x01\x90P\x91\x90PV[_a!\ta!\x04\x84a \xCCV[a\x1C\xEEV[\x90P\x80\x83\x82R` \x82\x01\x90P` \x84\x02\x83\x01\x85\x81\x11\x15a!,Wa!+a\x1D\xB5V[[\x83[\x81\x81\x10\x15a!UW\x80a!A\x88\x82a \xB8V[\x84R` \x84\x01\x93PP` \x81\x01\x90Pa!.V[PPP\x93\x92PPPV[_\x82`\x1F\x83\x01\x12a!sWa!ra\x1D\x8CV[[\x815a!\x83\x84\x82` \x86\x01a \xF7V[\x91PP\x92\x91PPV[_g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x15a!\xA6Wa!\xA5a\x1C\x90V[[` \x82\x02\x90P` \x81\x01\x90P\x91\x90PV[_a!\xC9a!\xC4\x84a!\x8CV[a\x1C\xEEV[\x90P\x80\x83\x82R` \x82\x01\x90P`@\x84\x02\x83\x01\x85\x81\x11\x15a!\xECWa!\xEBa\x1D\xB5V[[\x83[\x81\x81\x10\x15a\"\x15W\x80a\"\x01\x88\x82a\x1D?V[\x84R` \x84\x01\x93PP`@\x81\x01\x90Pa!\xEEV[PPP\x93\x92PPPV[_\x82`\x1F\x83\x01\x12a\"3Wa\"2a\x1D\x8CV[[\x815a\"C\x84\x82` \x86\x01a!\xB7V[\x91PP\x92\x91PPV[_g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x15a\"fWa\"ea\x1C\x90V[[` \x82\x02\x90P` \x81\x01\x90P\x91\x90PV[_a\"\x89a\"\x84\x84a\"LV[a\x1C\xEEV[\x90P\x80\x83\x82R` \x82\x01\x90P` \x84\x02\x83\x01\x85\x81\x11\x15a\"\xACWa\"\xABa\x1D\xB5V[[\x83[\x81\x81\x10\x15a\"\xF3W\x805g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\"\xD1Wa\"\xD0a\x1D\x8CV[[\x80\x86\x01a\"\xDE\x89\x82a!_V[\x85R` \x85\x01\x94PPP` \x81\x01\x90Pa\"\xAEV[PPP\x93\x92PPPV[_\x82`\x1F\x83\x01\x12a#\x11Wa#\x10a\x1D\x8CV[[\x815a#!\x84\x82` \x86\x01a\"wV[\x91PP\x92\x91PPV[_a\x01\x80\x82\x84\x03\x12\x15a#@Wa#?a\x1C|V[[a#Ka\x01\0a\x1C\xEEV[\x90P_\x82\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a#jWa#ia\x1D\x08V[[a#v\x84\x82\x85\x01a!_V[_\x83\x01RP` \x82\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a#\x99Wa#\x98a\x1D\x08V[[a#\xA5\x84\x82\x85\x01a\"\x1FV[` \x83\x01RP`@\x82\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a#\xC9Wa#\xC8a\x1D\x08V[[a#\xD5\x84\x82\x85\x01a\"\x1FV[`@\x83\x01RP``a#\xE9\x84\x82\x85\x01a\x1EBV[``\x83\x01RP`\xE0a#\xFD\x84\x82\x85\x01a\x1D?V[`\x80\x83\x01RPa\x01 \x82\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a$\"Wa$!a\x1D\x08V[[a$.\x84\x82\x85\x01a!_V[`\xA0\x83\x01RPa\x01@\x82\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a$SWa$Ra\x1D\x08V[[a$_\x84\x82\x85\x01a!_V[`\xC0\x83\x01RPa\x01`\x82\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a$\x84Wa$\x83a\x1D\x08V[[a$\x90\x84\x82\x85\x01a\"\xFDV[`\xE0\x83\x01RP\x92\x91PPV[_____`\x80\x86\x88\x03\x12\x15a$\xB5Wa$\xB4a\x1CAV[[_a$\xC2\x88\x82\x89\x01a\x1ChV[\x95PP` \x86\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a$\xE3Wa$\xE2a\x1CEV[[a$\xEF\x88\x82\x89\x01a >V[\x94P\x94PP`@a%\x02\x88\x82\x89\x01a \xB8V[\x92PP``\x86\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a%#Wa%\"a\x1CEV[[a%/\x88\x82\x89\x01a#*V[\x91PP\x92\x95P\x92\x95\x90\x93PV[_\x81Q\x90P\x91\x90PV[_\x82\x82R` \x82\x01\x90P\x92\x91PPV[_\x81\x90P` \x82\x01\x90P\x91\x90PV[_k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x16\x90P\x91\x90PV[a%\x85\x81a%eV[\x82RPPV[_a%\x96\x83\x83a%|V[` \x83\x01\x90P\x92\x91PPV[_` \x82\x01\x90P\x91\x90PV[_a%\xB8\x82a%\x82\x82a%\xAEV[\x91PP\x80\x91PP\x92\x91PPV[a&T\x81a\x1CIV[\x82RPPV[_`@\x82\x01\x90P\x81\x81\x03_\x83\x01Ra&r\x81\x85a&\nV[\x90Pa&\x81` \x83\x01\x84a&KV[\x93\x92PPPV[_a&\x92\x82a\x1F~V[\x90P\x91\x90PV[a&\xA2\x81a&\x88V[\x82RPPV[_` \x82\x01\x90Pa&\xBB_\x83\x01\x84a&\x99V[\x92\x91PPV[\x7FNH{q\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_R`2`\x04R`$_\xFD[_\x81\x90P\x91\x90PV[a'\x08a'\x03\x82a\x1CIV[a&\xEEV[\x82RPPV[_\x81\x90P\x91\x90PV[a'(a'#\x82a\x1D\x0CV[a'\x0EV[\x82RPPV[_a'9\x82\x8Ca&\xF7V[` \x82\x01\x91Pa'I\x82\x8Ba'\x17V[` \x82\x01\x91Pa'Y\x82\x8Aa'\x17V[` \x82\x01\x91Pa'i\x82\x89a'\x17V[` \x82\x01\x91Pa'y\x82\x88a'\x17V[` \x82\x01\x91Pa'\x89\x82\x87a'\x17V[` \x82\x01\x91Pa'\x99\x82\x86a'\x17V[` \x82\x01\x91Pa'\xA9\x82\x85a'\x17V[` \x82\x01\x91Pa'\xB9\x82\x84a'\x17V[` \x82\x01\x91P\x81\x90P\x9A\x99PPPPPPPPPPV[\x7FNH{q\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_R`\x12`\x04R`$_\xFD[_a(\x07\x82a\x1D\x0CV[\x91Pa(\x12\x83a\x1D\x0CV[\x92P\x82a(\"Wa(!a'\xD0V[[\x82\x82\x06\x90P\x92\x91PPV[_`\xFF\x82\x16\x90P\x91\x90PV[a(B\x81a(-V[\x81\x14a(LW__\xFD[PV[_\x81Q\x90Pa(]\x81a(9V[\x92\x91PPV[_` \x82\x84\x03\x12\x15a(xWa(wa\x1CAV[[_a(\x85\x84\x82\x85\x01a(OV[\x91PP\x92\x91PPV[\x7FNH{q\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_R`\x11`\x04R`$_\xFD[_a(\xC5\x82a\x1D\x0CV[\x91Pa(\xD0\x83a\x1D\x0CV[\x92P\x82\x82\x03\x90P\x81\x81\x11\x15a(\xE8Wa(\xE7a(\x8EV[[\x92\x91PPV[a(\xF7\x81a \x93V[\x82RPPV[_a)\x17a)\x12a)\r\x84a \x93V[a\x1FTV[a\x1D\x0CV[\x90P\x91\x90PV[a)'\x81a(\xFDV[\x82RPPV[_``\x82\x01\x90Pa)@_\x83\x01\x86a&KV[a)M` \x83\x01\x85a(\xEEV[a)Z`@\x83\x01\x84a)\x1EV[\x94\x93PPPPV[_w\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x16\x90P\x91\x90PV[a)\x8E\x81a)bV[\x81\x14a)\x98W__\xFD[PV[_\x81Q\x90Pa)\xA9\x81a)\x85V[\x92\x91PPV[_` \x82\x84\x03\x12\x15a)\xC4Wa)\xC3a\x1CAV[[_a)\xD1\x84\x82\x85\x01a)\x9BV[\x91PP\x92\x91PPV[a)\xE3\x81a(-V[\x82RPPV[_``\x82\x01\x90Pa)\xFC_\x83\x01\x86a)\xDAV[a*\t` \x83\x01\x85a(\xEEV[a*\x16`@\x83\x01\x84a)\x1EV[\x94\x93PPPPV[_\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\x82\x16\x90P\x91\x90PV[a*R\x81a*\x1EV[\x81\x14a*\\W__\xFD[PV[_\x81Q\x90Pa*m\x81a*IV[\x92\x91PPV[_` \x82\x84\x03\x12\x15a*\x88Wa*\x87a\x1CAV[[_a*\x95\x84\x82\x85\x01a*_V[\x91PP\x92\x91PPV[a*\xA7\x81a%eV[\x81\x14a*\xB1W__\xFD[PV[_\x81Q\x90Pa*\xC2\x81a*\x9EV[\x92\x91PPV[_` \x82\x84\x03\x12\x15a*\xDDWa*\xDCa\x1CAV[[_a*\xEA\x84\x82\x85\x01a*\xB4V[\x91PP\x92\x91PPV[_`\x80\x82\x01\x90Pa+\x06_\x83\x01\x87a)\xDAV[a+\x13` \x83\x01\x86a(\xEEV[a+ `@\x83\x01\x85a&KV[a+-``\x83\x01\x84a)\x1EV[\x95\x94PPPPPV[_a+@\x82a%eV[\x91Pa+K\x83a%eV[\x92P\x82\x82\x03\x90Pk\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a+oWa+na(\x8EV[[\x92\x91PPV[_\x81`\xE0\x1B\x90P\x91\x90PV[_a+\x8B\x82a+uV[\x90P\x91\x90PV[a+\xA3a+\x9E\x82a \x93V[a+\x81V[\x82RPPV[_\x81Q\x90P\x91\x90PV[_\x81\x90P\x92\x91PPV[_\x81\x90P` \x82\x01\x90P\x91\x90PV[a+\xD5\x81a\x1CIV[\x82RPPV[_a+\xE6\x83\x83a+\xCCV[` \x83\x01\x90P\x92\x91PPV[_` \x82\x01\x90P\x91\x90PV[_a,\x08\x82a+\xA9V[a,\x12\x81\x85a+\xB3V[\x93Pa,\x1D\x83a+\xBDV[\x80_[\x83\x81\x10\x15a,MW\x81Qa,4\x88\x82a+\xDBV[\x97Pa,?\x83a+\xF2V[\x92PP`\x01\x81\x01\x90Pa, V[P\x85\x93PPPP\x92\x91PPV[_a,e\x82\x85a+\x92V[`\x04\x82\x01\x91Pa,u\x82\x84a+\xFEV[\x91P\x81\x90P\x93\x92PPPV[_a,\x8B\x82a\x1D\x0CV[\x91Pa,\x96\x83a\x1D\x0CV[\x92P\x82\x82\x02a,\xA4\x81a\x1D\x0CV[\x91P\x82\x82\x04\x84\x14\x83\x15\x17a,\xBBWa,\xBAa(\x8EV[[P\x92\x91PPV[_a,\xCC\x82a\x1D\x0CV[\x91Pa,\xD7\x83a\x1D\x0CV[\x92P\x82\x82\x01\x90P\x80\x82\x11\x15a,\xEFWa,\xEEa(\x8EV[[\x92\x91PPV[_a\xFF\xFF\x82\x16\x90P\x91\x90PV[_a-\x0C\x82a,\xF5V[\x91Pa\xFF\xFF\x82\x03a- Wa-\x1Fa(\x8EV[[`\x01\x82\x01\x90P\x91\x90PV\xFE\xA2dipfsX\"\x12 \t\xFA\xFDj\x9C\xB7,\x08=\x06[\xE8\xB6th{N\x0F\xC6\x8C\x06\xBA\xF5#N\xAC^.Iu\xCD\xC8dsolcC\0\x08\x1D\x003", - ); - /// The runtime bytecode of the contract, as deployed on the network. - /// - /// ```text - ///0x608060405234801561000f575f5ffd5b5060043610610060575f3560e01c8063171f1d5b146100645780635df459461461009557806368304835146100b35780636d14a987146100d15780636efb4636146100ef578063df5cf72314610120575b5f5ffd5b61007e60048036038101906100799190611e8f565b61013e565b60405161008c929190611f0e565b60405180910390f35b61009d6102a1565b6040516100aa9190611faf565b60405180910390f35b6100bb6102c5565b6040516100c89190611fe8565b60405180910390f35b6100d96102e9565b6040516100e69190612021565b60405180910390f35b6101096004803603810190610104919061249c565b61030d565b60405161011792919061265a565b60405180910390f35b610128610ee9565b60405161013591906126a8565b60405180910390f35b5f5f5f7f30644e72e131a029b85045b68181585d2833e84879b9709143e1f593f000000187875f01518860200151885f01515f60028110610182576101816126c1565b5b6020020151895f015160016002811061019e5761019d6126c1565b5b60200201518a602001515f600281106101ba576101b96126c1565b5b60200201518b602001516001600281106101d7576101d66126c1565b5b60200201518b5f01518c602001516040516020016101fd9998979695949392919061272e565b604051602081830303815290604052805190602001205f1c61021f91906127fd565b905061028f61024961023a8389610f0d90919063ffffffff16565b86610fd890919063ffffffff16565b6102516110c8565b61028561026e85610260611192565b610f0d90919063ffffffff16565b6102778c6111b6565b610fd890919063ffffffff16565b886201d4c06112c1565b80935081945050505094509492505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b610315611af9565b5f5f8686905003610352576040517f1f0405a000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8260400151518686905014801561037057508260a001515186869050145b801561038357508260c001515186869050145b801561039657508260e001515186869050145b6103cc576040517f43714afd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b825f0151518360200151511461040e576040517f5f832f4100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b4363ffffffff168463ffffffff1610610453576040517f4b874f4500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60405180604001604052805f81526020015f8152509050610473611af9565b8787905067ffffffffffffffff8111156104905761048f611c90565b5b6040519080825280602002602001820160405280156104be5781602001602082028036833780820191505090505b5081602001819052508787905067ffffffffffffffff8111156104e4576104e3611c90565b5b6040519080825280602002602001820160405280156105125781602001602082028036833780820191505090505b50815f0181905250610522611b13565b85602001515167ffffffffffffffff81111561054157610540611c90565b5b60405190808252806020026020018201604052801561056f5781602001602082028036833780820191505090505b50815f018190525085602001515167ffffffffffffffff81111561059657610595611c90565b5b6040519080825280602002602001820160405280156105c45781602001602082028036833780820191505090505b5081602001819052505f6106a78a8a8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f820116905080830192505050505050507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16639aa1653d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561067e573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a29190612863565b611561565b90505f5f90505b87602001515181101561091e576106e2886020015182815181106106d5576106d46126c1565b5b60200260200101516115b8565b836020015182815181106106f9576106f86126c1565b5b6020026020010181815250505f811461079257826020015160018261071e91906128bb565b8151811061072f5761072e6126c1565b5b60200260200101515f1c836020015182815181106107505761074f6126c1565b5b60200260200101515f1c11610791576040517fff71941400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166304ec6351846020015183815181106107e5576107e46126c1565b5b60200260200101518b8b5f01518581518110610804576108036126c1565b5b60200260200101516040518463ffffffff1660e01b815260040161082a9392919061292d565b602060405180830381865afa158015610845573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061086991906129af565b77ffffffffffffffffffffffffffffffffffffffffffffffff16835f01518281518110610899576108986126c1565b5b60200260200101818152505061090f6109006108d384865f015185815181106108c5576108c46126c1565b5b6020026020010151166115d0565b8a6020015184815181106108ea576108e96126c1565b5b602002602001015161160b90919063ffffffff16565b86610fd890919063ffffffff16565b945080806001019150506106ae565b5050610929836116f0565b92505f5f90505b89899050811015610e1a577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166368bccaac8b8b8481811061098a576109896126c1565b5b9050013560f81c60f81b60f81c8a8a60a0015185815181106109af576109ae6126c1565b5b60200260200101516040518463ffffffff1660e01b81526004016109d5939291906129e9565b602060405180830381865afa1580156109f0573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a149190612a73565b67ffffffffffffffff1916610a4688604001518381518110610a3957610a386126c1565b5b60200260200101516115b8565b67ffffffffffffffff191614610a88576040517fe1310aed00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610ab987604001518281518110610aa257610aa16126c1565b5b602002602001015185610fd890919063ffffffff16565b93507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663c8294c568b8b84818110610b0a57610b096126c1565b5b9050013560f81c60f81b60f81c8a8a60c001518581518110610b2f57610b2e6126c1565b5b60200260200101516040518463ffffffff1660e01b8152600401610b55939291906129e9565b602060405180830381865afa158015610b70573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b949190612ac8565b83602001518281518110610bab57610baa6126c1565b5b60200260200101906bffffffffffffffffffffffff1690816bffffffffffffffffffffffff168152505082602001518181518110610bec57610beb6126c1565b5b6020026020010151835f01518281518110610c0a57610c096126c1565b5b60200260200101906bffffffffffffffffffffffff1690816bffffffffffffffffffffffff16815250505f5f90505f5f90505b886020015151811015610e0b57610c90845f01518281518110610c6357610c626126c1565b5b60200260200101518d8d86818110610c7e57610c7d6126c1565b5b9050013560f81c60f81b60f81c6117a8565b15610dfe577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f2be94ae8d8d86818110610ce457610ce36126c1565b5b9050013560f81c60f81b60f81c8c87602001518581518110610d0957610d086126c1565b5b60200260200101518d60e001518881518110610d2857610d276126c1565b5b60200260200101518781518110610d4257610d416126c1565b5b60200260200101516040518563ffffffff1660e01b8152600401610d699493929190612af3565b602060405180830381865afa158015610d84573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610da89190612ac8565b855f01518481518110610dbe57610dbd6126c1565b5b60200260200101818151610dd29190612b36565b9150906bffffffffffffffffffffffff1690816bffffffffffffffffffffffff16815250508160010191505b8080600101915050610c3d565b50508080600101915050610930565b505f5f610e318c868a606001518b6080015161013e565b9150915081610e6c576040517f67988d3300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80610ea3576040517fab1b236b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505f878260200151604051602001610ebd929190612c5a565b604051602081830303815290604052805190602001209050828195509550505050509550959350505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b610f15611b2d565b610f1d611b45565b835f0151815f60038110610f3457610f336126c1565b5b602002018181525050836020015181600160038110610f5657610f556126c1565b5b6020020181815250508281600260038110610f7457610f736126c1565b5b6020020181815250505f60408360608460076107d05a03fa9050805f8103610f9857fe5b5080610fd0576040517f4633be3200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505092915050565b610fe0611b2d565b610fe8611b67565b835f0151815f60048110610fff57610ffe6126c1565b5b602002018181525050836020015181600160048110611021576110206126c1565b5b602002018181525050825f015181600260048110611042576110416126c1565b5b602002018181525050826020015181600360048110611064576110636126c1565b5b6020020181815250505f60408360808460066107d05a03fa9050805f810361108857fe5b50806110c0576040517fd4b68fd700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505092915050565b6110d0611b89565b604051806040016040528060405180604001604052807f198e9393920d483a7260bfb731fb5d25f1aa493335a9e71297e485b7aef312c281526020017f1800deef121f1e76426a00665e5c4479674322d4f75edadd46debd5cd992f6ed815250815260200160405180604001604052807f275dc4a288d1afb3cbb1ac09187524c7db36395df7be3b99e673b13a075a65ec81526020017f1d9befcd05a5323e6da4d435f3b617cdb3af83285c2df711ef39c01571827f9d815250815250905090565b61119a611b2d565b6040518060400160405280600181526020016002815250905090565b6111be611b2d565b5f5f90505f5f90505f7f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd47855f1c6111f591906127fd565b90505b6001156112a157611208816117be565b80935081945050507f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd478061123f5761123e6127d0565b5b82830983036112675760405180604001604052808281526020018381525093505050506112bc565b7f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4780611296576112956127d0565b5b6001820890506111f8565b60405180604001604052805f81526020015f81525093505050505b919050565b5f5f5f60405180604001604052808981526020018781525090505f60405180604001604052808981526020018781525090506112fb611baf565b5f5f90505b6002811015611519575f6006826113179190612c81565b905084826002811061132c5761132b6126c1565b5b60200201515f0151835f836113419190612cc2565b600c8110611352576113516126c1565b5b60200201818152505084826002811061136e5761136d6126c1565b5b602002015160200151836001836113859190612cc2565b600c8110611396576113956126c1565b5b6020020181815250508382600281106113b2576113b16126c1565b5b60200201515f01515f600281106113cc576113cb6126c1565b5b6020020151836002836113df9190612cc2565b600c81106113f0576113ef6126c1565b5b60200201818152505083826002811061140c5761140b6126c1565b5b60200201515f0151600160028110611427576114266126c1565b5b60200201518360038361143a9190612cc2565b600c811061144b5761144a6126c1565b5b602002018181525050838260028110611467576114666126c1565b5b6020020151602001515f60028110611482576114816126c1565b5b6020020151836004836114959190612cc2565b600c81106114a6576114a56126c1565b5b6020020181815250508382600281106114c2576114c16126c1565b5b6020020151602001516001600281106114de576114dd6126c1565b5b6020020151836005836114f19190612cc2565b600c8110611502576115016126c1565b5b602002018181525050508080600101915050611300565b50611522611bd2565b5f6020826020600c028560088cfa9050805f835f60018110611547576115466126c1565b5b602002015114159650965050505050509550959350505050565b5f5f61156c846118b3565b9050808360ff166001901b116115ae576040517fca95733300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8091505092915050565b5f81515f52816020015160205260405f209050919050565b5f5f5f90505b5f831115611602576001836115eb91906128bb565b8316925080806115fa90612d02565b9150506115d6565b80915050919050565b611613611b2d565b6102008261ffff1610611652576040517fff89d4fa00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60018261ffff1603611666578290506116ea565b5f60405180604001604052805f81526020015f81525090505f8490505f600190505f5f90505b8161ffff168661ffff16106116e2576001808260ff168861ffff16901c1661ffff16036116c0576116bd8484610fd8565b93505b6116ca8384610fd8565b925060018261ffff16901b915080600101905061168c565b839450505050505b92915050565b6116f8611b2d565b5f825f015114801561170d57505f8260200151145b1561172e5760405180604001604052805f81526020015f81525090506117a3565b6040518060400160405280835f015181526020017f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd47846020015161177291906127fd565b7f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4761179d91906128bb565b81525090505b919050565b5f60018260ff1684901c16600114905092915050565b5f5f5f7f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd47806117f0576117ef6127d0565b5b60037f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4780611821576118206127d0565b5b867f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd4780611851576118506127d0565b5b888909090890505f6118a4827f0c19139cb84c680a6e14116da060561765e05aa45a1c72a34f082305b61f3f527f30644e72e131a029b85045b68181585d97816a916871ca8d3c208c16d87cfd476119bb565b90508181935093505050915091565b5f610100825111156118f1576040517ffb4a9c8e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f825103611901575f90506119b6565b5f5f835f81518110611916576119156126c1565b5b602001015160f81c60f81b60f81c60ff166001901b91505f600190505b84518110156119af5784818151811061194f5761194e6126c1565b5b602001015160f81c60f81b60f81c60ff166001901b915082821161199f576040517f80c8834800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8183179250806001019050611933565b5081925050505b919050565b5f5f6119c5611bd2565b6119cd611bf4565b6020815f600681106119e2576119e16126c1565b5b602002018181525050602081600160068110611a0157611a006126c1565b5b602002018181525050602081600260068110611a2057611a1f6126c1565b5b6020020181815250508681600360068110611a3e57611a3d6126c1565b5b6020020181815250508581600460068110611a5c57611a5b6126c1565b5b6020020181815250508481600560068110611a7a57611a796126c1565b5b60200201818152505060208260c08360056107d05a03fa9250825f8103611a9d57fe5b5082611ad5576040517fd51edae300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b815f60018110611ae857611ae76126c1565b5b602002015193505050509392505050565b604051806040016040528060608152602001606081525090565b604051806040016040528060608152602001606081525090565b60405180604001604052805f81526020015f81525090565b6040518060600160405280600390602082028036833780820191505090505090565b6040518060800160405280600490602082028036833780820191505090505090565b6040518060400160405280611b9c611c16565b8152602001611ba9611c16565b81525090565b604051806101800160405280600c90602082028036833780820191505090505090565b6040518060200160405280600190602082028036833780820191505090505090565b6040518060c00160405280600690602082028036833780820191505090505090565b6040518060400160405280600290602082028036833780820191505090505090565b5f604051905090565b5f5ffd5b5f5ffd5b5f819050919050565b611c5b81611c49565b8114611c65575f5ffd5b50565b5f81359050611c7681611c52565b92915050565b5f5ffd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b611cc682611c80565b810181811067ffffffffffffffff82111715611ce557611ce4611c90565b5b80604052505050565b5f611cf7611c38565b9050611d038282611cbd565b919050565b5f5ffd5b5f819050919050565b611d1e81611d0c565b8114611d28575f5ffd5b50565b5f81359050611d3981611d15565b92915050565b5f60408284031215611d5457611d53611c7c565b5b611d5e6040611cee565b90505f611d6d84828501611d2b565b5f830152506020611d8084828501611d2b565b60208301525092915050565b5f5ffd5b5f67ffffffffffffffff821115611daa57611da9611c90565b5b602082029050919050565b5f5ffd5b5f611dcb611dc684611d90565b611cee565b90508060208402830185811115611de557611de4611db5565b5b835b81811015611e0e5780611dfa8882611d2b565b845260208401935050602081019050611de7565b5050509392505050565b5f82601f830112611e2c57611e2b611d8c565b5b6002611e39848285611db9565b91505092915050565b5f60808284031215611e5757611e56611c7c565b5b611e616040611cee565b90505f611e7084828501611e18565b5f830152506040611e8384828501611e18565b60208301525092915050565b5f5f5f5f6101208587031215611ea857611ea7611c41565b5b5f611eb587828801611c68565b9450506020611ec687828801611d3f565b9350506060611ed787828801611e42565b92505060e0611ee887828801611d3f565b91505092959194509250565b5f8115159050919050565b611f0881611ef4565b82525050565b5f604082019050611f215f830185611eff565b611f2e6020830184611eff565b9392505050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f819050919050565b5f611f77611f72611f6d84611f35565b611f54565b611f35565b9050919050565b5f611f8882611f5d565b9050919050565b5f611f9982611f7e565b9050919050565b611fa981611f8f565b82525050565b5f602082019050611fc25f830184611fa0565b92915050565b5f611fd282611f7e565b9050919050565b611fe281611fc8565b82525050565b5f602082019050611ffb5f830184611fd9565b92915050565b5f61200b82611f7e565b9050919050565b61201b81612001565b82525050565b5f6020820190506120345f830184612012565b92915050565b5f5ffd5b5f5f83601f84011261205357612052611d8c565b5b8235905067ffffffffffffffff8111156120705761206f61203a565b5b60208301915083600182028301111561208c5761208b611db5565b5b9250929050565b5f63ffffffff82169050919050565b6120ab81612093565b81146120b5575f5ffd5b50565b5f813590506120c6816120a2565b92915050565b5f67ffffffffffffffff8211156120e6576120e5611c90565b5b602082029050602081019050919050565b5f612109612104846120cc565b611cee565b9050808382526020820190506020840283018581111561212c5761212b611db5565b5b835b81811015612155578061214188826120b8565b84526020840193505060208101905061212e565b5050509392505050565b5f82601f83011261217357612172611d8c565b5b81356121838482602086016120f7565b91505092915050565b5f67ffffffffffffffff8211156121a6576121a5611c90565b5b602082029050602081019050919050565b5f6121c96121c48461218c565b611cee565b905080838252602082019050604084028301858111156121ec576121eb611db5565b5b835b8181101561221557806122018882611d3f565b8452602084019350506040810190506121ee565b5050509392505050565b5f82601f83011261223357612232611d8c565b5b81356122438482602086016121b7565b91505092915050565b5f67ffffffffffffffff82111561226657612265611c90565b5b602082029050602081019050919050565b5f6122896122848461224c565b611cee565b905080838252602082019050602084028301858111156122ac576122ab611db5565b5b835b818110156122f357803567ffffffffffffffff8111156122d1576122d0611d8c565b5b8086016122de898261215f565b855260208501945050506020810190506122ae565b5050509392505050565b5f82601f83011261231157612310611d8c565b5b8135612321848260208601612277565b91505092915050565b5f61018082840312156123405761233f611c7c565b5b61234b610100611cee565b90505f82013567ffffffffffffffff81111561236a57612369611d08565b5b6123768482850161215f565b5f83015250602082013567ffffffffffffffff81111561239957612398611d08565b5b6123a58482850161221f565b602083015250604082013567ffffffffffffffff8111156123c9576123c8611d08565b5b6123d58482850161221f565b60408301525060606123e984828501611e42565b60608301525060e06123fd84828501611d3f565b60808301525061012082013567ffffffffffffffff81111561242257612421611d08565b5b61242e8482850161215f565b60a08301525061014082013567ffffffffffffffff81111561245357612452611d08565b5b61245f8482850161215f565b60c08301525061016082013567ffffffffffffffff81111561248457612483611d08565b5b612490848285016122fd565b60e08301525092915050565b5f5f5f5f5f608086880312156124b5576124b4611c41565b5b5f6124c288828901611c68565b955050602086013567ffffffffffffffff8111156124e3576124e2611c45565b5b6124ef8882890161203e565b94509450506040612502888289016120b8565b925050606086013567ffffffffffffffff81111561252357612522611c45565b5b61252f8882890161232a565b9150509295509295909350565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f6bffffffffffffffffffffffff82169050919050565b61258581612565565b82525050565b5f612596838361257c565b60208301905092915050565b5f602082019050919050565b5f6125b88261253c565b6125c28185612546565b93506125cd83612556565b805f5b838110156125fd5781516125e4888261258b565b97506125ef836125a2565b9250506001810190506125d0565b5085935050505092915050565b5f604083015f8301518482035f86015261262482826125ae565b9150506020830151848203602086015261263e82826125ae565b9150508091505092915050565b61265481611c49565b82525050565b5f6040820190508181035f830152612672818561260a565b9050612681602083018461264b565b9392505050565b5f61269282611f7e565b9050919050565b6126a281612688565b82525050565b5f6020820190506126bb5f830184612699565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f819050919050565b61270861270382611c49565b6126ee565b82525050565b5f819050919050565b61272861272382611d0c565b61270e565b82525050565b5f612739828c6126f7565b602082019150612749828b612717565b602082019150612759828a612717565b6020820191506127698289612717565b6020820191506127798288612717565b6020820191506127898287612717565b6020820191506127998286612717565b6020820191506127a98285612717565b6020820191506127b98284612717565b6020820191508190509a9950505050505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61280782611d0c565b915061281283611d0c565b925082612822576128216127d0565b5b828206905092915050565b5f60ff82169050919050565b6128428161282d565b811461284c575f5ffd5b50565b5f8151905061285d81612839565b92915050565b5f6020828403121561287857612877611c41565b5b5f6128858482850161284f565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6128c582611d0c565b91506128d083611d0c565b92508282039050818111156128e8576128e761288e565b5b92915050565b6128f781612093565b82525050565b5f61291761291261290d84612093565b611f54565b611d0c565b9050919050565b612927816128fd565b82525050565b5f6060820190506129405f83018661264b565b61294d60208301856128ee565b61295a604083018461291e565b949350505050565b5f77ffffffffffffffffffffffffffffffffffffffffffffffff82169050919050565b61298e81612962565b8114612998575f5ffd5b50565b5f815190506129a981612985565b92915050565b5f602082840312156129c4576129c3611c41565b5b5f6129d18482850161299b565b91505092915050565b6129e38161282d565b82525050565b5f6060820190506129fc5f8301866129da565b612a0960208301856128ee565b612a16604083018461291e565b949350505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffff000000000000000082169050919050565b612a5281612a1e565b8114612a5c575f5ffd5b50565b5f81519050612a6d81612a49565b92915050565b5f60208284031215612a8857612a87611c41565b5b5f612a9584828501612a5f565b91505092915050565b612aa781612565565b8114612ab1575f5ffd5b50565b5f81519050612ac281612a9e565b92915050565b5f60208284031215612add57612adc611c41565b5b5f612aea84828501612ab4565b91505092915050565b5f608082019050612b065f8301876129da565b612b1360208301866128ee565b612b20604083018561264b565b612b2d606083018461291e565b95945050505050565b5f612b4082612565565b9150612b4b83612565565b925082820390506bffffffffffffffffffffffff811115612b6f57612b6e61288e565b5b92915050565b5f8160e01b9050919050565b5f612b8b82612b75565b9050919050565b612ba3612b9e82612093565b612b81565b82525050565b5f81519050919050565b5f81905092915050565b5f819050602082019050919050565b612bd581611c49565b82525050565b5f612be68383612bcc565b60208301905092915050565b5f602082019050919050565b5f612c0882612ba9565b612c128185612bb3565b9350612c1d83612bbd565b805f5b83811015612c4d578151612c348882612bdb565b9750612c3f83612bf2565b925050600181019050612c20565b5085935050505092915050565b5f612c658285612b92565b600482019150612c758284612bfe565b91508190509392505050565b5f612c8b82611d0c565b9150612c9683611d0c565b9250828202612ca481611d0c565b91508282048414831517612cbb57612cba61288e565b5b5092915050565b5f612ccc82611d0c565b9150612cd783611d0c565b9250828201905080821115612cef57612cee61288e565b5b92915050565b5f61ffff82169050919050565b5f612d0c82612cf5565b915061ffff8203612d2057612d1f61288e565b5b60018201905091905056fea264697066735822122009fafd6a9cb72c083d065be8b674687b4e0fc68c06baf5234eac5e2e4975cdc864736f6c634300081d0033 - /// ``` - #[rustfmt::skip] - #[allow(clippy::all)] - pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static( - b"`\x80`@R4\x80\x15a\0\x0FW__\xFD[P`\x046\x10a\0`W_5`\xE0\x1C\x80c\x17\x1F\x1D[\x14a\0dW\x80c]\xF4YF\x14a\0\x95W\x80ch0H5\x14a\0\xB3W\x80cm\x14\xA9\x87\x14a\0\xD1W\x80cn\xFBF6\x14a\0\xEFW\x80c\xDF\\\xF7#\x14a\x01 W[__\xFD[a\0~`\x04\x806\x03\x81\x01\x90a\0y\x91\x90a\x1E\x8FV[a\x01>V[`@Qa\0\x8C\x92\x91\x90a\x1F\x0EV[`@Q\x80\x91\x03\x90\xF3[a\0\x9Da\x02\xA1V[`@Qa\0\xAA\x91\x90a\x1F\xAFV[`@Q\x80\x91\x03\x90\xF3[a\0\xBBa\x02\xC5V[`@Qa\0\xC8\x91\x90a\x1F\xE8V[`@Q\x80\x91\x03\x90\xF3[a\0\xD9a\x02\xE9V[`@Qa\0\xE6\x91\x90a !V[`@Q\x80\x91\x03\x90\xF3[a\x01\t`\x04\x806\x03\x81\x01\x90a\x01\x04\x91\x90a$\x9CV[a\x03\rV[`@Qa\x01\x17\x92\x91\x90a&ZV[`@Q\x80\x91\x03\x90\xF3[a\x01(a\x0E\xE9V[`@Qa\x015\x91\x90a&\xA8V[`@Q\x80\x91\x03\x90\xF3[___\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X](3\xE8Hy\xB9p\x91C\xE1\xF5\x93\xF0\0\0\x01\x87\x87_\x01Q\x88` \x01Q\x88_\x01Q_`\x02\x81\x10a\x01\x82Wa\x01\x81a&\xC1V[[` \x02\x01Q\x89_\x01Q`\x01`\x02\x81\x10a\x01\x9EWa\x01\x9Da&\xC1V[[` \x02\x01Q\x8A` \x01Q_`\x02\x81\x10a\x01\xBAWa\x01\xB9a&\xC1V[[` \x02\x01Q\x8B` \x01Q`\x01`\x02\x81\x10a\x01\xD7Wa\x01\xD6a&\xC1V[[` \x02\x01Q\x8B_\x01Q\x8C` \x01Q`@Q` \x01a\x01\xFD\x99\x98\x97\x96\x95\x94\x93\x92\x91\x90a'.V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 _\x1Ca\x02\x1F\x91\x90a'\xFDV[\x90Pa\x02\x8Fa\x02Ia\x02:\x83\x89a\x0F\r\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x86a\x0F\xD8\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[a\x02Qa\x10\xC8V[a\x02\x85a\x02n\x85a\x02`a\x11\x92V[a\x0F\r\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[a\x02w\x8Ca\x11\xB6V[a\x0F\xD8\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x88b\x01\xD4\xC0a\x12\xC1V[\x80\x93P\x81\x94PPPP\x94P\x94\x92PPPV[\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\x81V[\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\x81V[\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\x81V[a\x03\x15a\x1A\xF9V[__\x86\x86\x90P\x03a\x03RW`@Q\x7F\x1F\x04\x05\xA0\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x82`@\x01QQ\x86\x86\x90P\x14\x80\x15a\x03pWP\x82`\xA0\x01QQ\x86\x86\x90P\x14[\x80\x15a\x03\x83WP\x82`\xC0\x01QQ\x86\x86\x90P\x14[\x80\x15a\x03\x96WP\x82`\xE0\x01QQ\x86\x86\x90P\x14[a\x03\xCCW`@Q\x7FCqJ\xFD\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x82_\x01QQ\x83` \x01QQ\x14a\x04\x0EW`@Q\x7F_\x83/A\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[Cc\xFF\xFF\xFF\xFF\x16\x84c\xFF\xFF\xFF\xFF\x16\x10a\x04SW`@Q\x7FK\x87OE\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90Pa\x04sa\x1A\xF9V[\x87\x87\x90Pg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x04\x90Wa\x04\x8Fa\x1C\x90V[[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x04\xBEW\x81` \x01` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90P[P\x81` \x01\x81\x90RP\x87\x87\x90Pg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x04\xE4Wa\x04\xE3a\x1C\x90V[[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x05\x12W\x81` \x01` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90P[P\x81_\x01\x81\x90RPa\x05\"a\x1B\x13V[\x85` \x01QQg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x05AWa\x05@a\x1C\x90V[[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x05oW\x81` \x01` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90P[P\x81_\x01\x81\x90RP\x85` \x01QQg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x05\x96Wa\x05\x95a\x1C\x90V[[`@Q\x90\x80\x82R\x80` \x02` \x01\x82\x01`@R\x80\x15a\x05\xC4W\x81` \x01` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90P[P\x81` \x01\x81\x90RP_a\x06\xA7\x8A\x8A\x80\x80`\x1F\x01` \x80\x91\x04\x02` \x01`@Q\x90\x81\x01`@R\x80\x93\x92\x91\x90\x81\x81R` \x01\x83\x83\x80\x82\x847_\x81\x84\x01R`\x1F\x19`\x1F\x82\x01\x16\x90P\x80\x83\x01\x92PPPPPPP\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\0s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16c\x9A\xA1e=`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x06~W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x06\xA2\x91\x90a(cV[a\x15aV[\x90P__\x90P[\x87` \x01QQ\x81\x10\x15a\t\x1EWa\x06\xE2\x88` \x01Q\x82\x81Q\x81\x10a\x06\xD5Wa\x06\xD4a&\xC1V[[` \x02` \x01\x01Qa\x15\xB8V[\x83` \x01Q\x82\x81Q\x81\x10a\x06\xF9Wa\x06\xF8a&\xC1V[[` \x02` \x01\x01\x81\x81RPP_\x81\x14a\x07\x92W\x82` \x01Q`\x01\x82a\x07\x1E\x91\x90a(\xBBV[\x81Q\x81\x10a\x07/Wa\x07.a&\xC1V[[` \x02` \x01\x01Q_\x1C\x83` \x01Q\x82\x81Q\x81\x10a\x07PWa\x07Oa&\xC1V[[` \x02` \x01\x01Q_\x1C\x11a\x07\x91W`@Q\x7F\xFFq\x94\x14\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[[\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\0s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16c\x04\xECcQ\x84` \x01Q\x83\x81Q\x81\x10a\x07\xE5Wa\x07\xE4a&\xC1V[[` \x02` \x01\x01Q\x8B\x8B_\x01Q\x85\x81Q\x81\x10a\x08\x04Wa\x08\x03a&\xC1V[[` \x02` \x01\x01Q`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a\x08*\x93\x92\x91\x90a)-V[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x08EW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x08i\x91\x90a)\xAFV[w\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x83_\x01Q\x82\x81Q\x81\x10a\x08\x99Wa\x08\x98a&\xC1V[[` \x02` \x01\x01\x81\x81RPPa\t\x0Fa\t\0a\x08\xD3\x84\x86_\x01Q\x85\x81Q\x81\x10a\x08\xC5Wa\x08\xC4a&\xC1V[[` \x02` \x01\x01Q\x16a\x15\xD0V[\x8A` \x01Q\x84\x81Q\x81\x10a\x08\xEAWa\x08\xE9a&\xC1V[[` \x02` \x01\x01Qa\x16\x0B\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x86a\x0F\xD8\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x94P\x80\x80`\x01\x01\x91PPa\x06\xAEV[PPa\t)\x83a\x16\xF0V[\x92P__\x90P[\x89\x89\x90P\x81\x10\x15a\x0E\x1AW\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\0s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16ch\xBC\xCA\xAC\x8B\x8B\x84\x81\x81\x10a\t\x8AWa\t\x89a&\xC1V[[\x90P\x015`\xF8\x1C`\xF8\x1B`\xF8\x1C\x8A\x8A`\xA0\x01Q\x85\x81Q\x81\x10a\t\xAFWa\t\xAEa&\xC1V[[` \x02` \x01\x01Q`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a\t\xD5\x93\x92\x91\x90a)\xE9V[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\t\xF0W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\n\x14\x91\x90a*sV[g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16a\nF\x88`@\x01Q\x83\x81Q\x81\x10a\n9Wa\n8a&\xC1V[[` \x02` \x01\x01Qa\x15\xB8V[g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16\x14a\n\x88W`@Q\x7F\xE11\n\xED\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\n\xB9\x87`@\x01Q\x82\x81Q\x81\x10a\n\xA2Wa\n\xA1a&\xC1V[[` \x02` \x01\x01Q\x85a\x0F\xD8\x90\x91\x90c\xFF\xFF\xFF\xFF\x16V[\x93P\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\0s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16c\xC8)LV\x8B\x8B\x84\x81\x81\x10a\x0B\nWa\x0B\ta&\xC1V[[\x90P\x015`\xF8\x1C`\xF8\x1B`\xF8\x1C\x8A\x8A`\xC0\x01Q\x85\x81Q\x81\x10a\x0B/Wa\x0B.a&\xC1V[[` \x02` \x01\x01Q`@Q\x84c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a\x0BU\x93\x92\x91\x90a)\xE9V[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x0BpW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x0B\x94\x91\x90a*\xC8V[\x83` \x01Q\x82\x81Q\x81\x10a\x0B\xABWa\x0B\xAAa&\xC1V[[` \x02` \x01\x01\x90k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x90\x81k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81RPP\x82` \x01Q\x81\x81Q\x81\x10a\x0B\xECWa\x0B\xEBa&\xC1V[[` \x02` \x01\x01Q\x83_\x01Q\x82\x81Q\x81\x10a\x0C\nWa\x0C\ta&\xC1V[[` \x02` \x01\x01\x90k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x90\x81k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81RPP__\x90P__\x90P[\x88` \x01QQ\x81\x10\x15a\x0E\x0BWa\x0C\x90\x84_\x01Q\x82\x81Q\x81\x10a\x0CcWa\x0Cba&\xC1V[[` \x02` \x01\x01Q\x8D\x8D\x86\x81\x81\x10a\x0C~Wa\x0C}a&\xC1V[[\x90P\x015`\xF8\x1C`\xF8\x1B`\xF8\x1Ca\x17\xA8V[\x15a\r\xFEW\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\0s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16c\xF2\xBE\x94\xAE\x8D\x8D\x86\x81\x81\x10a\x0C\xE4Wa\x0C\xE3a&\xC1V[[\x90P\x015`\xF8\x1C`\xF8\x1B`\xF8\x1C\x8C\x87` \x01Q\x85\x81Q\x81\x10a\r\tWa\r\x08a&\xC1V[[` \x02` \x01\x01Q\x8D`\xE0\x01Q\x88\x81Q\x81\x10a\r(Wa\r'a&\xC1V[[` \x02` \x01\x01Q\x87\x81Q\x81\x10a\rBWa\rAa&\xC1V[[` \x02` \x01\x01Q`@Q\x85c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01a\ri\x94\x93\x92\x91\x90a*\xF3V[` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\r\x84W=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\r\xA8\x91\x90a*\xC8V[\x85_\x01Q\x84\x81Q\x81\x10a\r\xBEWa\r\xBDa&\xC1V[[` \x02` \x01\x01\x81\x81Qa\r\xD2\x91\x90a+6V[\x91P\x90k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x90\x81k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16\x81RPP\x81`\x01\x01\x91P[\x80\x80`\x01\x01\x91PPa\x0C=V[PP\x80\x80`\x01\x01\x91PPa\t0V[P__a\x0E1\x8C\x86\x8A``\x01Q\x8B`\x80\x01Qa\x01>V[\x91P\x91P\x81a\x0ElW`@Q\x7Fg\x98\x8D3\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80a\x0E\xA3W`@Q\x7F\xAB\x1B#k\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PP_\x87\x82` \x01Q`@Q` \x01a\x0E\xBD\x92\x91\x90a,ZV[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x82\x81\x95P\x95PPPPP\x95P\x95\x93PPPPV[\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\x81V[a\x0F\x15a\x1B-V[a\x0F\x1Da\x1BEV[\x83_\x01Q\x81_`\x03\x81\x10a\x0F4Wa\x0F3a&\xC1V[[` \x02\x01\x81\x81RPP\x83` \x01Q\x81`\x01`\x03\x81\x10a\x0FVWa\x0FUa&\xC1V[[` \x02\x01\x81\x81RPP\x82\x81`\x02`\x03\x81\x10a\x0FtWa\x0Fsa&\xC1V[[` \x02\x01\x81\x81RPP_`@\x83``\x84`\x07a\x07\xD0Z\x03\xFA\x90P\x80_\x81\x03a\x0F\x98W\xFE[P\x80a\x0F\xD0W`@Q\x7FF3\xBE2\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PP\x92\x91PPV[a\x0F\xE0a\x1B-V[a\x0F\xE8a\x1BgV[\x83_\x01Q\x81_`\x04\x81\x10a\x0F\xFFWa\x0F\xFEa&\xC1V[[` \x02\x01\x81\x81RPP\x83` \x01Q\x81`\x01`\x04\x81\x10a\x10!Wa\x10 a&\xC1V[[` \x02\x01\x81\x81RPP\x82_\x01Q\x81`\x02`\x04\x81\x10a\x10BWa\x10Aa&\xC1V[[` \x02\x01\x81\x81RPP\x82` \x01Q\x81`\x03`\x04\x81\x10a\x10dWa\x10ca&\xC1V[[` \x02\x01\x81\x81RPP_`@\x83`\x80\x84`\x06a\x07\xD0Z\x03\xFA\x90P\x80_\x81\x03a\x10\x88W\xFE[P\x80a\x10\xC0W`@Q\x7F\xD4\xB6\x8F\xD7\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PP\x92\x91PPV[a\x10\xD0a\x1B\x89V[`@Q\x80`@\x01`@R\x80`@Q\x80`@\x01`@R\x80\x7F\x19\x8E\x93\x93\x92\rH:r`\xBF\xB71\xFB]%\xF1\xAAI35\xA9\xE7\x12\x97\xE4\x85\xB7\xAE\xF3\x12\xC2\x81R` \x01\x7F\x18\0\xDE\xEF\x12\x1F\x1EvBj\0f^\\DygC\"\xD4\xF7^\xDA\xDDF\xDE\xBD\\\xD9\x92\xF6\xED\x81RP\x81R` \x01`@Q\x80`@\x01`@R\x80\x7F']\xC4\xA2\x88\xD1\xAF\xB3\xCB\xB1\xAC\t\x18u$\xC7\xDB69]\xF7\xBE;\x99\xE6s\xB1:\x07Ze\xEC\x81R` \x01\x7F\x1D\x9B\xEF\xCD\x05\xA52>m\xA4\xD45\xF3\xB6\x17\xCD\xB3\xAF\x83(\\-\xF7\x11\xEF9\xC0\x15q\x82\x7F\x9D\x81RP\x81RP\x90P\x90V[a\x11\x9Aa\x1B-V[`@Q\x80`@\x01`@R\x80`\x01\x81R` \x01`\x02\x81RP\x90P\x90V[a\x11\xBEa\x1B-V[__\x90P__\x90P_\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x85_\x1Ca\x11\xF5\x91\x90a'\xFDV[\x90P[`\x01\x15a\x12\xA1Wa\x12\x08\x81a\x17\xBEV[\x80\x93P\x81\x94PPP\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x80a\x12?Wa\x12>a'\xD0V[[\x82\x83\t\x83\x03a\x12gW`@Q\x80`@\x01`@R\x80\x82\x81R` \x01\x83\x81RP\x93PPPPa\x12\xBCV[\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x80a\x12\x96Wa\x12\x95a'\xD0V[[`\x01\x82\x08\x90Pa\x11\xF8V[`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x93PPPP[\x91\x90PV[___`@Q\x80`@\x01`@R\x80\x89\x81R` \x01\x87\x81RP\x90P_`@Q\x80`@\x01`@R\x80\x89\x81R` \x01\x87\x81RP\x90Pa\x12\xFBa\x1B\xAFV[__\x90P[`\x02\x81\x10\x15a\x15\x19W_`\x06\x82a\x13\x17\x91\x90a,\x81V[\x90P\x84\x82`\x02\x81\x10a\x13,Wa\x13+a&\xC1V[[` \x02\x01Q_\x01Q\x83_\x83a\x13A\x91\x90a,\xC2V[`\x0C\x81\x10a\x13RWa\x13Qa&\xC1V[[` \x02\x01\x81\x81RPP\x84\x82`\x02\x81\x10a\x13nWa\x13ma&\xC1V[[` \x02\x01Q` \x01Q\x83`\x01\x83a\x13\x85\x91\x90a,\xC2V[`\x0C\x81\x10a\x13\x96Wa\x13\x95a&\xC1V[[` \x02\x01\x81\x81RPP\x83\x82`\x02\x81\x10a\x13\xB2Wa\x13\xB1a&\xC1V[[` \x02\x01Q_\x01Q_`\x02\x81\x10a\x13\xCCWa\x13\xCBa&\xC1V[[` \x02\x01Q\x83`\x02\x83a\x13\xDF\x91\x90a,\xC2V[`\x0C\x81\x10a\x13\xF0Wa\x13\xEFa&\xC1V[[` \x02\x01\x81\x81RPP\x83\x82`\x02\x81\x10a\x14\x0CWa\x14\x0Ba&\xC1V[[` \x02\x01Q_\x01Q`\x01`\x02\x81\x10a\x14'Wa\x14&a&\xC1V[[` \x02\x01Q\x83`\x03\x83a\x14:\x91\x90a,\xC2V[`\x0C\x81\x10a\x14KWa\x14Ja&\xC1V[[` \x02\x01\x81\x81RPP\x83\x82`\x02\x81\x10a\x14gWa\x14fa&\xC1V[[` \x02\x01Q` \x01Q_`\x02\x81\x10a\x14\x82Wa\x14\x81a&\xC1V[[` \x02\x01Q\x83`\x04\x83a\x14\x95\x91\x90a,\xC2V[`\x0C\x81\x10a\x14\xA6Wa\x14\xA5a&\xC1V[[` \x02\x01\x81\x81RPP\x83\x82`\x02\x81\x10a\x14\xC2Wa\x14\xC1a&\xC1V[[` \x02\x01Q` \x01Q`\x01`\x02\x81\x10a\x14\xDEWa\x14\xDDa&\xC1V[[` \x02\x01Q\x83`\x05\x83a\x14\xF1\x91\x90a,\xC2V[`\x0C\x81\x10a\x15\x02Wa\x15\x01a&\xC1V[[` \x02\x01\x81\x81RPPP\x80\x80`\x01\x01\x91PPa\x13\0V[Pa\x15\"a\x1B\xD2V[_` \x82` `\x0C\x02\x85`\x08\x8C\xFA\x90P\x80_\x83_`\x01\x81\x10a\x15GWa\x15Fa&\xC1V[[` \x02\x01Q\x14\x15\x96P\x96PPPPPP\x95P\x95\x93PPPPV[__a\x15l\x84a\x18\xB3V[\x90P\x80\x83`\xFF\x16`\x01\x90\x1B\x11a\x15\xAEW`@Q\x7F\xCA\x95s3\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80\x91PP\x92\x91PPV[_\x81Q_R\x81` \x01Q` R`@_ \x90P\x91\x90PV[___\x90P[_\x83\x11\x15a\x16\x02W`\x01\x83a\x15\xEB\x91\x90a(\xBBV[\x83\x16\x92P\x80\x80a\x15\xFA\x90a-\x02V[\x91PPa\x15\xD6V[\x80\x91PP\x91\x90PV[a\x16\x13a\x1B-V[a\x02\0\x82a\xFF\xFF\x16\x10a\x16RW`@Q\x7F\xFF\x89\xD4\xFA\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01\x82a\xFF\xFF\x16\x03a\x16fW\x82\x90Pa\x16\xEAV[_`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90P_\x84\x90P_`\x01\x90P__\x90P[\x81a\xFF\xFF\x16\x86a\xFF\xFF\x16\x10a\x16\xE2W`\x01\x80\x82`\xFF\x16\x88a\xFF\xFF\x16\x90\x1C\x16a\xFF\xFF\x16\x03a\x16\xC0Wa\x16\xBD\x84\x84a\x0F\xD8V[\x93P[a\x16\xCA\x83\x84a\x0F\xD8V[\x92P`\x01\x82a\xFF\xFF\x16\x90\x1B\x91P\x80`\x01\x01\x90Pa\x16\x8CV[\x83\x94PPPPP[\x92\x91PPV[a\x16\xF8a\x1B-V[_\x82_\x01Q\x14\x80\x15a\x17\rWP_\x82` \x01Q\x14[\x15a\x17.W`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90Pa\x17\xA3V[`@Q\x80`@\x01`@R\x80\x83_\x01Q\x81R` \x01\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x84` \x01Qa\x17r\x91\x90a'\xFDV[\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDGa\x17\x9D\x91\x90a(\xBBV[\x81RP\x90P[\x91\x90PV[_`\x01\x82`\xFF\x16\x84\x90\x1C\x16`\x01\x14\x90P\x92\x91PPV[___\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x80a\x17\xF0Wa\x17\xEFa'\xD0V[[`\x03\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x80a\x18!Wa\x18 a'\xD0V[[\x86\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG\x80a\x18QWa\x18Pa'\xD0V[[\x88\x89\t\t\x08\x90P_a\x18\xA4\x82\x7F\x0C\x19\x13\x9C\xB8Lh\nn\x14\x11m\xA0`V\x17e\xE0Z\xA4Z\x1Cr\xA3O\x08#\x05\xB6\x1F?R\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDGa\x19\xBBV[\x90P\x81\x81\x93P\x93PPP\x91P\x91V[_a\x01\0\x82Q\x11\x15a\x18\xF1W`@Q\x7F\xFBJ\x9C\x8E\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_\x82Q\x03a\x19\x01W_\x90Pa\x19\xB6V[__\x83_\x81Q\x81\x10a\x19\x16Wa\x19\x15a&\xC1V[[` \x01\x01Q`\xF8\x1C`\xF8\x1B`\xF8\x1C`\xFF\x16`\x01\x90\x1B\x91P_`\x01\x90P[\x84Q\x81\x10\x15a\x19\xAFW\x84\x81\x81Q\x81\x10a\x19OWa\x19Na&\xC1V[[` \x01\x01Q`\xF8\x1C`\xF8\x1B`\xF8\x1C`\xFF\x16`\x01\x90\x1B\x91P\x82\x82\x11a\x19\x9FW`@Q\x7F\x80\xC8\x83H\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x81\x83\x17\x92P\x80`\x01\x01\x90Pa\x193V[P\x81\x92PPP[\x91\x90PV[__a\x19\xC5a\x1B\xD2V[a\x19\xCDa\x1B\xF4V[` \x81_`\x06\x81\x10a\x19\xE2Wa\x19\xE1a&\xC1V[[` \x02\x01\x81\x81RPP` \x81`\x01`\x06\x81\x10a\x1A\x01Wa\x1A\0a&\xC1V[[` \x02\x01\x81\x81RPP` \x81`\x02`\x06\x81\x10a\x1A Wa\x1A\x1Fa&\xC1V[[` \x02\x01\x81\x81RPP\x86\x81`\x03`\x06\x81\x10a\x1A>Wa\x1A=a&\xC1V[[` \x02\x01\x81\x81RPP\x85\x81`\x04`\x06\x81\x10a\x1A\\Wa\x1A[a&\xC1V[[` \x02\x01\x81\x81RPP\x84\x81`\x05`\x06\x81\x10a\x1AzWa\x1Aya&\xC1V[[` \x02\x01\x81\x81RPP` \x82`\xC0\x83`\x05a\x07\xD0Z\x03\xFA\x92P\x82_\x81\x03a\x1A\x9DW\xFE[P\x82a\x1A\xD5W`@Q\x7F\xD5\x1E\xDA\xE3\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\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x81_`\x01\x81\x10a\x1A\xE8Wa\x1A\xE7a&\xC1V[[` \x02\x01Q\x93PPPP\x93\x92PPPV[`@Q\x80`@\x01`@R\x80``\x81R` \x01``\x81RP\x90V[`@Q\x80`@\x01`@R\x80``\x81R` \x01``\x81RP\x90V[`@Q\x80`@\x01`@R\x80_\x81R` \x01_\x81RP\x90V[`@Q\x80``\x01`@R\x80`\x03\x90` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90PP\x90V[`@Q\x80`\x80\x01`@R\x80`\x04\x90` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90PP\x90V[`@Q\x80`@\x01`@R\x80a\x1B\x9Ca\x1C\x16V[\x81R` \x01a\x1B\xA9a\x1C\x16V[\x81RP\x90V[`@Q\x80a\x01\x80\x01`@R\x80`\x0C\x90` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90PP\x90V[`@Q\x80` \x01`@R\x80`\x01\x90` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90PP\x90V[`@Q\x80`\xC0\x01`@R\x80`\x06\x90` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90PP\x90V[`@Q\x80`@\x01`@R\x80`\x02\x90` \x82\x02\x806\x837\x80\x82\x01\x91PP\x90PP\x90V[_`@Q\x90P\x90V[__\xFD[__\xFD[_\x81\x90P\x91\x90PV[a\x1C[\x81a\x1CIV[\x81\x14a\x1CeW__\xFD[PV[_\x815\x90Pa\x1Cv\x81a\x1CRV[\x92\x91PPV[__\xFD[_`\x1F\x19`\x1F\x83\x01\x16\x90P\x91\x90PV[\x7FNH{q\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_R`A`\x04R`$_\xFD[a\x1C\xC6\x82a\x1C\x80V[\x81\x01\x81\x81\x10g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x17\x15a\x1C\xE5Wa\x1C\xE4a\x1C\x90V[[\x80`@RPPPV[_a\x1C\xF7a\x1C8V[\x90Pa\x1D\x03\x82\x82a\x1C\xBDV[\x91\x90PV[__\xFD[_\x81\x90P\x91\x90PV[a\x1D\x1E\x81a\x1D\x0CV[\x81\x14a\x1D(W__\xFD[PV[_\x815\x90Pa\x1D9\x81a\x1D\x15V[\x92\x91PPV[_`@\x82\x84\x03\x12\x15a\x1DTWa\x1DSa\x1C|V[[a\x1D^`@a\x1C\xEEV[\x90P_a\x1Dm\x84\x82\x85\x01a\x1D+V[_\x83\x01RP` a\x1D\x80\x84\x82\x85\x01a\x1D+V[` \x83\x01RP\x92\x91PPV[__\xFD[_g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x15a\x1D\xAAWa\x1D\xA9a\x1C\x90V[[` \x82\x02\x90P\x91\x90PV[__\xFD[_a\x1D\xCBa\x1D\xC6\x84a\x1D\x90V[a\x1C\xEEV[\x90P\x80` \x84\x02\x83\x01\x85\x81\x11\x15a\x1D\xE5Wa\x1D\xE4a\x1D\xB5V[[\x83[\x81\x81\x10\x15a\x1E\x0EW\x80a\x1D\xFA\x88\x82a\x1D+V[\x84R` \x84\x01\x93PP` \x81\x01\x90Pa\x1D\xE7V[PPP\x93\x92PPPV[_\x82`\x1F\x83\x01\x12a\x1E,Wa\x1E+a\x1D\x8CV[[`\x02a\x1E9\x84\x82\x85a\x1D\xB9V[\x91PP\x92\x91PPV[_`\x80\x82\x84\x03\x12\x15a\x1EWWa\x1EVa\x1C|V[[a\x1Ea`@a\x1C\xEEV[\x90P_a\x1Ep\x84\x82\x85\x01a\x1E\x18V[_\x83\x01RP`@a\x1E\x83\x84\x82\x85\x01a\x1E\x18V[` \x83\x01RP\x92\x91PPV[____a\x01 \x85\x87\x03\x12\x15a\x1E\xA8Wa\x1E\xA7a\x1CAV[[_a\x1E\xB5\x87\x82\x88\x01a\x1ChV[\x94PP` a\x1E\xC6\x87\x82\x88\x01a\x1D?V[\x93PP``a\x1E\xD7\x87\x82\x88\x01a\x1EBV[\x92PP`\xE0a\x1E\xE8\x87\x82\x88\x01a\x1D?V[\x91PP\x92\x95\x91\x94P\x92PV[_\x81\x15\x15\x90P\x91\x90PV[a\x1F\x08\x81a\x1E\xF4V[\x82RPPV[_`@\x82\x01\x90Pa\x1F!_\x83\x01\x85a\x1E\xFFV[a\x1F.` \x83\x01\x84a\x1E\xFFV[\x93\x92PPPV[_s\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x16\x90P\x91\x90PV[_\x81\x90P\x91\x90PV[_a\x1Fwa\x1Fra\x1Fm\x84a\x1F5V[a\x1FTV[a\x1F5V[\x90P\x91\x90PV[_a\x1F\x88\x82a\x1F]V[\x90P\x91\x90PV[_a\x1F\x99\x82a\x1F~V[\x90P\x91\x90PV[a\x1F\xA9\x81a\x1F\x8FV[\x82RPPV[_` \x82\x01\x90Pa\x1F\xC2_\x83\x01\x84a\x1F\xA0V[\x92\x91PPV[_a\x1F\xD2\x82a\x1F~V[\x90P\x91\x90PV[a\x1F\xE2\x81a\x1F\xC8V[\x82RPPV[_` \x82\x01\x90Pa\x1F\xFB_\x83\x01\x84a\x1F\xD9V[\x92\x91PPV[_a \x0B\x82a\x1F~V[\x90P\x91\x90PV[a \x1B\x81a \x01V[\x82RPPV[_` \x82\x01\x90Pa 4_\x83\x01\x84a \x12V[\x92\x91PPV[__\xFD[__\x83`\x1F\x84\x01\x12a SWa Ra\x1D\x8CV[[\x825\x90Pg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a pWa oa :V[[` \x83\x01\x91P\x83`\x01\x82\x02\x83\x01\x11\x15a \x8CWa \x8Ba\x1D\xB5V[[\x92P\x92\x90PV[_c\xFF\xFF\xFF\xFF\x82\x16\x90P\x91\x90PV[a \xAB\x81a \x93V[\x81\x14a \xB5W__\xFD[PV[_\x815\x90Pa \xC6\x81a \xA2V[\x92\x91PPV[_g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x15a \xE6Wa \xE5a\x1C\x90V[[` \x82\x02\x90P` \x81\x01\x90P\x91\x90PV[_a!\ta!\x04\x84a \xCCV[a\x1C\xEEV[\x90P\x80\x83\x82R` \x82\x01\x90P` \x84\x02\x83\x01\x85\x81\x11\x15a!,Wa!+a\x1D\xB5V[[\x83[\x81\x81\x10\x15a!UW\x80a!A\x88\x82a \xB8V[\x84R` \x84\x01\x93PP` \x81\x01\x90Pa!.V[PPP\x93\x92PPPV[_\x82`\x1F\x83\x01\x12a!sWa!ra\x1D\x8CV[[\x815a!\x83\x84\x82` \x86\x01a \xF7V[\x91PP\x92\x91PPV[_g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x15a!\xA6Wa!\xA5a\x1C\x90V[[` \x82\x02\x90P` \x81\x01\x90P\x91\x90PV[_a!\xC9a!\xC4\x84a!\x8CV[a\x1C\xEEV[\x90P\x80\x83\x82R` \x82\x01\x90P`@\x84\x02\x83\x01\x85\x81\x11\x15a!\xECWa!\xEBa\x1D\xB5V[[\x83[\x81\x81\x10\x15a\"\x15W\x80a\"\x01\x88\x82a\x1D?V[\x84R` \x84\x01\x93PP`@\x81\x01\x90Pa!\xEEV[PPP\x93\x92PPPV[_\x82`\x1F\x83\x01\x12a\"3Wa\"2a\x1D\x8CV[[\x815a\"C\x84\x82` \x86\x01a!\xB7V[\x91PP\x92\x91PPV[_g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x11\x15a\"fWa\"ea\x1C\x90V[[` \x82\x02\x90P` \x81\x01\x90P\x91\x90PV[_a\"\x89a\"\x84\x84a\"LV[a\x1C\xEEV[\x90P\x80\x83\x82R` \x82\x01\x90P` \x84\x02\x83\x01\x85\x81\x11\x15a\"\xACWa\"\xABa\x1D\xB5V[[\x83[\x81\x81\x10\x15a\"\xF3W\x805g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\"\xD1Wa\"\xD0a\x1D\x8CV[[\x80\x86\x01a\"\xDE\x89\x82a!_V[\x85R` \x85\x01\x94PPP` \x81\x01\x90Pa\"\xAEV[PPP\x93\x92PPPV[_\x82`\x1F\x83\x01\x12a#\x11Wa#\x10a\x1D\x8CV[[\x815a#!\x84\x82` \x86\x01a\"wV[\x91PP\x92\x91PPV[_a\x01\x80\x82\x84\x03\x12\x15a#@Wa#?a\x1C|V[[a#Ka\x01\0a\x1C\xEEV[\x90P_\x82\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a#jWa#ia\x1D\x08V[[a#v\x84\x82\x85\x01a!_V[_\x83\x01RP` \x82\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a#\x99Wa#\x98a\x1D\x08V[[a#\xA5\x84\x82\x85\x01a\"\x1FV[` \x83\x01RP`@\x82\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a#\xC9Wa#\xC8a\x1D\x08V[[a#\xD5\x84\x82\x85\x01a\"\x1FV[`@\x83\x01RP``a#\xE9\x84\x82\x85\x01a\x1EBV[``\x83\x01RP`\xE0a#\xFD\x84\x82\x85\x01a\x1D?V[`\x80\x83\x01RPa\x01 \x82\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a$\"Wa$!a\x1D\x08V[[a$.\x84\x82\x85\x01a!_V[`\xA0\x83\x01RPa\x01@\x82\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a$SWa$Ra\x1D\x08V[[a$_\x84\x82\x85\x01a!_V[`\xC0\x83\x01RPa\x01`\x82\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a$\x84Wa$\x83a\x1D\x08V[[a$\x90\x84\x82\x85\x01a\"\xFDV[`\xE0\x83\x01RP\x92\x91PPV[_____`\x80\x86\x88\x03\x12\x15a$\xB5Wa$\xB4a\x1CAV[[_a$\xC2\x88\x82\x89\x01a\x1ChV[\x95PP` \x86\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a$\xE3Wa$\xE2a\x1CEV[[a$\xEF\x88\x82\x89\x01a >V[\x94P\x94PP`@a%\x02\x88\x82\x89\x01a \xB8V[\x92PP``\x86\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a%#Wa%\"a\x1CEV[[a%/\x88\x82\x89\x01a#*V[\x91PP\x92\x95P\x92\x95\x90\x93PV[_\x81Q\x90P\x91\x90PV[_\x82\x82R` \x82\x01\x90P\x92\x91PPV[_\x81\x90P` \x82\x01\x90P\x91\x90PV[_k\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x16\x90P\x91\x90PV[a%\x85\x81a%eV[\x82RPPV[_a%\x96\x83\x83a%|V[` \x83\x01\x90P\x92\x91PPV[_` \x82\x01\x90P\x91\x90PV[_a%\xB8\x82a%\x82\x82a%\xAEV[\x91PP\x80\x91PP\x92\x91PPV[a&T\x81a\x1CIV[\x82RPPV[_`@\x82\x01\x90P\x81\x81\x03_\x83\x01Ra&r\x81\x85a&\nV[\x90Pa&\x81` \x83\x01\x84a&KV[\x93\x92PPPV[_a&\x92\x82a\x1F~V[\x90P\x91\x90PV[a&\xA2\x81a&\x88V[\x82RPPV[_` \x82\x01\x90Pa&\xBB_\x83\x01\x84a&\x99V[\x92\x91PPV[\x7FNH{q\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_R`2`\x04R`$_\xFD[_\x81\x90P\x91\x90PV[a'\x08a'\x03\x82a\x1CIV[a&\xEEV[\x82RPPV[_\x81\x90P\x91\x90PV[a'(a'#\x82a\x1D\x0CV[a'\x0EV[\x82RPPV[_a'9\x82\x8Ca&\xF7V[` \x82\x01\x91Pa'I\x82\x8Ba'\x17V[` \x82\x01\x91Pa'Y\x82\x8Aa'\x17V[` \x82\x01\x91Pa'i\x82\x89a'\x17V[` \x82\x01\x91Pa'y\x82\x88a'\x17V[` \x82\x01\x91Pa'\x89\x82\x87a'\x17V[` \x82\x01\x91Pa'\x99\x82\x86a'\x17V[` \x82\x01\x91Pa'\xA9\x82\x85a'\x17V[` \x82\x01\x91Pa'\xB9\x82\x84a'\x17V[` \x82\x01\x91P\x81\x90P\x9A\x99PPPPPPPPPPV[\x7FNH{q\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_R`\x12`\x04R`$_\xFD[_a(\x07\x82a\x1D\x0CV[\x91Pa(\x12\x83a\x1D\x0CV[\x92P\x82a(\"Wa(!a'\xD0V[[\x82\x82\x06\x90P\x92\x91PPV[_`\xFF\x82\x16\x90P\x91\x90PV[a(B\x81a(-V[\x81\x14a(LW__\xFD[PV[_\x81Q\x90Pa(]\x81a(9V[\x92\x91PPV[_` \x82\x84\x03\x12\x15a(xWa(wa\x1CAV[[_a(\x85\x84\x82\x85\x01a(OV[\x91PP\x92\x91PPV[\x7FNH{q\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_R`\x11`\x04R`$_\xFD[_a(\xC5\x82a\x1D\x0CV[\x91Pa(\xD0\x83a\x1D\x0CV[\x92P\x82\x82\x03\x90P\x81\x81\x11\x15a(\xE8Wa(\xE7a(\x8EV[[\x92\x91PPV[a(\xF7\x81a \x93V[\x82RPPV[_a)\x17a)\x12a)\r\x84a \x93V[a\x1FTV[a\x1D\x0CV[\x90P\x91\x90PV[a)'\x81a(\xFDV[\x82RPPV[_``\x82\x01\x90Pa)@_\x83\x01\x86a&KV[a)M` \x83\x01\x85a(\xEEV[a)Z`@\x83\x01\x84a)\x1EV[\x94\x93PPPPV[_w\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x82\x16\x90P\x91\x90PV[a)\x8E\x81a)bV[\x81\x14a)\x98W__\xFD[PV[_\x81Q\x90Pa)\xA9\x81a)\x85V[\x92\x91PPV[_` \x82\x84\x03\x12\x15a)\xC4Wa)\xC3a\x1CAV[[_a)\xD1\x84\x82\x85\x01a)\x9BV[\x91PP\x92\x91PPV[a)\xE3\x81a(-V[\x82RPPV[_``\x82\x01\x90Pa)\xFC_\x83\x01\x86a)\xDAV[a*\t` \x83\x01\x85a(\xEEV[a*\x16`@\x83\x01\x84a)\x1EV[\x94\x93PPPPV[_\x7F\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\0\0\0\0\0\0\0\0\x82\x16\x90P\x91\x90PV[a*R\x81a*\x1EV[\x81\x14a*\\W__\xFD[PV[_\x81Q\x90Pa*m\x81a*IV[\x92\x91PPV[_` \x82\x84\x03\x12\x15a*\x88Wa*\x87a\x1CAV[[_a*\x95\x84\x82\x85\x01a*_V[\x91PP\x92\x91PPV[a*\xA7\x81a%eV[\x81\x14a*\xB1W__\xFD[PV[_\x81Q\x90Pa*\xC2\x81a*\x9EV[\x92\x91PPV[_` \x82\x84\x03\x12\x15a*\xDDWa*\xDCa\x1CAV[[_a*\xEA\x84\x82\x85\x01a*\xB4V[\x91PP\x92\x91PPV[_`\x80\x82\x01\x90Pa+\x06_\x83\x01\x87a)\xDAV[a+\x13` \x83\x01\x86a(\xEEV[a+ `@\x83\x01\x85a&KV[a+-``\x83\x01\x84a)\x1EV[\x95\x94PPPPPV[_a+@\x82a%eV[\x91Pa+K\x83a%eV[\x92P\x82\x82\x03\x90Pk\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a+oWa+na(\x8EV[[\x92\x91PPV[_\x81`\xE0\x1B\x90P\x91\x90PV[_a+\x8B\x82a+uV[\x90P\x91\x90PV[a+\xA3a+\x9E\x82a \x93V[a+\x81V[\x82RPPV[_\x81Q\x90P\x91\x90PV[_\x81\x90P\x92\x91PPV[_\x81\x90P` \x82\x01\x90P\x91\x90PV[a+\xD5\x81a\x1CIV[\x82RPPV[_a+\xE6\x83\x83a+\xCCV[` \x83\x01\x90P\x92\x91PPV[_` \x82\x01\x90P\x91\x90PV[_a,\x08\x82a+\xA9V[a,\x12\x81\x85a+\xB3V[\x93Pa,\x1D\x83a+\xBDV[\x80_[\x83\x81\x10\x15a,MW\x81Qa,4\x88\x82a+\xDBV[\x97Pa,?\x83a+\xF2V[\x92PP`\x01\x81\x01\x90Pa, V[P\x85\x93PPPP\x92\x91PPV[_a,e\x82\x85a+\x92V[`\x04\x82\x01\x91Pa,u\x82\x84a+\xFEV[\x91P\x81\x90P\x93\x92PPPV[_a,\x8B\x82a\x1D\x0CV[\x91Pa,\x96\x83a\x1D\x0CV[\x92P\x82\x82\x02a,\xA4\x81a\x1D\x0CV[\x91P\x82\x82\x04\x84\x14\x83\x15\x17a,\xBBWa,\xBAa(\x8EV[[P\x92\x91PPV[_a,\xCC\x82a\x1D\x0CV[\x91Pa,\xD7\x83a\x1D\x0CV[\x92P\x82\x82\x01\x90P\x80\x82\x11\x15a,\xEFWa,\xEEa(\x8EV[[\x92\x91PPV[_a\xFF\xFF\x82\x16\x90P\x91\x90PV[_a-\x0C\x82a,\xF5V[\x91Pa\xFF\xFF\x82\x03a- Wa-\x1Fa(\x8EV[[`\x01\x82\x01\x90P\x91\x90PV\xFE\xA2dipfsX\"\x12 \t\xFA\xFDj\x9C\xB7,\x08=\x06[\xE8\xB6th{N\x0F\xC6\x8C\x06\xBA\xF5#N\xAC^.Iu\xCD\xC8dsolcC\0\x08\x1D\x003", - ); - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BitmapValueTooLarge()` and selector `0xca957333`. - ```solidity - error BitmapValueTooLarge(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BitmapValueTooLarge {} - #[allow( - non_camel_case_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: BitmapValueTooLarge) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BitmapValueTooLarge { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BitmapValueTooLarge { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BitmapValueTooLarge()"; - const SELECTOR: [u8; 4] = [202u8, 149u8, 115u8, 51u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BytesArrayLengthTooLong()` and selector `0xfb4a9c8e`. - ```solidity - error BytesArrayLengthTooLong(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BytesArrayLengthTooLong {} - #[allow( - non_camel_case_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: BytesArrayLengthTooLong) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BytesArrayLengthTooLong { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BytesArrayLengthTooLong { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BytesArrayLengthTooLong()"; - const SELECTOR: [u8; 4] = [251u8, 74u8, 156u8, 142u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BytesArrayNotOrdered()` and selector `0x80c88348`. - ```solidity - error BytesArrayNotOrdered(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BytesArrayNotOrdered {} - #[allow( - non_camel_case_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: BytesArrayNotOrdered) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BytesArrayNotOrdered { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BytesArrayNotOrdered { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BytesArrayNotOrdered()"; - const SELECTOR: [u8; 4] = [128u8, 200u8, 131u8, 72u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ECAddFailed()` and selector `0xd4b68fd7`. - ```solidity - error ECAddFailed(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ECAddFailed {} - #[allow( - non_camel_case_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: ECAddFailed) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ECAddFailed { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ECAddFailed { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ECAddFailed()"; - const SELECTOR: [u8; 4] = [212u8, 182u8, 143u8, 215u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ECMulFailed()` and selector `0x4633be32`. - ```solidity - error ECMulFailed(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ECMulFailed {} - #[allow( - non_camel_case_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: ECMulFailed) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ECMulFailed { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ECMulFailed { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ECMulFailed()"; - const SELECTOR: [u8; 4] = [70u8, 51u8, 190u8, 50u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ExpModFailed()` and selector `0xd51edae3`. - ```solidity - error ExpModFailed(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ExpModFailed {} - #[allow( - non_camel_case_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: ExpModFailed) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ExpModFailed { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ExpModFailed { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ExpModFailed()"; - const SELECTOR: [u8; 4] = [213u8, 30u8, 218u8, 227u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InputArrayLengthMismatch()` and selector `0x43714afd`. - ```solidity - error InputArrayLengthMismatch(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InputArrayLengthMismatch {} - #[allow( - non_camel_case_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: InputArrayLengthMismatch) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InputArrayLengthMismatch { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InputArrayLengthMismatch { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InputArrayLengthMismatch()"; - const SELECTOR: [u8; 4] = [67u8, 113u8, 74u8, 253u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InputEmptyQuorumNumbers()` and selector `0x1f0405a0`. - ```solidity - error InputEmptyQuorumNumbers(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InputEmptyQuorumNumbers {} - #[allow( - non_camel_case_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: InputEmptyQuorumNumbers) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InputEmptyQuorumNumbers { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InputEmptyQuorumNumbers { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InputEmptyQuorumNumbers()"; - const SELECTOR: [u8; 4] = [31u8, 4u8, 5u8, 160u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InputNonSignerLengthMismatch()` and selector `0x5f832f41`. - ```solidity - error InputNonSignerLengthMismatch(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InputNonSignerLengthMismatch {} - #[allow( - non_camel_case_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: InputNonSignerLengthMismatch) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InputNonSignerLengthMismatch { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InputNonSignerLengthMismatch { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InputNonSignerLengthMismatch()"; - const SELECTOR: [u8; 4] = [95u8, 131u8, 47u8, 65u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InvalidBLSPairingKey()` and selector `0x67988d33`. - ```solidity - error InvalidBLSPairingKey(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidBLSPairingKey {} - #[allow( - non_camel_case_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: InvalidBLSPairingKey) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidBLSPairingKey { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidBLSPairingKey { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidBLSPairingKey()"; - const SELECTOR: [u8; 4] = [103u8, 152u8, 141u8, 51u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InvalidBLSSignature()` and selector `0xab1b236b`. - ```solidity - error InvalidBLSSignature(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidBLSSignature {} - #[allow( - non_camel_case_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: InvalidBLSSignature) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidBLSSignature { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidBLSSignature { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidBLSSignature()"; - const SELECTOR: [u8; 4] = [171u8, 27u8, 35u8, 107u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InvalidQuorumApkHash()` and selector `0xe1310aed`. - ```solidity - error InvalidQuorumApkHash(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidQuorumApkHash {} - #[allow( - non_camel_case_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: InvalidQuorumApkHash) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidQuorumApkHash { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidQuorumApkHash { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidQuorumApkHash()"; - const SELECTOR: [u8; 4] = [225u8, 49u8, 10u8, 237u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InvalidReferenceBlocknumber()` and selector `0x4b874f45`. - ```solidity - error InvalidReferenceBlocknumber(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidReferenceBlocknumber {} - #[allow( - non_camel_case_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: InvalidReferenceBlocknumber) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidReferenceBlocknumber { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidReferenceBlocknumber { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidReferenceBlocknumber()"; - const SELECTOR: [u8; 4] = [75u8, 135u8, 79u8, 69u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `NonSignerPubkeysNotSorted()` and selector `0xff719414`. - ```solidity - error NonSignerPubkeysNotSorted(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct NonSignerPubkeysNotSorted {} - #[allow( - non_camel_case_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: NonSignerPubkeysNotSorted) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for NonSignerPubkeysNotSorted { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for NonSignerPubkeysNotSorted { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "NonSignerPubkeysNotSorted()"; - const SELECTOR: [u8; 4] = [255u8, 113u8, 148u8, 20u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `OnlyRegistryCoordinatorOwner()` and selector `0xe0e1e762`. - ```solidity - error OnlyRegistryCoordinatorOwner(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OnlyRegistryCoordinatorOwner {} - #[allow( - non_camel_case_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: OnlyRegistryCoordinatorOwner) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OnlyRegistryCoordinatorOwner { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for OnlyRegistryCoordinatorOwner { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "OnlyRegistryCoordinatorOwner()"; - const SELECTOR: [u8; 4] = [224u8, 225u8, 231u8, 98u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ScalarTooLarge()` and selector `0xff89d4fa`. - ```solidity - error ScalarTooLarge(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ScalarTooLarge {} - #[allow( - non_camel_case_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: ScalarTooLarge) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ScalarTooLarge { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ScalarTooLarge { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ScalarTooLarge()"; - const SELECTOR: [u8; 4] = [255u8, 137u8, 212u8, 250u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Constructor`. - ```solidity - constructor(address _registryCoordinator); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct constructorCall { - #[allow(missing_docs)] - pub _registryCoordinator: 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._registryCoordinator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for constructorCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - _registryCoordinator: 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._registryCoordinator, - ), - ) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `blsApkRegistry()` and selector `0x5df45946`. - ```solidity - function blsApkRegistry() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct blsApkRegistryCall {} - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`blsApkRegistry()`](blsApkRegistryCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct blsApkRegistryReturn { - #[allow(missing_docs)] - 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: blsApkRegistryCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for blsApkRegistryCall { - 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: blsApkRegistryReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for blsApkRegistryReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for blsApkRegistryCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = blsApkRegistryReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "blsApkRegistry()"; - const SELECTOR: [u8; 4] = [93u8, 244u8, 89u8, 70u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `checkSignatures(bytes32,bytes,uint32,(uint32[],(uint256,uint256)[],(uint256,uint256)[],(uint256[2],uint256[2]),(uint256,uint256),uint32[],uint32[],uint32[][]))` and selector `0x6efb4636`. - ```solidity - function checkSignatures(bytes32 msgHash, bytes memory quorumNumbers, uint32 referenceBlockNumber, IBLSSignatureCheckerTypes.NonSignerStakesAndSignature memory params) external view returns (IBLSSignatureCheckerTypes.QuorumStakeTotals memory, bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct checkSignaturesCall { - #[allow(missing_docs)] - pub msgHash: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - #[allow(missing_docs)] - pub referenceBlockNumber: u32, - #[allow(missing_docs)] - pub params: ::RustType, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`checkSignatures(bytes32,bytes,uint32,(uint32[],(uint256,uint256)[],(uint256,uint256)[],(uint256[2],uint256[2]),(uint256,uint256),uint32[],uint32[],uint32[][]))`](checkSignaturesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct checkSignaturesReturn { - #[allow(missing_docs)] - pub _0: - ::RustType, - #[allow(missing_docs)] - pub _1: 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::FixedBytes<32>, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Uint<32>, - IBLSSignatureCheckerTypes::NonSignerStakesAndSignature, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::FixedBytes<32>, - alloy::sol_types::private::Bytes, - u32, - ::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: checkSignaturesCall) -> Self { - ( - value.msgHash, - value.quorumNumbers, - value.referenceBlockNumber, - value.params, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for checkSignaturesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - msgHash: tuple.0, - quorumNumbers: tuple.1, - referenceBlockNumber: tuple.2, - params: tuple.3, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - IBLSSignatureCheckerTypes::QuorumStakeTotals, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - ::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: checkSignaturesReturn) -> Self { - (value._0, value._1) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for checkSignaturesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - _0: tuple.0, - _1: tuple.1, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for checkSignaturesCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Uint<32>, - IBLSSignatureCheckerTypes::NonSignerStakesAndSignature, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = checkSignaturesReturn; - type ReturnTuple<'a> = ( - IBLSSignatureCheckerTypes::QuorumStakeTotals, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "checkSignatures(bytes32,bytes,uint32,(uint32[],(uint256,uint256)[],(uint256,uint256)[],(uint256[2],uint256[2]),(uint256,uint256),uint32[],uint32[],uint32[][]))"; - const SELECTOR: [u8; 4] = [110u8, 251u8, 70u8, 54u8]; - #[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.msgHash), - ::tokenize( - &self.quorumNumbers, - ), - as alloy_sol_types::SolType>::tokenize(&self.referenceBlockNumber), - ::tokenize( - &self.params, - ), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `delegation()` and selector `0xdf5cf723`. - ```solidity - function delegation() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegationCall {} - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`delegation()`](delegationCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegationReturn { - #[allow(missing_docs)] - 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: delegationCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegationCall { - 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: delegationReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegationReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for delegationCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = delegationReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "delegation()"; - const SELECTOR: [u8; 4] = [223u8, 92u8, 247u8, 35u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `registryCoordinator()` and selector `0x6d14a987`. - ```solidity - function registryCoordinator() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registryCoordinatorCall {} - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`registryCoordinator()`](registryCoordinatorCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registryCoordinatorReturn { - #[allow(missing_docs)] - 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: registryCoordinatorCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registryCoordinatorCall { - 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: registryCoordinatorReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registryCoordinatorReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for registryCoordinatorCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = registryCoordinatorReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "registryCoordinator()"; - const SELECTOR: [u8; 4] = [109u8, 20u8, 169u8, 135u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `stakeRegistry()` and selector `0x68304835`. - ```solidity - function stakeRegistry() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct stakeRegistryCall {} - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`stakeRegistry()`](stakeRegistryCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct stakeRegistryReturn { - #[allow(missing_docs)] - 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: stakeRegistryCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for stakeRegistryCall { - 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: stakeRegistryReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for stakeRegistryReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for stakeRegistryCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = stakeRegistryReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "stakeRegistry()"; - const SELECTOR: [u8; 4] = [104u8, 48u8, 72u8, 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `trySignatureAndApkVerification(bytes32,(uint256,uint256),(uint256[2],uint256[2]),(uint256,uint256))` and selector `0x171f1d5b`. - ```solidity - function trySignatureAndApkVerification(bytes32 msgHash, BN254.G1Point memory apk, BN254.G2Point memory apkG2, BN254.G1Point memory sigma) external view returns (bool pairingSuccessful, bool siganatureIsValid); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct trySignatureAndApkVerificationCall { - #[allow(missing_docs)] - pub msgHash: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub apk: ::RustType, - #[allow(missing_docs)] - pub apkG2: ::RustType, - #[allow(missing_docs)] - pub sigma: ::RustType, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`trySignatureAndApkVerification(bytes32,(uint256,uint256),(uint256[2],uint256[2]),(uint256,uint256))`](trySignatureAndApkVerificationCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct trySignatureAndApkVerificationReturn { - #[allow(missing_docs)] - pub pairingSuccessful: bool, - #[allow(missing_docs)] - pub siganatureIsValid: 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>, - BN254::G1Point, - BN254::G2Point, - BN254::G1Point, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::FixedBytes<32>, - ::RustType, - ::RustType, - ::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: trySignatureAndApkVerificationCall) -> Self { - (value.msgHash, value.apk, value.apkG2, value.sigma) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for trySignatureAndApkVerificationCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - msgHash: tuple.0, - apk: tuple.1, - apkG2: tuple.2, - sigma: tuple.3, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Bool, - alloy::sol_types::sol_data::Bool, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool, 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: trySignatureAndApkVerificationReturn) -> Self { - (value.pairingSuccessful, value.siganatureIsValid) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for trySignatureAndApkVerificationReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - pairingSuccessful: tuple.0, - siganatureIsValid: tuple.1, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for trySignatureAndApkVerificationCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::FixedBytes<32>, - BN254::G1Point, - BN254::G2Point, - BN254::G1Point, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = trySignatureAndApkVerificationReturn; - type ReturnTuple<'a> = ( - alloy::sol_types::sol_data::Bool, - alloy::sol_types::sol_data::Bool, - ); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "trySignatureAndApkVerification(bytes32,(uint256,uint256),(uint256[2],uint256[2]),(uint256,uint256))"; - const SELECTOR: [u8; 4] = [23u8, 31u8, 29u8, 91u8]; - #[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.msgHash), - ::tokenize(&self.apk), - ::tokenize(&self.apkG2), - ::tokenize(&self.sigma), - ) - } - #[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 [`BLSSignatureChecker`](self) function calls. - #[derive(serde::Serialize, serde::Deserialize)] - pub enum BLSSignatureCheckerCalls { - #[allow(missing_docs)] - blsApkRegistry(blsApkRegistryCall), - #[allow(missing_docs)] - checkSignatures(checkSignaturesCall), - #[allow(missing_docs)] - delegation(delegationCall), - #[allow(missing_docs)] - registryCoordinator(registryCoordinatorCall), - #[allow(missing_docs)] - stakeRegistry(stakeRegistryCall), - #[allow(missing_docs)] - trySignatureAndApkVerification(trySignatureAndApkVerificationCall), - } - #[automatically_derived] - impl BLSSignatureCheckerCalls { - /// 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]] = &[ - [23u8, 31u8, 29u8, 91u8], - [93u8, 244u8, 89u8, 70u8], - [104u8, 48u8, 72u8, 53u8], - [109u8, 20u8, 169u8, 135u8], - [110u8, 251u8, 70u8, 54u8], - [223u8, 92u8, 247u8, 35u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for BLSSignatureCheckerCalls { - const NAME: &'static str = "BLSSignatureCheckerCalls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 6usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::blsApkRegistry(_) => { - ::SELECTOR - } - Self::checkSignatures(_) => { - ::SELECTOR - } - Self::delegation(_) => ::SELECTOR, - Self::registryCoordinator(_) => { - ::SELECTOR - } - Self::stakeRegistry(_) => ::SELECTOR, - Self::trySignatureAndApkVerification(_) => { - ::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 trySignatureAndApkVerification( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map( - BLSSignatureCheckerCalls::trySignatureAndApkVerification, - ) - } - trySignatureAndApkVerification - }, - { - fn blsApkRegistry( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerCalls::blsApkRegistry) - } - blsApkRegistry - }, - { - fn stakeRegistry( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerCalls::stakeRegistry) - } - stakeRegistry - }, - { - fn registryCoordinator( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerCalls::registryCoordinator) - } - registryCoordinator - }, - { - fn checkSignatures( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerCalls::checkSignatures) - } - checkSignatures - }, - { - fn delegation( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(BLSSignatureCheckerCalls::delegation) - } - delegation - }, - ]; - 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::blsApkRegistry(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::checkSignatures(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::delegation(inner) => { - ::abi_encoded_size(inner) - } - Self::registryCoordinator(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::stakeRegistry(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::trySignatureAndApkVerification(inner) => { - ::abi_encoded_size( - inner, - ) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::blsApkRegistry(inner) => { - ::abi_encode_raw(inner, out) - } - Self::checkSignatures(inner) => { - ::abi_encode_raw(inner, out) - } - Self::delegation(inner) => { - ::abi_encode_raw(inner, out) - } - Self::registryCoordinator(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::stakeRegistry(inner) => { - ::abi_encode_raw(inner, out) - } - Self::trySignatureAndApkVerification(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - } - } - } - ///Container for all the [`BLSSignatureChecker`](self) custom errors. - #[derive(serde::Serialize, serde::Deserialize, Debug, PartialEq, Eq, Hash)] - pub enum BLSSignatureCheckerErrors { - #[allow(missing_docs)] - BitmapValueTooLarge(BitmapValueTooLarge), - #[allow(missing_docs)] - BytesArrayLengthTooLong(BytesArrayLengthTooLong), - #[allow(missing_docs)] - BytesArrayNotOrdered(BytesArrayNotOrdered), - #[allow(missing_docs)] - ECAddFailed(ECAddFailed), - #[allow(missing_docs)] - ECMulFailed(ECMulFailed), - #[allow(missing_docs)] - ExpModFailed(ExpModFailed), - #[allow(missing_docs)] - InputArrayLengthMismatch(InputArrayLengthMismatch), - #[allow(missing_docs)] - InputEmptyQuorumNumbers(InputEmptyQuorumNumbers), - #[allow(missing_docs)] - InputNonSignerLengthMismatch(InputNonSignerLengthMismatch), - #[allow(missing_docs)] - InvalidBLSPairingKey(InvalidBLSPairingKey), - #[allow(missing_docs)] - InvalidBLSSignature(InvalidBLSSignature), - #[allow(missing_docs)] - InvalidQuorumApkHash(InvalidQuorumApkHash), - #[allow(missing_docs)] - InvalidReferenceBlocknumber(InvalidReferenceBlocknumber), - #[allow(missing_docs)] - NonSignerPubkeysNotSorted(NonSignerPubkeysNotSorted), - #[allow(missing_docs)] - OnlyRegistryCoordinatorOwner(OnlyRegistryCoordinatorOwner), - #[allow(missing_docs)] - ScalarTooLarge(ScalarTooLarge), - } - #[automatically_derived] - impl BLSSignatureCheckerErrors { - /// 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]] = &[ - [31u8, 4u8, 5u8, 160u8], - [67u8, 113u8, 74u8, 253u8], - [70u8, 51u8, 190u8, 50u8], - [75u8, 135u8, 79u8, 69u8], - [95u8, 131u8, 47u8, 65u8], - [103u8, 152u8, 141u8, 51u8], - [128u8, 200u8, 131u8, 72u8], - [171u8, 27u8, 35u8, 107u8], - [202u8, 149u8, 115u8, 51u8], - [212u8, 182u8, 143u8, 215u8], - [213u8, 30u8, 218u8, 227u8], - [224u8, 225u8, 231u8, 98u8], - [225u8, 49u8, 10u8, 237u8], - [251u8, 74u8, 156u8, 142u8], - [255u8, 113u8, 148u8, 20u8], - [255u8, 137u8, 212u8, 250u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for BLSSignatureCheckerErrors { - const NAME: &'static str = "BLSSignatureCheckerErrors"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 16usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::BitmapValueTooLarge(_) => { - ::SELECTOR - } - Self::BytesArrayLengthTooLong(_) => { - ::SELECTOR - } - Self::BytesArrayNotOrdered(_) => { - ::SELECTOR - } - Self::ECAddFailed(_) => ::SELECTOR, - Self::ECMulFailed(_) => ::SELECTOR, - Self::ExpModFailed(_) => ::SELECTOR, - Self::InputArrayLengthMismatch(_) => { - ::SELECTOR - } - Self::InputEmptyQuorumNumbers(_) => { - ::SELECTOR - } - Self::InputNonSignerLengthMismatch(_) => { - ::SELECTOR - } - Self::InvalidBLSPairingKey(_) => { - ::SELECTOR - } - Self::InvalidBLSSignature(_) => { - ::SELECTOR - } - Self::InvalidQuorumApkHash(_) => { - ::SELECTOR - } - Self::InvalidReferenceBlocknumber(_) => { - ::SELECTOR - } - Self::NonSignerPubkeysNotSorted(_) => { - ::SELECTOR - } - Self::OnlyRegistryCoordinatorOwner(_) => { - ::SELECTOR - } - Self::ScalarTooLarge(_) => ::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 InputEmptyQuorumNumbers( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerErrors::InputEmptyQuorumNumbers) - } - InputEmptyQuorumNumbers - }, - { - fn InputArrayLengthMismatch( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerErrors::InputArrayLengthMismatch) - } - InputArrayLengthMismatch - }, - { - fn ECMulFailed( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(BLSSignatureCheckerErrors::ECMulFailed) - } - ECMulFailed - }, - { - fn InvalidReferenceBlocknumber( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerErrors::InvalidReferenceBlocknumber) - } - InvalidReferenceBlocknumber - }, - { - fn InputNonSignerLengthMismatch( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerErrors::InputNonSignerLengthMismatch) - } - InputNonSignerLengthMismatch - }, - { - fn InvalidBLSPairingKey( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerErrors::InvalidBLSPairingKey) - } - InvalidBLSPairingKey - }, - { - fn BytesArrayNotOrdered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerErrors::BytesArrayNotOrdered) - } - BytesArrayNotOrdered - }, - { - fn InvalidBLSSignature( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerErrors::InvalidBLSSignature) - } - InvalidBLSSignature - }, - { - fn BitmapValueTooLarge( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerErrors::BitmapValueTooLarge) - } - BitmapValueTooLarge - }, - { - fn ECAddFailed( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(BLSSignatureCheckerErrors::ECAddFailed) - } - ECAddFailed - }, - { - fn ExpModFailed( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(BLSSignatureCheckerErrors::ExpModFailed) - } - ExpModFailed - }, - { - fn OnlyRegistryCoordinatorOwner( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerErrors::OnlyRegistryCoordinatorOwner) - } - OnlyRegistryCoordinatorOwner - }, - { - fn InvalidQuorumApkHash( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerErrors::InvalidQuorumApkHash) - } - InvalidQuorumApkHash - }, - { - fn BytesArrayLengthTooLong( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerErrors::BytesArrayLengthTooLong) - } - BytesArrayLengthTooLong - }, - { - fn NonSignerPubkeysNotSorted( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerErrors::NonSignerPubkeysNotSorted) - } - NonSignerPubkeysNotSorted - }, - { - fn ScalarTooLarge( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(BLSSignatureCheckerErrors::ScalarTooLarge) - } - ScalarTooLarge - }, - ]; - 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::BitmapValueTooLarge(inner) => { - ::abi_encoded_size(inner) - } - Self::BytesArrayLengthTooLong(inner) => { - ::abi_encoded_size(inner) - } - Self::BytesArrayNotOrdered(inner) => { - ::abi_encoded_size(inner) - } - Self::ECAddFailed(inner) => { - ::abi_encoded_size(inner) - } - Self::ECMulFailed(inner) => { - ::abi_encoded_size(inner) - } - Self::ExpModFailed(inner) => { - ::abi_encoded_size(inner) - } - Self::InputArrayLengthMismatch(inner) => { - ::abi_encoded_size(inner) - } - Self::InputEmptyQuorumNumbers(inner) => { - ::abi_encoded_size(inner) - } - Self::InputNonSignerLengthMismatch(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::InvalidBLSPairingKey(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidBLSSignature(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidQuorumApkHash(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidReferenceBlocknumber(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::NonSignerPubkeysNotSorted(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::OnlyRegistryCoordinatorOwner(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::ScalarTooLarge(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::BitmapValueTooLarge(inner) => { - ::abi_encode_raw(inner, out) - } - Self::BytesArrayLengthTooLong(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::BytesArrayNotOrdered(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ECAddFailed(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ECMulFailed(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ExpModFailed(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InputArrayLengthMismatch(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::InputEmptyQuorumNumbers(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::InputNonSignerLengthMismatch(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::InvalidBLSPairingKey(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidBLSSignature(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidQuorumApkHash(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidReferenceBlocknumber(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::NonSignerPubkeysNotSorted(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::OnlyRegistryCoordinatorOwner(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::ScalarTooLarge(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`BLSSignatureChecker`](self) contract instance. - - See the [wrapper's documentation](`BLSSignatureCheckerInstance`) 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, - ) -> BLSSignatureCheckerInstance { - BLSSignatureCheckerInstance::::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, - _registryCoordinator: alloy::sol_types::private::Address, - ) -> impl ::core::future::Future>> - { - BLSSignatureCheckerInstance::::deploy(provider, _registryCoordinator) - } - /**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, - _registryCoordinator: alloy::sol_types::private::Address, - ) -> alloy_contract::RawCallBuilder { - BLSSignatureCheckerInstance::::deploy_builder(provider, _registryCoordinator) - } - /**A [`BLSSignatureChecker`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`BLSSignatureChecker`](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 BLSSignatureCheckerInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for BLSSignatureCheckerInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BLSSignatureCheckerInstance") - .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, - > BLSSignatureCheckerInstance - { - /**Creates a new wrapper around an on-chain [`BLSSignatureChecker`](self) contract instance. - - See the [wrapper's documentation](`BLSSignatureCheckerInstance`) 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, - _registryCoordinator: alloy::sol_types::private::Address, - ) -> alloy_contract::Result> { - let call_builder = Self::deploy_builder(provider, _registryCoordinator); - 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, - _registryCoordinator: alloy::sol_types::private::Address, - ) -> alloy_contract::RawCallBuilder { - alloy_contract::RawCallBuilder::new_raw_deploy( - provider, - [ - &BYTECODE[..], - &alloy_sol_types::SolConstructor::abi_encode(&constructorCall { - _registryCoordinator, - })[..], - ] - .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 BLSSignatureCheckerInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> BLSSignatureCheckerInstance { - BLSSignatureCheckerInstance { - 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, - > BLSSignatureCheckerInstance - { - /// 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 [`blsApkRegistry`] function. - pub fn blsApkRegistry( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&blsApkRegistryCall {}) - } - ///Creates a new call builder for the [`checkSignatures`] function. - pub fn checkSignatures( - &self, - msgHash: alloy::sol_types::private::FixedBytes<32>, - quorumNumbers: alloy::sol_types::private::Bytes, - referenceBlockNumber: u32, - params: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&checkSignaturesCall { - msgHash, - quorumNumbers, - referenceBlockNumber, - params, - }) - } - ///Creates a new call builder for the [`delegation`] function. - pub fn delegation(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&delegationCall {}) - } - ///Creates a new call builder for the [`registryCoordinator`] function. - pub fn registryCoordinator( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(®istryCoordinatorCall {}) - } - ///Creates a new call builder for the [`stakeRegistry`] function. - pub fn stakeRegistry(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&stakeRegistryCall {}) - } - ///Creates a new call builder for the [`trySignatureAndApkVerification`] function. - pub fn trySignatureAndApkVerification( - &self, - msgHash: alloy::sol_types::private::FixedBytes<32>, - apk: ::RustType, - apkG2: ::RustType, - sigma: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&trySignatureAndApkVerificationCall { - msgHash, - apk, - apkG2, - sigma, - }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > BLSSignatureCheckerInstance - { - /// 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/src/bindings/counter.rs b/src/bindings/counter.rs deleted file mode 100644 index 56dcffe..0000000 --- a/src/bindings/counter.rs +++ /dev/null @@ -1,8292 +0,0 @@ -///Module containing a contract's types and functions. -/** - -```solidity -library BN254 { - struct G1Point { uint256 X; uint256 Y; } - struct G2Point { uint256[2] X; uint256[2] Y; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod BN254 { - - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct G1Point { uint256 X; uint256 Y; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct G1Point { - #[allow(missing_docs)] - pub X: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub Y: 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: G1Point) -> Self { - (value.X, value.Y) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for G1Point { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - X: tuple.0, - Y: tuple.1, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for G1Point { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for G1Point { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - as alloy_sol_types::SolType>::tokenize( - &self.X, - ), - as alloy_sol_types::SolType>::tokenize( - &self.Y, - ), - ) - } - #[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 G1Point { - 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 G1Point { - const NAME: &'static str = "G1Point"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed("G1Point(uint256 X,uint256 Y)") - } - #[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.X) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.Y) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for G1Point { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.X) - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.Y) - } - #[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.X, out); - as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.Y, 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)) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct G2Point { uint256[2] X; uint256[2] Y; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct G2Point { - #[allow(missing_docs)] - pub X: [alloy::sol_types::private::primitives::aliases::U256; 2usize], - #[allow(missing_docs)] - pub Y: [alloy::sol_types::private::primitives::aliases::U256; 2usize], - } - #[allow( - non_camel_case_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::FixedArray, 2usize>, - alloy::sol_types::sol_data::FixedArray, 2usize>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - [alloy::sol_types::private::primitives::aliases::U256; 2usize], - [alloy::sol_types::private::primitives::aliases::U256; 2usize], - ); - #[cfg(test)] - #[allow(dead_code, unreachable_patterns)] - fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq) { - match _t { - alloy_sol_types::private::AssertTypeEq::< - ::RustType, - >(_) => {} - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From for UnderlyingRustTuple<'_> { - fn from(value: G2Point) -> Self { - (value.X, value.Y) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for G2Point { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - X: tuple.0, - Y: tuple.1, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for G2Point { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for G2Point { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - 2usize, - > as alloy_sol_types::SolType>::tokenize(&self.X), - , - 2usize, - > as alloy_sol_types::SolType>::tokenize(&self.Y), - ) - } - #[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 G2Point { - 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 G2Point { - const NAME: &'static str = "G2Point"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed("G2Point(uint256[2] X,uint256[2] Y)") - } - #[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 { - [ - , - 2usize, - > as alloy_sol_types::SolType>::eip712_data_word(&self.X) - .0, - , - 2usize, - > as alloy_sol_types::SolType>::eip712_data_word(&self.Y) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for G2Point { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - , - 2usize, - > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.X) - + , - 2usize, - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.Y - ) - } - #[inline] - fn encode_topic_preimage( - rust: &Self::RustType, - out: &mut alloy_sol_types::private::Vec, - ) { - out.reserve(::topic_preimage_length(rust)); - , - 2usize, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.X, out - ); - , - 2usize, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.Y, 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 [`BN254`](self) contract instance. - - See the [wrapper's documentation](`BN254Instance`) 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, - ) -> BN254Instance { - BN254Instance::::new(address, provider) - } - /**A [`BN254`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`BN254`](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 BN254Instance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for BN254Instance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("BN254Instance").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, - > BN254Instance - { - /**Creates a new wrapper around an on-chain [`BN254`](self) contract instance. - - See the [wrapper's documentation](`BN254Instance`) 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 BN254Instance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> BN254Instance { - BN254Instance { - 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, - > BN254Instance - { - /// 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, - > BN254Instance - { - /// 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 IBLSSignatureCheckerTypes { - struct NonSignerStakesAndSignature { uint32[] nonSignerQuorumBitmapIndices; BN254.G1Point[] nonSignerPubkeys; BN254.G1Point[] quorumApks; BN254.G2Point apkG2; BN254.G1Point sigma; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } - struct QuorumStakeTotals { uint96[] signedStakeForQuorum; uint96[] totalStakeForQuorum; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod IBLSSignatureCheckerTypes { - use super::*; - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct NonSignerStakesAndSignature { uint32[] nonSignerQuorumBitmapIndices; BN254.G1Point[] nonSignerPubkeys; BN254.G1Point[] quorumApks; BN254.G2Point apkG2; BN254.G1Point sigma; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct NonSignerStakesAndSignature { - #[allow(missing_docs)] - pub nonSignerQuorumBitmapIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub nonSignerPubkeys: - alloy::sol_types::private::Vec<::RustType>, - #[allow(missing_docs)] - pub quorumApks: - alloy::sol_types::private::Vec<::RustType>, - #[allow(missing_docs)] - pub apkG2: ::RustType, - #[allow(missing_docs)] - pub sigma: ::RustType, - #[allow(missing_docs)] - pub quorumApkIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub totalStakeIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub nonSignerStakeIndices: - 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>, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Array, - BN254::G2Point, - BN254::G1Point, - 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, - alloy::sol_types::private::Vec<::RustType>, - alloy::sol_types::private::Vec<::RustType>, - ::RustType, - ::RustType, - alloy::sol_types::private::Vec, - 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: NonSignerStakesAndSignature) -> Self { - ( - value.nonSignerQuorumBitmapIndices, - value.nonSignerPubkeys, - value.quorumApks, - value.apkG2, - value.sigma, - value.quorumApkIndices, - value.totalStakeIndices, - value.nonSignerStakeIndices, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for NonSignerStakesAndSignature { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - nonSignerQuorumBitmapIndices: tuple.0, - nonSignerPubkeys: tuple.1, - quorumApks: tuple.2, - apkG2: tuple.3, - sigma: tuple.4, - quorumApkIndices: tuple.5, - totalStakeIndices: tuple.6, - nonSignerStakeIndices: tuple.7, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for NonSignerStakesAndSignature { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for NonSignerStakesAndSignature { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - > as alloy_sol_types::SolType>::tokenize( - &self.nonSignerQuorumBitmapIndices, - ), - as alloy_sol_types::SolType>::tokenize(&self.nonSignerPubkeys), - as alloy_sol_types::SolType>::tokenize(&self.quorumApks), - ::tokenize(&self.apkG2), - ::tokenize(&self.sigma), - , - > as alloy_sol_types::SolType>::tokenize(&self.quorumApkIndices), - , - > as alloy_sol_types::SolType>::tokenize(&self.totalStakeIndices), - , - >, - > as alloy_sol_types::SolType>::tokenize(&self.nonSignerStakeIndices), - ) - } - #[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 NonSignerStakesAndSignature { - 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 NonSignerStakesAndSignature { - const NAME: &'static str = "NonSignerStakesAndSignature"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "NonSignerStakesAndSignature(uint32[] nonSignerQuorumBitmapIndices,BN254.G1Point[] nonSignerPubkeys,BN254.G1Point[] quorumApks,BN254.G2Point apkG2,BN254.G1Point sigma,uint32[] quorumApkIndices,uint32[] totalStakeIndices,uint32[][] nonSignerStakeIndices)", - ) - } - #[inline] - fn eip712_components() - -> alloy_sol_types::private::Vec> - { - let mut components = alloy_sol_types::private::Vec::with_capacity(4); - components.push(::eip712_root_type()); - components - .extend(::eip712_components()); - components.push(::eip712_root_type()); - components - .extend(::eip712_components()); - 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.nonSignerQuorumBitmapIndices, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word( - &self.nonSignerPubkeys, - ) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.quorumApks) - .0, - ::eip712_data_word( - &self.apkG2, - ) - .0, - ::eip712_data_word( - &self.sigma, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.quorumApkIndices, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.totalStakeIndices, - ) - .0, - , - >, - > as alloy_sol_types::SolType>::eip712_data_word( - &self.nonSignerStakeIndices, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for NonSignerStakesAndSignature { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerQuorumBitmapIndices, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerPubkeys, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.quorumApks, - ) - + ::topic_preimage_length( - &rust.apkG2, - ) - + ::topic_preimage_length( - &rust.sigma, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.quorumApkIndices, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.totalStakeIndices, - ) - + , - >, - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerStakeIndices, - ) - } - #[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.nonSignerQuorumBitmapIndices, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.nonSignerPubkeys, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.quorumApks, - out, - ); - ::encode_topic_preimage( - &rust.apkG2, - out, - ); - ::encode_topic_preimage( - &rust.sigma, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.quorumApkIndices, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.totalStakeIndices, - out, - ); - >, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.nonSignerStakeIndices, - 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)) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct QuorumStakeTotals { uint96[] signedStakeForQuorum; uint96[] totalStakeForQuorum; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct QuorumStakeTotals { - #[allow(missing_docs)] - pub signedStakeForQuorum: - alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub totalStakeForQuorum: - 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>, - alloy::sol_types::sol_data::Array>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - 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: QuorumStakeTotals) -> Self { - (value.signedStakeForQuorum, value.totalStakeForQuorum) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for QuorumStakeTotals { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - signedStakeForQuorum: tuple.0, - totalStakeForQuorum: tuple.1, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for QuorumStakeTotals { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for QuorumStakeTotals { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - > as alloy_sol_types::SolType>::tokenize(&self.signedStakeForQuorum), - , - > as alloy_sol_types::SolType>::tokenize(&self.totalStakeForQuorum), - ) - } - #[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 QuorumStakeTotals { - 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 QuorumStakeTotals { - const NAME: &'static str = "QuorumStakeTotals"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "QuorumStakeTotals(uint96[] signedStakeForQuorum,uint96[] totalStakeForQuorum)", - ) - } - #[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.signedStakeForQuorum, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.totalStakeForQuorum, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for QuorumStakeTotals { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.signedStakeForQuorum, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.totalStakeForQuorum, - ) - } - #[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.signedStakeForQuorum, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.totalStakeForQuorum, - 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 [`IBLSSignatureCheckerTypes`](self) contract instance. - - See the [wrapper's documentation](`IBLSSignatureCheckerTypesInstance`) 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, - ) -> IBLSSignatureCheckerTypesInstance { - IBLSSignatureCheckerTypesInstance::::new(address, provider) - } - /**A [`IBLSSignatureCheckerTypes`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`IBLSSignatureCheckerTypes`](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 IBLSSignatureCheckerTypesInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for IBLSSignatureCheckerTypesInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("IBLSSignatureCheckerTypesInstance") - .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, - > IBLSSignatureCheckerTypesInstance - { - /**Creates a new wrapper around an on-chain [`IBLSSignatureCheckerTypes`](self) contract instance. - - See the [wrapper's documentation](`IBLSSignatureCheckerTypesInstance`) 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 IBLSSignatureCheckerTypesInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> IBLSSignatureCheckerTypesInstance { - IBLSSignatureCheckerTypesInstance { - 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, - > IBLSSignatureCheckerTypesInstance - { - /// 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, - > IBLSSignatureCheckerTypesInstance - { - /// 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 OperatorStateRetriever { - struct CheckSignaturesIndices { uint32[] nonSignerQuorumBitmapIndices; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } - struct Operator { address operator; bytes32 operatorId; uint96 stake; } -} -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod OperatorStateRetriever { - - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct CheckSignaturesIndices { uint32[] nonSignerQuorumBitmapIndices; uint32[] quorumApkIndices; uint32[] totalStakeIndices; uint32[][] nonSignerStakeIndices; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct CheckSignaturesIndices { - #[allow(missing_docs)] - pub nonSignerQuorumBitmapIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub quorumApkIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub totalStakeIndices: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub nonSignerStakeIndices: - 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>, - 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, - alloy::sol_types::private::Vec, - 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: CheckSignaturesIndices) -> Self { - ( - value.nonSignerQuorumBitmapIndices, - value.quorumApkIndices, - value.totalStakeIndices, - value.nonSignerStakeIndices, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for CheckSignaturesIndices { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - nonSignerQuorumBitmapIndices: tuple.0, - quorumApkIndices: tuple.1, - totalStakeIndices: tuple.2, - nonSignerStakeIndices: tuple.3, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for CheckSignaturesIndices { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for CheckSignaturesIndices { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - , - > as alloy_sol_types::SolType>::tokenize( - &self.nonSignerQuorumBitmapIndices, - ), - , - > as alloy_sol_types::SolType>::tokenize(&self.quorumApkIndices), - , - > as alloy_sol_types::SolType>::tokenize(&self.totalStakeIndices), - , - >, - > as alloy_sol_types::SolType>::tokenize(&self.nonSignerStakeIndices), - ) - } - #[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 CheckSignaturesIndices { - 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 CheckSignaturesIndices { - const NAME: &'static str = "CheckSignaturesIndices"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "CheckSignaturesIndices(uint32[] nonSignerQuorumBitmapIndices,uint32[] quorumApkIndices,uint32[] totalStakeIndices,uint32[][] nonSignerStakeIndices)", - ) - } - #[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.nonSignerQuorumBitmapIndices, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.quorumApkIndices, - ) - .0, - , - > as alloy_sol_types::SolType>::eip712_data_word( - &self.totalStakeIndices, - ) - .0, - , - >, - > as alloy_sol_types::SolType>::eip712_data_word( - &self.nonSignerStakeIndices, - ) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for CheckSignaturesIndices { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerQuorumBitmapIndices, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.quorumApkIndices, - ) - + , - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.totalStakeIndices, - ) - + , - >, - > as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.nonSignerStakeIndices, - ) - } - #[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.nonSignerQuorumBitmapIndices, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.quorumApkIndices, - out, - ); - , - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.totalStakeIndices, - out, - ); - >, - > as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.nonSignerStakeIndices, - 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)) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**```solidity - struct Operator { address operator; bytes32 operatorId; uint96 stake; } - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct Operator { - #[allow(missing_docs)] - pub operator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorId: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub stake: 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::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<96>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::FixedBytes<32>, - 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: Operator) -> Self { - (value.operator, value.operatorId, value.stake) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for Operator { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - operator: tuple.0, - operatorId: tuple.1, - stake: tuple.2, - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolValue for Operator { - type SolType = Self; - } - #[automatically_derived] - impl alloy_sol_types::private::SolTypeValue for Operator { - #[inline] - fn stv_to_tokens(&self) -> ::Token<'_> { - ( - ::tokenize( - &self.operator, - ), - as alloy_sol_types::SolType>::tokenize(&self.operatorId), - as alloy_sol_types::SolType>::tokenize(&self.stake), - ) - } - #[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 Operator { - 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 Operator { - const NAME: &'static str = "Operator"; - #[inline] - fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> { - alloy_sol_types::private::Cow::Borrowed( - "Operator(address operator,bytes32 operatorId,uint96 stake)", - ) - } - #[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.operatorId) - .0, - as alloy_sol_types::SolType>::eip712_data_word(&self.stake) - .0, - ] - .concat() - } - } - #[automatically_derived] - impl alloy_sol_types::EventTopic for Operator { - #[inline] - fn topic_preimage_length(rust: &Self::RustType) -> usize { - ::topic_preimage_length( - &rust.operator, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length( - &rust.operatorId, - ) - + as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.stake) - } - #[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.operatorId, - out, - ); - as alloy_sol_types::EventTopic>::encode_topic_preimage( - &rust.stake, - 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 [`OperatorStateRetriever`](self) contract instance. - - See the [wrapper's documentation](`OperatorStateRetrieverInstance`) 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, - ) -> OperatorStateRetrieverInstance { - OperatorStateRetrieverInstance::::new(address, provider) - } - /**A [`OperatorStateRetriever`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`OperatorStateRetriever`](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 OperatorStateRetrieverInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for OperatorStateRetrieverInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("OperatorStateRetrieverInstance") - .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, - > OperatorStateRetrieverInstance - { - /**Creates a new wrapper around an on-chain [`OperatorStateRetriever`](self) contract instance. - - See the [wrapper's documentation](`OperatorStateRetrieverInstance`) 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 OperatorStateRetrieverInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> OperatorStateRetrieverInstance { - OperatorStateRetrieverInstance { - 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, - > OperatorStateRetrieverInstance - { - /// 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, - > OperatorStateRetrieverInstance - { - /// 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 BN254 { - struct G1Point { - uint256 X; - uint256 Y; - } - struct G2Point { - uint256[2] X; - uint256[2] Y; - } -} - -library IBLSSignatureCheckerTypes { - struct NonSignerStakesAndSignature { - uint32[] nonSignerQuorumBitmapIndices; - BN254.G1Point[] nonSignerPubkeys; - BN254.G1Point[] quorumApks; - BN254.G2Point apkG2; - BN254.G1Point sigma; - uint32[] quorumApkIndices; - uint32[] totalStakeIndices; - uint32[][] nonSignerStakeIndices; - } - struct QuorumStakeTotals { - uint96[] signedStakeForQuorum; - uint96[] totalStakeForQuorum; - } -} - -library OperatorStateRetriever { - struct CheckSignaturesIndices { - uint32[] nonSignerQuorumBitmapIndices; - uint32[] quorumApkIndices; - uint32[] totalStakeIndices; - uint32[][] nonSignerStakeIndices; - } - struct Operator { - address operator; - bytes32 operatorId; - uint96 stake; - } -} - -interface Counter { - error BitmapValueTooLarge(); - error BytesArrayLengthTooLong(); - error BytesArrayNotOrdered(); - error ECAddFailed(); - error ECMulFailed(); - error ExpModFailed(); - error FutureBlockNumber(); - error InputArrayLengthMismatch(); - error InputEmptyQuorumNumbers(); - error InputNonSignerLengthMismatch(); - error InsufficientQuorumThreshold(); - error InvalidBLSPairingKey(); - error InvalidBLSSignature(); - error InvalidHash(); - error InvalidQuorumApkHash(); - error InvalidReferenceBlocknumber(); - error InvalidSigma(); - error NonSignerPubkeysNotSorted(); - error OnlyRegistryCoordinatorOwner(); - error OperatorNotRegistered(); - error ScalarTooLarge(); - error StaleBlockNumber(); - - constructor(address _registryCoordinator); - - function BLOCK_STALE_MEASURE() external view returns (uint32); - function QUORUM_THRESHOLD() external view returns (uint256); - function THRESHOLD_DENOMINATOR() external view returns (uint256); - function blsApkRegistry() external view returns (address); - function checkSignatures(bytes32 msgHash, bytes memory quorumNumbers, uint32 referenceBlockNumber, IBLSSignatureCheckerTypes.NonSignerStakesAndSignature memory params) external view returns (IBLSSignatureCheckerTypes.QuorumStakeTotals memory, bytes32); - function delegation() external view returns (address); - function getBatchOperatorFromId(address registryCoordinator, bytes32[] memory operatorIds) external view returns (address[] memory operators); - function getBatchOperatorId(address registryCoordinator, address[] memory operators) external view returns (bytes32[] memory operatorIds); - function getCheckSignaturesIndices(address registryCoordinator, uint32 referenceBlockNumber, bytes memory quorumNumbers, bytes32[] memory nonSignerOperatorIds) external view returns (OperatorStateRetriever.CheckSignaturesIndices memory); - function getNonSignerStakesAndSignature(address registryCoordinator, bytes memory quorumNumbers, BN254.G1Point memory sigma, address[] memory operators, uint32 blockNumber) external view returns (IBLSSignatureCheckerTypes.NonSignerStakesAndSignature memory); - function getOperatorState(address registryCoordinator, bytes memory quorumNumbers, uint32 blockNumber) external view returns (OperatorStateRetriever.Operator[][] memory); - function getOperatorState(address registryCoordinator, bytes32 operatorId, uint32 blockNumber) external view returns (uint256, OperatorStateRetriever.Operator[][] memory); - function getQuorumBitmapsAtBlockNumber(address registryCoordinator, bytes32[] memory operatorIds, uint32 blockNumber) external view returns (uint256[] memory); - function increment(bytes32 msgHash, bytes memory quorumNumbers, uint32 referenceBlockNumber, IBLSSignatureCheckerTypes.NonSignerStakesAndSignature memory params) external; - function number() external view returns (uint256); - function registryCoordinator() external view returns (address); - function stakeRegistry() external view returns (address); - function trySignatureAndApkVerification(bytes32 msgHash, BN254.G1Point memory apk, BN254.G2Point memory apkG2, BN254.G1Point memory sigma) external view returns (bool pairingSuccessful, bool siganatureIsValid); -} -``` - -...which was generated by the following JSON ABI: -```json -[ - { - "type": "constructor", - "inputs": [ - { - "name": "_registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - } - ], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "BLOCK_STALE_MEASURE", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint32", - "internalType": "uint32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "QUORUM_THRESHOLD", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "THRESHOLD_DENOMINATOR", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "blsApkRegistry", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "contract IBLSApkRegistry" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "checkSignatures", - "inputs": [ - { - "name": "msgHash", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "referenceBlockNumber", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "params", - "type": "tuple", - "internalType": "struct IBLSSignatureCheckerTypes.NonSignerStakesAndSignature", - "components": [ - { - "name": "nonSignerQuorumBitmapIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerPubkeys", - "type": "tuple[]", - "internalType": "struct BN254.G1Point[]", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "quorumApks", - "type": "tuple[]", - "internalType": "struct BN254.G1Point[]", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "apkG2", - "type": "tuple", - "internalType": "struct BN254.G2Point", - "components": [ - { - "name": "X", - "type": "uint256[2]", - "internalType": "uint256[2]" - }, - { - "name": "Y", - "type": "uint256[2]", - "internalType": "uint256[2]" - } - ] - }, - { - "name": "sigma", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "quorumApkIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "totalStakeIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerStakeIndices", - "type": "uint32[][]", - "internalType": "uint32[][]" - } - ] - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct IBLSSignatureCheckerTypes.QuorumStakeTotals", - "components": [ - { - "name": "signedStakeForQuorum", - "type": "uint96[]", - "internalType": "uint96[]" - }, - { - "name": "totalStakeForQuorum", - "type": "uint96[]", - "internalType": "uint96[]" - } - ] - }, - { - "name": "", - "type": "bytes32", - "internalType": "bytes32" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "delegation", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "contract IDelegationManager" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getBatchOperatorFromId", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "operatorIds", - "type": "bytes32[]", - "internalType": "bytes32[]" - } - ], - "outputs": [ - { - "name": "operators", - "type": "address[]", - "internalType": "address[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getBatchOperatorId", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "operators", - "type": "address[]", - "internalType": "address[]" - } - ], - "outputs": [ - { - "name": "operatorIds", - "type": "bytes32[]", - "internalType": "bytes32[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getCheckSignaturesIndices", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "referenceBlockNumber", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "nonSignerOperatorIds", - "type": "bytes32[]", - "internalType": "bytes32[]" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct OperatorStateRetriever.CheckSignaturesIndices", - "components": [ - { - "name": "nonSignerQuorumBitmapIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "quorumApkIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "totalStakeIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerStakeIndices", - "type": "uint32[][]", - "internalType": "uint32[][]" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getNonSignerStakesAndSignature", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "sigma", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "operators", - "type": "address[]", - "internalType": "address[]" - }, - { - "name": "blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple", - "internalType": "struct IBLSSignatureCheckerTypes.NonSignerStakesAndSignature", - "components": [ - { - "name": "nonSignerQuorumBitmapIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerPubkeys", - "type": "tuple[]", - "internalType": "struct BN254.G1Point[]", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "quorumApks", - "type": "tuple[]", - "internalType": "struct BN254.G1Point[]", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "apkG2", - "type": "tuple", - "internalType": "struct BN254.G2Point", - "components": [ - { - "name": "X", - "type": "uint256[2]", - "internalType": "uint256[2]" - }, - { - "name": "Y", - "type": "uint256[2]", - "internalType": "uint256[2]" - } - ] - }, - { - "name": "sigma", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "quorumApkIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "totalStakeIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerStakeIndices", - "type": "uint32[][]", - "internalType": "uint32[][]" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorState", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "tuple[][]", - "internalType": "struct OperatorStateRetriever.Operator[][]", - "components": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "operatorId", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "stake", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getOperatorState", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "operatorId", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "", - "type": "tuple[][]", - "internalType": "struct OperatorStateRetriever.Operator[][]", - "components": [ - { - "name": "operator", - "type": "address", - "internalType": "address" - }, - { - "name": "operatorId", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "stake", - "type": "uint96", - "internalType": "uint96" - } - ] - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "getQuorumBitmapsAtBlockNumber", - "inputs": [ - { - "name": "registryCoordinator", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - }, - { - "name": "operatorIds", - "type": "bytes32[]", - "internalType": "bytes32[]" - }, - { - "name": "blockNumber", - "type": "uint32", - "internalType": "uint32" - } - ], - "outputs": [ - { - "name": "", - "type": "uint256[]", - "internalType": "uint256[]" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "increment", - "inputs": [ - { - "name": "msgHash", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "quorumNumbers", - "type": "bytes", - "internalType": "bytes" - }, - { - "name": "referenceBlockNumber", - "type": "uint32", - "internalType": "uint32" - }, - { - "name": "params", - "type": "tuple", - "internalType": "struct IBLSSignatureCheckerTypes.NonSignerStakesAndSignature", - "components": [ - { - "name": "nonSignerQuorumBitmapIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerPubkeys", - "type": "tuple[]", - "internalType": "struct BN254.G1Point[]", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "quorumApks", - "type": "tuple[]", - "internalType": "struct BN254.G1Point[]", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "apkG2", - "type": "tuple", - "internalType": "struct BN254.G2Point", - "components": [ - { - "name": "X", - "type": "uint256[2]", - "internalType": "uint256[2]" - }, - { - "name": "Y", - "type": "uint256[2]", - "internalType": "uint256[2]" - } - ] - }, - { - "name": "sigma", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "quorumApkIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "totalStakeIndices", - "type": "uint32[]", - "internalType": "uint32[]" - }, - { - "name": "nonSignerStakeIndices", - "type": "uint32[][]", - "internalType": "uint32[][]" - } - ] - } - ], - "outputs": [], - "stateMutability": "nonpayable" - }, - { - "type": "function", - "name": "number", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "uint256", - "internalType": "uint256" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "registryCoordinator", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "contract ISlashingRegistryCoordinator" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "stakeRegistry", - "inputs": [], - "outputs": [ - { - "name": "", - "type": "address", - "internalType": "contract IStakeRegistry" - } - ], - "stateMutability": "view" - }, - { - "type": "function", - "name": "trySignatureAndApkVerification", - "inputs": [ - { - "name": "msgHash", - "type": "bytes32", - "internalType": "bytes32" - }, - { - "name": "apk", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - }, - { - "name": "apkG2", - "type": "tuple", - "internalType": "struct BN254.G2Point", - "components": [ - { - "name": "X", - "type": "uint256[2]", - "internalType": "uint256[2]" - }, - { - "name": "Y", - "type": "uint256[2]", - "internalType": "uint256[2]" - } - ] - }, - { - "name": "sigma", - "type": "tuple", - "internalType": "struct BN254.G1Point", - "components": [ - { - "name": "X", - "type": "uint256", - "internalType": "uint256" - }, - { - "name": "Y", - "type": "uint256", - "internalType": "uint256" - } - ] - } - ], - "outputs": [ - { - "name": "pairingSuccessful", - "type": "bool", - "internalType": "bool" - }, - { - "name": "siganatureIsValid", - "type": "bool", - "internalType": "bool" - } - ], - "stateMutability": "view" - }, - { - "type": "error", - "name": "BitmapValueTooLarge", - "inputs": [] - }, - { - "type": "error", - "name": "BytesArrayLengthTooLong", - "inputs": [] - }, - { - "type": "error", - "name": "BytesArrayNotOrdered", - "inputs": [] - }, - { - "type": "error", - "name": "ECAddFailed", - "inputs": [] - }, - { - "type": "error", - "name": "ECMulFailed", - "inputs": [] - }, - { - "type": "error", - "name": "ExpModFailed", - "inputs": [] - }, - { - "type": "error", - "name": "FutureBlockNumber", - "inputs": [] - }, - { - "type": "error", - "name": "InputArrayLengthMismatch", - "inputs": [] - }, - { - "type": "error", - "name": "InputEmptyQuorumNumbers", - "inputs": [] - }, - { - "type": "error", - "name": "InputNonSignerLengthMismatch", - "inputs": [] - }, - { - "type": "error", - "name": "InsufficientQuorumThreshold", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidBLSPairingKey", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidBLSSignature", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidHash", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidQuorumApkHash", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidReferenceBlocknumber", - "inputs": [] - }, - { - "type": "error", - "name": "InvalidSigma", - "inputs": [] - }, - { - "type": "error", - "name": "NonSignerPubkeysNotSorted", - "inputs": [] - }, - { - "type": "error", - "name": "OnlyRegistryCoordinatorOwner", - "inputs": [] - }, - { - "type": "error", - "name": "OperatorNotRegistered", - "inputs": [] - }, - { - "type": "error", - "name": "ScalarTooLarge", - "inputs": [] - }, - { - "type": "error", - "name": "StaleBlockNumber", - "inputs": [] - } -] -```*/ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets -)] -pub mod Counter { - use super::*; - use alloy::sol_types as alloy_sol_types; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BitmapValueTooLarge()` and selector `0xca957333`. - ```solidity - error BitmapValueTooLarge(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BitmapValueTooLarge {} - #[allow( - non_camel_case_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: BitmapValueTooLarge) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BitmapValueTooLarge { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BitmapValueTooLarge { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BitmapValueTooLarge()"; - const SELECTOR: [u8; 4] = [202u8, 149u8, 115u8, 51u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BytesArrayLengthTooLong()` and selector `0xfb4a9c8e`. - ```solidity - error BytesArrayLengthTooLong(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BytesArrayLengthTooLong {} - #[allow( - non_camel_case_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: BytesArrayLengthTooLong) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BytesArrayLengthTooLong { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BytesArrayLengthTooLong { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BytesArrayLengthTooLong()"; - const SELECTOR: [u8; 4] = [251u8, 74u8, 156u8, 142u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `BytesArrayNotOrdered()` and selector `0x80c88348`. - ```solidity - error BytesArrayNotOrdered(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BytesArrayNotOrdered {} - #[allow( - non_camel_case_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: BytesArrayNotOrdered) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BytesArrayNotOrdered { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for BytesArrayNotOrdered { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BytesArrayNotOrdered()"; - const SELECTOR: [u8; 4] = [128u8, 200u8, 131u8, 72u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ECAddFailed()` and selector `0xd4b68fd7`. - ```solidity - error ECAddFailed(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ECAddFailed {} - #[allow( - non_camel_case_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: ECAddFailed) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ECAddFailed { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ECAddFailed { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ECAddFailed()"; - const SELECTOR: [u8; 4] = [212u8, 182u8, 143u8, 215u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ECMulFailed()` and selector `0x4633be32`. - ```solidity - error ECMulFailed(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ECMulFailed {} - #[allow( - non_camel_case_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: ECMulFailed) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ECMulFailed { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ECMulFailed { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ECMulFailed()"; - const SELECTOR: [u8; 4] = [70u8, 51u8, 190u8, 50u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ExpModFailed()` and selector `0xd51edae3`. - ```solidity - error ExpModFailed(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ExpModFailed {} - #[allow( - non_camel_case_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: ExpModFailed) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ExpModFailed { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ExpModFailed { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ExpModFailed()"; - const SELECTOR: [u8; 4] = [213u8, 30u8, 218u8, 227u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `FutureBlockNumber()` and selector `0x252f8a0e`. - ```solidity - error FutureBlockNumber(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct FutureBlockNumber {} - #[allow( - non_camel_case_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: FutureBlockNumber) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for FutureBlockNumber { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for FutureBlockNumber { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "FutureBlockNumber()"; - const SELECTOR: [u8; 4] = [37u8, 47u8, 138u8, 14u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InputArrayLengthMismatch()` and selector `0x43714afd`. - ```solidity - error InputArrayLengthMismatch(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InputArrayLengthMismatch {} - #[allow( - non_camel_case_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: InputArrayLengthMismatch) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InputArrayLengthMismatch { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InputArrayLengthMismatch { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InputArrayLengthMismatch()"; - const SELECTOR: [u8; 4] = [67u8, 113u8, 74u8, 253u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InputEmptyQuorumNumbers()` and selector `0x1f0405a0`. - ```solidity - error InputEmptyQuorumNumbers(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InputEmptyQuorumNumbers {} - #[allow( - non_camel_case_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: InputEmptyQuorumNumbers) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InputEmptyQuorumNumbers { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InputEmptyQuorumNumbers { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InputEmptyQuorumNumbers()"; - const SELECTOR: [u8; 4] = [31u8, 4u8, 5u8, 160u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InputNonSignerLengthMismatch()` and selector `0x5f832f41`. - ```solidity - error InputNonSignerLengthMismatch(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InputNonSignerLengthMismatch {} - #[allow( - non_camel_case_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: InputNonSignerLengthMismatch) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InputNonSignerLengthMismatch { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InputNonSignerLengthMismatch { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InputNonSignerLengthMismatch()"; - const SELECTOR: [u8; 4] = [95u8, 131u8, 47u8, 65u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InsufficientQuorumThreshold()` and selector `0x6d8605db`. - ```solidity - error InsufficientQuorumThreshold(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InsufficientQuorumThreshold {} - #[allow( - non_camel_case_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: InsufficientQuorumThreshold) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InsufficientQuorumThreshold { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InsufficientQuorumThreshold { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InsufficientQuorumThreshold()"; - const SELECTOR: [u8; 4] = [109u8, 134u8, 5u8, 219u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InvalidBLSPairingKey()` and selector `0x67988d33`. - ```solidity - error InvalidBLSPairingKey(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidBLSPairingKey {} - #[allow( - non_camel_case_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: InvalidBLSPairingKey) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidBLSPairingKey { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidBLSPairingKey { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidBLSPairingKey()"; - const SELECTOR: [u8; 4] = [103u8, 152u8, 141u8, 51u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InvalidBLSSignature()` and selector `0xab1b236b`. - ```solidity - error InvalidBLSSignature(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidBLSSignature {} - #[allow( - non_camel_case_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: InvalidBLSSignature) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidBLSSignature { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidBLSSignature { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidBLSSignature()"; - const SELECTOR: [u8; 4] = [171u8, 27u8, 35u8, 107u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InvalidHash()` and selector `0x0af806e0`. - ```solidity - error InvalidHash(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidHash {} - #[allow( - non_camel_case_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: InvalidHash) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidHash { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidHash { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidHash()"; - const SELECTOR: [u8; 4] = [10u8, 248u8, 6u8, 224u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InvalidQuorumApkHash()` and selector `0xe1310aed`. - ```solidity - error InvalidQuorumApkHash(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidQuorumApkHash {} - #[allow( - non_camel_case_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: InvalidQuorumApkHash) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidQuorumApkHash { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidQuorumApkHash { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidQuorumApkHash()"; - const SELECTOR: [u8; 4] = [225u8, 49u8, 10u8, 237u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InvalidReferenceBlocknumber()` and selector `0x4b874f45`. - ```solidity - error InvalidReferenceBlocknumber(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidReferenceBlocknumber {} - #[allow( - non_camel_case_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: InvalidReferenceBlocknumber) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidReferenceBlocknumber { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidReferenceBlocknumber { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidReferenceBlocknumber()"; - const SELECTOR: [u8; 4] = [75u8, 135u8, 79u8, 69u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `InvalidSigma()` and selector `0x55ad4720`. - ```solidity - error InvalidSigma(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct InvalidSigma {} - #[allow( - non_camel_case_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: InvalidSigma) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for InvalidSigma { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for InvalidSigma { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "InvalidSigma()"; - const SELECTOR: [u8; 4] = [85u8, 173u8, 71u8, 32u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `NonSignerPubkeysNotSorted()` and selector `0xff719414`. - ```solidity - error NonSignerPubkeysNotSorted(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct NonSignerPubkeysNotSorted {} - #[allow( - non_camel_case_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: NonSignerPubkeysNotSorted) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for NonSignerPubkeysNotSorted { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for NonSignerPubkeysNotSorted { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "NonSignerPubkeysNotSorted()"; - const SELECTOR: [u8; 4] = [255u8, 113u8, 148u8, 20u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `OnlyRegistryCoordinatorOwner()` and selector `0xe0e1e762`. - ```solidity - error OnlyRegistryCoordinatorOwner(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct OnlyRegistryCoordinatorOwner {} - #[allow( - non_camel_case_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: OnlyRegistryCoordinatorOwner) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for OnlyRegistryCoordinatorOwner { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for OnlyRegistryCoordinatorOwner { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "OnlyRegistryCoordinatorOwner()"; - const SELECTOR: [u8; 4] = [224u8, 225u8, 231u8, 98u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**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<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `ScalarTooLarge()` and selector `0xff89d4fa`. - ```solidity - error ScalarTooLarge(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct ScalarTooLarge {} - #[allow( - non_camel_case_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: ScalarTooLarge) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for ScalarTooLarge { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for ScalarTooLarge { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "ScalarTooLarge()"; - const SELECTOR: [u8; 4] = [255u8, 137u8, 212u8, 250u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Custom error with signature `StaleBlockNumber()` and selector `0x305c3e93`. - ```solidity - error StaleBlockNumber(); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct StaleBlockNumber {} - #[allow( - non_camel_case_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: StaleBlockNumber) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for StaleBlockNumber { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - #[automatically_derived] - impl alloy_sol_types::SolError for StaleBlockNumber { - type Parameters<'a> = UnderlyingSolTuple<'a>; - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "StaleBlockNumber()"; - const SELECTOR: [u8; 4] = [48u8, 92u8, 62u8, 147u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - () - } - } - }; - /**Constructor`. - ```solidity - constructor(address _registryCoordinator); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct constructorCall { - #[allow(missing_docs)] - pub _registryCoordinator: 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._registryCoordinator,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for constructorCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - _registryCoordinator: 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._registryCoordinator, - ), - ) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `BLOCK_STALE_MEASURE()` and selector `0x5e8b3f2d`. - ```solidity - function BLOCK_STALE_MEASURE() external view returns (uint32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BLOCK_STALE_MEASURECall {} - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`BLOCK_STALE_MEASURE()`](BLOCK_STALE_MEASURECall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct BLOCK_STALE_MEASUREReturn { - #[allow(missing_docs)] - 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: BLOCK_STALE_MEASURECall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BLOCK_STALE_MEASURECall { - 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: BLOCK_STALE_MEASUREReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for BLOCK_STALE_MEASUREReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for BLOCK_STALE_MEASURECall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = BLOCK_STALE_MEASUREReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<32>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "BLOCK_STALE_MEASURE()"; - const SELECTOR: [u8; 4] = [94u8, 139u8, 63u8, 45u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `QUORUM_THRESHOLD()` and selector `0x5e510b60`. - ```solidity - function QUORUM_THRESHOLD() external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct QUORUM_THRESHOLDCall {} - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`QUORUM_THRESHOLD()`](QUORUM_THRESHOLDCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct QUORUM_THRESHOLDReturn { - #[allow(missing_docs)] - 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: QUORUM_THRESHOLDCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for QUORUM_THRESHOLDCall { - 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: QUORUM_THRESHOLDReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for QUORUM_THRESHOLDReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for QUORUM_THRESHOLDCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = QUORUM_THRESHOLDReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "QUORUM_THRESHOLD()"; - const SELECTOR: [u8; 4] = [94u8, 81u8, 11u8, 96u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `THRESHOLD_DENOMINATOR()` and selector `0xef024458`. - ```solidity - function THRESHOLD_DENOMINATOR() external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct THRESHOLD_DENOMINATORCall {} - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`THRESHOLD_DENOMINATOR()`](THRESHOLD_DENOMINATORCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct THRESHOLD_DENOMINATORReturn { - #[allow(missing_docs)] - 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: THRESHOLD_DENOMINATORCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for THRESHOLD_DENOMINATORCall { - 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: THRESHOLD_DENOMINATORReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for THRESHOLD_DENOMINATORReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for THRESHOLD_DENOMINATORCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = THRESHOLD_DENOMINATORReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "THRESHOLD_DENOMINATOR()"; - const SELECTOR: [u8; 4] = [239u8, 2u8, 68u8, 88u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `blsApkRegistry()` and selector `0x5df45946`. - ```solidity - function blsApkRegistry() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct blsApkRegistryCall {} - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`blsApkRegistry()`](blsApkRegistryCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct blsApkRegistryReturn { - #[allow(missing_docs)] - 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: blsApkRegistryCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for blsApkRegistryCall { - 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: blsApkRegistryReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for blsApkRegistryReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for blsApkRegistryCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = blsApkRegistryReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "blsApkRegistry()"; - const SELECTOR: [u8; 4] = [93u8, 244u8, 89u8, 70u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `checkSignatures(bytes32,bytes,uint32,(uint32[],(uint256,uint256)[],(uint256,uint256)[],(uint256[2],uint256[2]),(uint256,uint256),uint32[],uint32[],uint32[][]))` and selector `0x6efb4636`. - ```solidity - function checkSignatures(bytes32 msgHash, bytes memory quorumNumbers, uint32 referenceBlockNumber, IBLSSignatureCheckerTypes.NonSignerStakesAndSignature memory params) external view returns (IBLSSignatureCheckerTypes.QuorumStakeTotals memory, bytes32); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct checkSignaturesCall { - #[allow(missing_docs)] - pub msgHash: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - #[allow(missing_docs)] - pub referenceBlockNumber: u32, - #[allow(missing_docs)] - pub params: ::RustType, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`checkSignatures(bytes32,bytes,uint32,(uint32[],(uint256,uint256)[],(uint256,uint256)[],(uint256[2],uint256[2]),(uint256,uint256),uint32[],uint32[],uint32[][]))`](checkSignaturesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct checkSignaturesReturn { - #[allow(missing_docs)] - pub _0: - ::RustType, - #[allow(missing_docs)] - pub _1: 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::FixedBytes<32>, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Uint<32>, - IBLSSignatureCheckerTypes::NonSignerStakesAndSignature, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::FixedBytes<32>, - alloy::sol_types::private::Bytes, - u32, - ::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: checkSignaturesCall) -> Self { - ( - value.msgHash, - value.quorumNumbers, - value.referenceBlockNumber, - value.params, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for checkSignaturesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - msgHash: tuple.0, - quorumNumbers: tuple.1, - referenceBlockNumber: tuple.2, - params: tuple.3, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - IBLSSignatureCheckerTypes::QuorumStakeTotals, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - ::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: checkSignaturesReturn) -> Self { - (value._0, value._1) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for checkSignaturesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - _0: tuple.0, - _1: tuple.1, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for checkSignaturesCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Uint<32>, - IBLSSignatureCheckerTypes::NonSignerStakesAndSignature, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = checkSignaturesReturn; - type ReturnTuple<'a> = ( - IBLSSignatureCheckerTypes::QuorumStakeTotals, - alloy::sol_types::sol_data::FixedBytes<32>, - ); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "checkSignatures(bytes32,bytes,uint32,(uint32[],(uint256,uint256)[],(uint256,uint256)[],(uint256[2],uint256[2]),(uint256,uint256),uint32[],uint32[],uint32[][]))"; - const SELECTOR: [u8; 4] = [110u8, 251u8, 70u8, 54u8]; - #[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.msgHash), - ::tokenize( - &self.quorumNumbers, - ), - as alloy_sol_types::SolType>::tokenize(&self.referenceBlockNumber), - ::tokenize( - &self.params, - ), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `delegation()` and selector `0xdf5cf723`. - ```solidity - function delegation() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegationCall {} - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`delegation()`](delegationCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct delegationReturn { - #[allow(missing_docs)] - 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: delegationCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegationCall { - 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: delegationReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for delegationReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for delegationCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = delegationReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "delegation()"; - const SELECTOR: [u8; 4] = [223u8, 92u8, 247u8, 35u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getBatchOperatorFromId(address,bytes32[])` and selector `0x4d2b57fe`. - ```solidity - function getBatchOperatorFromId(address registryCoordinator, bytes32[] memory operatorIds) external view returns (address[] memory operators); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getBatchOperatorFromIdCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorIds: alloy::sol_types::private::Vec>, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getBatchOperatorFromId(address,bytes32[])`](getBatchOperatorFromIdCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getBatchOperatorFromIdReturn { - #[allow(missing_docs)] - pub operators: 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: getBatchOperatorFromIdCall) -> Self { - (value.registryCoordinator, value.operatorIds) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getBatchOperatorFromIdCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - operatorIds: tuple.1, - } - } - } - } - { - #[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: getBatchOperatorFromIdReturn) -> Self { - (value.operators,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getBatchOperatorFromIdReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { operators: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getBatchOperatorFromIdCall { - 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 = getBatchOperatorFromIdReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getBatchOperatorFromId(address,bytes32[])"; - const SELECTOR: [u8; 4] = [77u8, 43u8, 87u8, 254u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - , - > as alloy_sol_types::SolType>::tokenize(&self.operatorIds), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getBatchOperatorId(address,address[])` and selector `0x31b36bd9`. - ```solidity - function getBatchOperatorId(address registryCoordinator, address[] memory operators) external view returns (bytes32[] memory operatorIds); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getBatchOperatorIdCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operators: alloy::sol_types::private::Vec, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getBatchOperatorId(address,address[])`](getBatchOperatorIdCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getBatchOperatorIdReturn { - #[allow(missing_docs)] - pub operatorIds: 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: getBatchOperatorIdCall) -> Self { - (value.registryCoordinator, value.operators) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getBatchOperatorIdCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - operators: tuple.1, - } - } - } - } - { - #[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: getBatchOperatorIdReturn) -> Self { - (value.operatorIds,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getBatchOperatorIdReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - operatorIds: tuple.0, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getBatchOperatorIdCall { - 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 = getBatchOperatorIdReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "getBatchOperatorId(address,address[])"; - const SELECTOR: [u8; 4] = [49u8, 179u8, 107u8, 217u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getCheckSignaturesIndices(address,uint32,bytes,bytes32[])` and selector `0x4f739f74`. - ```solidity - function getCheckSignaturesIndices(address registryCoordinator, uint32 referenceBlockNumber, bytes memory quorumNumbers, bytes32[] memory nonSignerOperatorIds) external view returns (OperatorStateRetriever.CheckSignaturesIndices memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getCheckSignaturesIndicesCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub referenceBlockNumber: u32, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - #[allow(missing_docs)] - pub nonSignerOperatorIds: - alloy::sol_types::private::Vec>, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getCheckSignaturesIndices(address,uint32,bytes,bytes32[])`](getCheckSignaturesIndicesCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getCheckSignaturesIndicesReturn { - #[allow(missing_docs)] - 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, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Array>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - u32, - alloy::sol_types::private::Bytes, - 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: getCheckSignaturesIndicesCall) -> Self { - ( - value.registryCoordinator, - value.referenceBlockNumber, - value.quorumNumbers, - value.nonSignerOperatorIds, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getCheckSignaturesIndicesCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - referenceBlockNumber: tuple.1, - quorumNumbers: tuple.2, - nonSignerOperatorIds: tuple.3, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (OperatorStateRetriever::CheckSignaturesIndices,); - #[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: getCheckSignaturesIndicesReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getCheckSignaturesIndicesReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getCheckSignaturesIndicesCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Uint<32>, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Array>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getCheckSignaturesIndicesReturn; - type ReturnTuple<'a> = (OperatorStateRetriever::CheckSignaturesIndices,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "getCheckSignaturesIndices(address,uint32,bytes,bytes32[])"; - const SELECTOR: [u8; 4] = [79u8, 115u8, 159u8, 116u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - as alloy_sol_types::SolType>::tokenize(&self.referenceBlockNumber), - ::tokenize( - &self.quorumNumbers, - ), - , - > as alloy_sol_types::SolType>::tokenize(&self.nonSignerOperatorIds), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getNonSignerStakesAndSignature(address,bytes,(uint256,uint256),address[],uint32)` and selector `0x932a4caa`. - ```solidity - function getNonSignerStakesAndSignature(address registryCoordinator, bytes memory quorumNumbers, BN254.G1Point memory sigma, address[] memory operators, uint32 blockNumber) external view returns (IBLSSignatureCheckerTypes.NonSignerStakesAndSignature memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getNonSignerStakesAndSignatureCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - #[allow(missing_docs)] - pub sigma: ::RustType, - #[allow(missing_docs)] - pub operators: alloy::sol_types::private::Vec, - #[allow(missing_docs)] - pub blockNumber: u32, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getNonSignerStakesAndSignature(address,bytes,(uint256,uint256),address[],uint32)`](getNonSignerStakesAndSignatureCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getNonSignerStakesAndSignatureReturn { - #[allow(missing_docs)] - 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, - alloy::sol_types::sol_data::Bytes, - BN254::G1Point, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Bytes, - ::RustType, - alloy::sol_types::private::Vec, - 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: getNonSignerStakesAndSignatureCall) -> Self { - ( - value.registryCoordinator, - value.quorumNumbers, - value.sigma, - value.operators, - value.blockNumber, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getNonSignerStakesAndSignatureCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - quorumNumbers: tuple.1, - sigma: tuple.2, - operators: tuple.3, - blockNumber: tuple.4, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = (IBLSSignatureCheckerTypes::NonSignerStakesAndSignature,); - #[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: getNonSignerStakesAndSignatureReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getNonSignerStakesAndSignatureReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getNonSignerStakesAndSignatureCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Bytes, - BN254::G1Point, - alloy::sol_types::sol_data::Array, - alloy::sol_types::sol_data::Uint<32>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getNonSignerStakesAndSignatureReturn; - type ReturnTuple<'a> = (IBLSSignatureCheckerTypes::NonSignerStakesAndSignature,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "getNonSignerStakesAndSignature(address,bytes,(uint256,uint256),address[],uint32)"; - const SELECTOR: [u8; 4] = [147u8, 42u8, 76u8, 170u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - ::tokenize( - &self.quorumNumbers, - ), - ::tokenize(&self.sigma), - as alloy_sol_types::SolType>::tokenize(&self.operators), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getOperatorState(address,bytes,uint32)` and selector `0x3563b0d1`. - ```solidity - function getOperatorState(address registryCoordinator, bytes memory quorumNumbers, uint32 blockNumber) external view returns (OperatorStateRetriever.Operator[][] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorState_0Call { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - #[allow(missing_docs)] - pub blockNumber: u32, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getOperatorState(address,bytes,uint32)`](getOperatorState_0Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorState_0Return { - #[allow(missing_docs)] - pub _0: alloy::sol_types::private::Vec< - 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::Address, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Bytes, - 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: getOperatorState_0Call) -> Self { - ( - value.registryCoordinator, - value.quorumNumbers, - value.blockNumber, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorState_0Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - quorumNumbers: tuple.1, - blockNumber: tuple.2, - } - } - } - } - { - #[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< - ::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: getOperatorState_0Return) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorState_0Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorState_0Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Uint<32>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getOperatorState_0Return; - 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 = "getOperatorState(address,bytes,uint32)"; - const SELECTOR: [u8; 4] = [53u8, 99u8, 176u8, 209u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - ::tokenize( - &self.quorumNumbers, - ), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getOperatorState(address,bytes32,uint32)` and selector `0xcefdc1d4`. - ```solidity - function getOperatorState(address registryCoordinator, bytes32 operatorId, uint32 blockNumber) external view returns (uint256, OperatorStateRetriever.Operator[][] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorState_1Call { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorId: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub blockNumber: u32, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getOperatorState(address,bytes32,uint32)`](getOperatorState_1Call) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getOperatorState_1Return { - #[allow(missing_docs)] - pub _0: alloy::sol_types::private::primitives::aliases::U256, - #[allow(missing_docs)] - pub _1: alloy::sol_types::private::Vec< - 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::Address, - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - 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: getOperatorState_1Call) -> Self { - ( - value.registryCoordinator, - value.operatorId, - value.blockNumber, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorState_1Call { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - operatorId: tuple.1, - blockNumber: tuple.2, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Uint<256>, - alloy::sol_types::sol_data::Array< - alloy::sol_types::sol_data::Array, - >, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::primitives::aliases::U256, - 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: getOperatorState_1Return) -> Self { - (value._0, value._1) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getOperatorState_1Return { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - _0: tuple.0, - _1: tuple.1, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getOperatorState_1Call { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - 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 = getOperatorState_1Return; - type ReturnTuple<'a> = ( - alloy::sol_types::sol_data::Uint<256>, - 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 = "getOperatorState(address,bytes32,uint32)"; - const SELECTOR: [u8; 4] = [206u8, 253u8, 193u8, 212u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - as alloy_sol_types::SolType>::tokenize(&self.operatorId), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `getQuorumBitmapsAtBlockNumber(address,bytes32[],uint32)` and selector `0x5c155662`. - ```solidity - function getQuorumBitmapsAtBlockNumber(address registryCoordinator, bytes32[] memory operatorIds, uint32 blockNumber) external view returns (uint256[] memory); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getQuorumBitmapsAtBlockNumberCall { - #[allow(missing_docs)] - pub registryCoordinator: alloy::sol_types::private::Address, - #[allow(missing_docs)] - pub operatorIds: alloy::sol_types::private::Vec>, - #[allow(missing_docs)] - pub blockNumber: u32, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`getQuorumBitmapsAtBlockNumber(address,bytes32[],uint32)`](getQuorumBitmapsAtBlockNumberCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct getQuorumBitmapsAtBlockNumberReturn { - #[allow(missing_docs)] - 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>, - alloy::sol_types::sol_data::Uint<32>, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::Address, - alloy::sol_types::private::Vec>, - 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: getQuorumBitmapsAtBlockNumberCall) -> Self { - ( - value.registryCoordinator, - value.operatorIds, - value.blockNumber, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getQuorumBitmapsAtBlockNumberCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - registryCoordinator: tuple.0, - operatorIds: tuple.1, - blockNumber: tuple.2, - } - } - } - } - { - #[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: getQuorumBitmapsAtBlockNumberReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for getQuorumBitmapsAtBlockNumberReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for getQuorumBitmapsAtBlockNumberCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::Address, - alloy::sol_types::sol_data::Array>, - alloy::sol_types::sol_data::Uint<32>, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = getQuorumBitmapsAtBlockNumberReturn; - type ReturnTuple<'a> = - (alloy::sol_types::sol_data::Array>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = - "getQuorumBitmapsAtBlockNumber(address,bytes32[],uint32)"; - const SELECTOR: [u8; 4] = [92u8, 21u8, 86u8, 98u8]; - #[inline] - fn new<'a>( - tuple: as alloy_sol_types::SolType>::RustType, - ) -> Self { - tuple.into() - } - #[inline] - fn tokenize(&self) -> Self::Token<'_> { - ( - ::tokenize( - &self.registryCoordinator, - ), - , - > as alloy_sol_types::SolType>::tokenize(&self.operatorIds), - 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `increment(bytes32,bytes,uint32,(uint32[],(uint256,uint256)[],(uint256,uint256)[],(uint256[2],uint256[2]),(uint256,uint256),uint32[],uint32[],uint32[][]))` and selector `0x85047a49`. - ```solidity - function increment(bytes32 msgHash, bytes memory quorumNumbers, uint32 referenceBlockNumber, IBLSSignatureCheckerTypes.NonSignerStakesAndSignature memory params) external; - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct incrementCall { - #[allow(missing_docs)] - pub msgHash: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub quorumNumbers: alloy::sol_types::private::Bytes, - #[allow(missing_docs)] - pub referenceBlockNumber: u32, - #[allow(missing_docs)] - pub params: ::RustType, - } - ///Container type for the return parameters of the [`increment(bytes32,bytes,uint32,(uint32[],(uint256,uint256)[],(uint256,uint256)[],(uint256[2],uint256[2]),(uint256,uint256),uint32[],uint32[],uint32[][]))`](incrementCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct incrementReturn {} - #[allow( - non_camel_case_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, - alloy::sol_types::sol_data::Uint<32>, - IBLSSignatureCheckerTypes::NonSignerStakesAndSignature, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::FixedBytes<32>, - alloy::sol_types::private::Bytes, - u32, - ::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: incrementCall) -> Self { - ( - value.msgHash, - value.quorumNumbers, - value.referenceBlockNumber, - value.params, - ) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for incrementCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - msgHash: tuple.0, - quorumNumbers: tuple.1, - referenceBlockNumber: tuple.2, - params: 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: incrementReturn) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for incrementReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self {} - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for incrementCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::FixedBytes<32>, - alloy::sol_types::sol_data::Bytes, - alloy::sol_types::sol_data::Uint<32>, - IBLSSignatureCheckerTypes::NonSignerStakesAndSignature, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = incrementReturn; - type ReturnTuple<'a> = (); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "increment(bytes32,bytes,uint32,(uint32[],(uint256,uint256)[],(uint256,uint256)[],(uint256[2],uint256[2]),(uint256,uint256),uint32[],uint32[],uint32[][]))"; - const SELECTOR: [u8; 4] = [133u8, 4u8, 122u8, 73u8]; - #[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.msgHash), - ::tokenize( - &self.quorumNumbers, - ), - as alloy_sol_types::SolType>::tokenize(&self.referenceBlockNumber), - ::tokenize( - &self.params, - ), - ) - } - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `number()` and selector `0x8381f58a`. - ```solidity - function number() external view returns (uint256); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct numberCall {} - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`number()`](numberCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct numberReturn { - #[allow(missing_docs)] - 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: numberCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for numberCall { - 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: numberReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for numberReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for numberCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = numberReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "number()"; - const SELECTOR: [u8; 4] = [131u8, 129u8, 245u8, 138u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `registryCoordinator()` and selector `0x6d14a987`. - ```solidity - function registryCoordinator() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registryCoordinatorCall {} - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`registryCoordinator()`](registryCoordinatorCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct registryCoordinatorReturn { - #[allow(missing_docs)] - 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: registryCoordinatorCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registryCoordinatorCall { - 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: registryCoordinatorReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for registryCoordinatorReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for registryCoordinatorCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = registryCoordinatorReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "registryCoordinator()"; - const SELECTOR: [u8; 4] = [109u8, 20u8, 169u8, 135u8]; - #[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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `stakeRegistry()` and selector `0x68304835`. - ```solidity - function stakeRegistry() external view returns (address); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct stakeRegistryCall {} - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`stakeRegistry()`](stakeRegistryCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct stakeRegistryReturn { - #[allow(missing_docs)] - 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: stakeRegistryCall) -> Self { - () - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for stakeRegistryCall { - 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: stakeRegistryReturn) -> Self { - (value._0,) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for stakeRegistryReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { _0: tuple.0 } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for stakeRegistryCall { - type Parameters<'a> = (); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = stakeRegistryReturn; - type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "stakeRegistry()"; - const SELECTOR: [u8; 4] = [104u8, 48u8, 72u8, 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) - } - } - }; - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - /**Function with signature `trySignatureAndApkVerification(bytes32,(uint256,uint256),(uint256[2],uint256[2]),(uint256,uint256))` and selector `0x171f1d5b`. - ```solidity - function trySignatureAndApkVerification(bytes32 msgHash, BN254.G1Point memory apk, BN254.G2Point memory apkG2, BN254.G1Point memory sigma) external view returns (bool pairingSuccessful, bool siganatureIsValid); - ```*/ - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct trySignatureAndApkVerificationCall { - #[allow(missing_docs)] - pub msgHash: alloy::sol_types::private::FixedBytes<32>, - #[allow(missing_docs)] - pub apk: ::RustType, - #[allow(missing_docs)] - pub apkG2: ::RustType, - #[allow(missing_docs)] - pub sigma: ::RustType, - } - #[derive(serde::Serialize, serde::Deserialize, Default, Debug, PartialEq, Eq, Hash)] - ///Container type for the return parameters of the [`trySignatureAndApkVerification(bytes32,(uint256,uint256),(uint256[2],uint256[2]),(uint256,uint256))`](trySignatureAndApkVerificationCall) function. - #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)] - #[derive(Clone)] - pub struct trySignatureAndApkVerificationReturn { - #[allow(missing_docs)] - pub pairingSuccessful: bool, - #[allow(missing_docs)] - pub siganatureIsValid: 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>, - BN254::G1Point, - BN254::G2Point, - BN254::G1Point, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = ( - alloy::sol_types::private::FixedBytes<32>, - ::RustType, - ::RustType, - ::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: trySignatureAndApkVerificationCall) -> Self { - (value.msgHash, value.apk, value.apkG2, value.sigma) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for trySignatureAndApkVerificationCall { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - msgHash: tuple.0, - apk: tuple.1, - apkG2: tuple.2, - sigma: tuple.3, - } - } - } - } - { - #[doc(hidden)] - type UnderlyingSolTuple<'a> = ( - alloy::sol_types::sol_data::Bool, - alloy::sol_types::sol_data::Bool, - ); - #[doc(hidden)] - type UnderlyingRustTuple<'a> = (bool, 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: trySignatureAndApkVerificationReturn) -> Self { - (value.pairingSuccessful, value.siganatureIsValid) - } - } - #[automatically_derived] - #[doc(hidden)] - impl ::core::convert::From> for trySignatureAndApkVerificationReturn { - fn from(tuple: UnderlyingRustTuple<'_>) -> Self { - Self { - pairingSuccessful: tuple.0, - siganatureIsValid: tuple.1, - } - } - } - } - #[automatically_derived] - impl alloy_sol_types::SolCall for trySignatureAndApkVerificationCall { - type Parameters<'a> = ( - alloy::sol_types::sol_data::FixedBytes<32>, - BN254::G1Point, - BN254::G2Point, - BN254::G1Point, - ); - type Token<'a> = as alloy_sol_types::SolType>::Token<'a>; - type Return = trySignatureAndApkVerificationReturn; - type ReturnTuple<'a> = ( - alloy::sol_types::sol_data::Bool, - alloy::sol_types::sol_data::Bool, - ); - type ReturnToken<'a> = as alloy_sol_types::SolType>::Token<'a>; - const SIGNATURE: &'static str = "trySignatureAndApkVerification(bytes32,(uint256,uint256),(uint256[2],uint256[2]),(uint256,uint256))"; - const SELECTOR: [u8; 4] = [23u8, 31u8, 29u8, 91u8]; - #[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.msgHash), - ::tokenize(&self.apk), - ::tokenize(&self.apkG2), - ::tokenize(&self.sigma), - ) - } - #[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 [`Counter`](self) function calls. - #[derive(serde::Serialize, serde::Deserialize)] - pub enum CounterCalls { - #[allow(missing_docs)] - BLOCK_STALE_MEASURE(BLOCK_STALE_MEASURECall), - #[allow(missing_docs)] - QUORUM_THRESHOLD(QUORUM_THRESHOLDCall), - #[allow(missing_docs)] - THRESHOLD_DENOMINATOR(THRESHOLD_DENOMINATORCall), - #[allow(missing_docs)] - blsApkRegistry(blsApkRegistryCall), - #[allow(missing_docs)] - checkSignatures(checkSignaturesCall), - #[allow(missing_docs)] - delegation(delegationCall), - #[allow(missing_docs)] - getBatchOperatorFromId(getBatchOperatorFromIdCall), - #[allow(missing_docs)] - getBatchOperatorId(getBatchOperatorIdCall), - #[allow(missing_docs)] - getCheckSignaturesIndices(getCheckSignaturesIndicesCall), - #[allow(missing_docs)] - getNonSignerStakesAndSignature(getNonSignerStakesAndSignatureCall), - #[allow(missing_docs)] - getOperatorState_0(getOperatorState_0Call), - #[allow(missing_docs)] - getOperatorState_1(getOperatorState_1Call), - #[allow(missing_docs)] - getQuorumBitmapsAtBlockNumber(getQuorumBitmapsAtBlockNumberCall), - #[allow(missing_docs)] - increment(incrementCall), - #[allow(missing_docs)] - number(numberCall), - #[allow(missing_docs)] - registryCoordinator(registryCoordinatorCall), - #[allow(missing_docs)] - stakeRegistry(stakeRegistryCall), - #[allow(missing_docs)] - trySignatureAndApkVerification(trySignatureAndApkVerificationCall), - } - #[automatically_derived] - impl CounterCalls { - /// 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]] = &[ - [23u8, 31u8, 29u8, 91u8], - [49u8, 179u8, 107u8, 217u8], - [53u8, 99u8, 176u8, 209u8], - [77u8, 43u8, 87u8, 254u8], - [79u8, 115u8, 159u8, 116u8], - [92u8, 21u8, 86u8, 98u8], - [93u8, 244u8, 89u8, 70u8], - [94u8, 81u8, 11u8, 96u8], - [94u8, 139u8, 63u8, 45u8], - [104u8, 48u8, 72u8, 53u8], - [109u8, 20u8, 169u8, 135u8], - [110u8, 251u8, 70u8, 54u8], - [131u8, 129u8, 245u8, 138u8], - [133u8, 4u8, 122u8, 73u8], - [147u8, 42u8, 76u8, 170u8], - [206u8, 253u8, 193u8, 212u8], - [223u8, 92u8, 247u8, 35u8], - [239u8, 2u8, 68u8, 88u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for CounterCalls { - const NAME: &'static str = "CounterCalls"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 18usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::BLOCK_STALE_MEASURE(_) => { - ::SELECTOR - } - Self::QUORUM_THRESHOLD(_) => { - ::SELECTOR - } - Self::THRESHOLD_DENOMINATOR(_) => { - ::SELECTOR - } - Self::blsApkRegistry(_) => { - ::SELECTOR - } - Self::checkSignatures(_) => { - ::SELECTOR - } - Self::delegation(_) => ::SELECTOR, - Self::getBatchOperatorFromId(_) => { - ::SELECTOR - } - Self::getBatchOperatorId(_) => { - ::SELECTOR - } - Self::getCheckSignaturesIndices(_) => { - ::SELECTOR - } - Self::getNonSignerStakesAndSignature(_) => { - ::SELECTOR - } - Self::getOperatorState_0(_) => { - ::SELECTOR - } - Self::getOperatorState_1(_) => { - ::SELECTOR - } - Self::getQuorumBitmapsAtBlockNumber(_) => { - ::SELECTOR - } - Self::increment(_) => ::SELECTOR, - Self::number(_) => ::SELECTOR, - Self::registryCoordinator(_) => { - ::SELECTOR - } - Self::stakeRegistry(_) => ::SELECTOR, - Self::trySignatureAndApkVerification(_) => { - ::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 trySignatureAndApkVerification( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(CounterCalls::trySignatureAndApkVerification) - } - trySignatureAndApkVerification - }, - { - fn getBatchOperatorId( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterCalls::getBatchOperatorId) - } - getBatchOperatorId - }, - { - fn getOperatorState_0( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterCalls::getOperatorState_0) - } - getOperatorState_0 - }, - { - fn getBatchOperatorFromId( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterCalls::getBatchOperatorFromId) - } - getBatchOperatorFromId - }, - { - fn getCheckSignaturesIndices( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterCalls::getCheckSignaturesIndices) - } - getCheckSignaturesIndices - }, - { - fn getQuorumBitmapsAtBlockNumber( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(CounterCalls::getQuorumBitmapsAtBlockNumber) - } - getQuorumBitmapsAtBlockNumber - }, - { - fn blsApkRegistry( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterCalls::blsApkRegistry) - } - blsApkRegistry - }, - { - fn QUORUM_THRESHOLD( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterCalls::QUORUM_THRESHOLD) - } - QUORUM_THRESHOLD - }, - { - fn BLOCK_STALE_MEASURE( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterCalls::BLOCK_STALE_MEASURE) - } - BLOCK_STALE_MEASURE - }, - { - fn stakeRegistry( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterCalls::stakeRegistry) - } - stakeRegistry - }, - { - fn registryCoordinator( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterCalls::registryCoordinator) - } - registryCoordinator - }, - { - fn checkSignatures( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterCalls::checkSignatures) - } - checkSignatures - }, - { - fn number( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(CounterCalls::number) - } - number - }, - { - fn increment( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(CounterCalls::increment) - } - increment - }, - { - fn getNonSignerStakesAndSignature( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, - validate, - ) - .map(CounterCalls::getNonSignerStakesAndSignature) - } - getNonSignerStakesAndSignature - }, - { - fn getOperatorState_1( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterCalls::getOperatorState_1) - } - getOperatorState_1 - }, - { - fn delegation( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(CounterCalls::delegation) - } - delegation - }, - { - fn THRESHOLD_DENOMINATOR( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterCalls::THRESHOLD_DENOMINATOR) - } - THRESHOLD_DENOMINATOR - }, - ]; - 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::BLOCK_STALE_MEASURE(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::QUORUM_THRESHOLD(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::THRESHOLD_DENOMINATOR(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::blsApkRegistry(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::checkSignatures(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::delegation(inner) => { - ::abi_encoded_size(inner) - } - Self::getBatchOperatorFromId(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getBatchOperatorId(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getCheckSignaturesIndices(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getNonSignerStakesAndSignature(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorState_0(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getOperatorState_1(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::getQuorumBitmapsAtBlockNumber(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::increment(inner) => { - ::abi_encoded_size(inner) - } - Self::number(inner) => { - ::abi_encoded_size(inner) - } - Self::registryCoordinator(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::stakeRegistry(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::trySignatureAndApkVerification(inner) => { - ::abi_encoded_size( - inner, - ) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::BLOCK_STALE_MEASURE(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::QUORUM_THRESHOLD(inner) => { - ::abi_encode_raw(inner, out) - } - Self::THRESHOLD_DENOMINATOR(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::blsApkRegistry(inner) => { - ::abi_encode_raw(inner, out) - } - Self::checkSignatures(inner) => { - ::abi_encode_raw(inner, out) - } - Self::delegation(inner) => { - ::abi_encode_raw(inner, out) - } - Self::getBatchOperatorFromId(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::getBatchOperatorId(inner) => { - ::abi_encode_raw(inner, out) - } - Self::getCheckSignaturesIndices(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::getNonSignerStakesAndSignature(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::getOperatorState_0(inner) => { - ::abi_encode_raw(inner, out) - } - Self::getOperatorState_1(inner) => { - ::abi_encode_raw(inner, out) - } - Self::getQuorumBitmapsAtBlockNumber(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::increment(inner) => { - ::abi_encode_raw(inner, out) - } - Self::number(inner) => { - ::abi_encode_raw(inner, out) - } - Self::registryCoordinator(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::stakeRegistry(inner) => { - ::abi_encode_raw(inner, out) - } - Self::trySignatureAndApkVerification(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - } - } - } - ///Container for all the [`Counter`](self) custom errors. - #[derive(serde::Serialize, serde::Deserialize, Debug, PartialEq, Eq, Hash)] - pub enum CounterErrors { - #[allow(missing_docs)] - BitmapValueTooLarge(BitmapValueTooLarge), - #[allow(missing_docs)] - BytesArrayLengthTooLong(BytesArrayLengthTooLong), - #[allow(missing_docs)] - BytesArrayNotOrdered(BytesArrayNotOrdered), - #[allow(missing_docs)] - ECAddFailed(ECAddFailed), - #[allow(missing_docs)] - ECMulFailed(ECMulFailed), - #[allow(missing_docs)] - ExpModFailed(ExpModFailed), - #[allow(missing_docs)] - FutureBlockNumber(FutureBlockNumber), - #[allow(missing_docs)] - InputArrayLengthMismatch(InputArrayLengthMismatch), - #[allow(missing_docs)] - InputEmptyQuorumNumbers(InputEmptyQuorumNumbers), - #[allow(missing_docs)] - InputNonSignerLengthMismatch(InputNonSignerLengthMismatch), - #[allow(missing_docs)] - InsufficientQuorumThreshold(InsufficientQuorumThreshold), - #[allow(missing_docs)] - InvalidBLSPairingKey(InvalidBLSPairingKey), - #[allow(missing_docs)] - InvalidBLSSignature(InvalidBLSSignature), - #[allow(missing_docs)] - InvalidHash(InvalidHash), - #[allow(missing_docs)] - InvalidQuorumApkHash(InvalidQuorumApkHash), - #[allow(missing_docs)] - InvalidReferenceBlocknumber(InvalidReferenceBlocknumber), - #[allow(missing_docs)] - InvalidSigma(InvalidSigma), - #[allow(missing_docs)] - NonSignerPubkeysNotSorted(NonSignerPubkeysNotSorted), - #[allow(missing_docs)] - OnlyRegistryCoordinatorOwner(OnlyRegistryCoordinatorOwner), - #[allow(missing_docs)] - OperatorNotRegistered(OperatorNotRegistered), - #[allow(missing_docs)] - ScalarTooLarge(ScalarTooLarge), - #[allow(missing_docs)] - StaleBlockNumber(StaleBlockNumber), - } - #[automatically_derived] - impl CounterErrors { - /// 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]] = &[ - [10u8, 248u8, 6u8, 224u8], - [31u8, 4u8, 5u8, 160u8], - [37u8, 47u8, 138u8, 14u8], - [37u8, 236u8, 108u8, 31u8], - [48u8, 92u8, 62u8, 147u8], - [67u8, 113u8, 74u8, 253u8], - [70u8, 51u8, 190u8, 50u8], - [75u8, 135u8, 79u8, 69u8], - [85u8, 173u8, 71u8, 32u8], - [95u8, 131u8, 47u8, 65u8], - [103u8, 152u8, 141u8, 51u8], - [109u8, 134u8, 5u8, 219u8], - [128u8, 200u8, 131u8, 72u8], - [171u8, 27u8, 35u8, 107u8], - [202u8, 149u8, 115u8, 51u8], - [212u8, 182u8, 143u8, 215u8], - [213u8, 30u8, 218u8, 227u8], - [224u8, 225u8, 231u8, 98u8], - [225u8, 49u8, 10u8, 237u8], - [251u8, 74u8, 156u8, 142u8], - [255u8, 113u8, 148u8, 20u8], - [255u8, 137u8, 212u8, 250u8], - ]; - } - #[automatically_derived] - impl alloy_sol_types::SolInterface for CounterErrors { - const NAME: &'static str = "CounterErrors"; - const MIN_DATA_LENGTH: usize = 0usize; - const COUNT: usize = 22usize; - #[inline] - fn selector(&self) -> [u8; 4] { - match self { - Self::BitmapValueTooLarge(_) => { - ::SELECTOR - } - Self::BytesArrayLengthTooLong(_) => { - ::SELECTOR - } - Self::BytesArrayNotOrdered(_) => { - ::SELECTOR - } - Self::ECAddFailed(_) => ::SELECTOR, - Self::ECMulFailed(_) => ::SELECTOR, - Self::ExpModFailed(_) => ::SELECTOR, - Self::FutureBlockNumber(_) => { - ::SELECTOR - } - Self::InputArrayLengthMismatch(_) => { - ::SELECTOR - } - Self::InputEmptyQuorumNumbers(_) => { - ::SELECTOR - } - Self::InputNonSignerLengthMismatch(_) => { - ::SELECTOR - } - Self::InsufficientQuorumThreshold(_) => { - ::SELECTOR - } - Self::InvalidBLSPairingKey(_) => { - ::SELECTOR - } - Self::InvalidBLSSignature(_) => { - ::SELECTOR - } - Self::InvalidHash(_) => ::SELECTOR, - Self::InvalidQuorumApkHash(_) => { - ::SELECTOR - } - Self::InvalidReferenceBlocknumber(_) => { - ::SELECTOR - } - Self::InvalidSigma(_) => ::SELECTOR, - Self::NonSignerPubkeysNotSorted(_) => { - ::SELECTOR - } - Self::OnlyRegistryCoordinatorOwner(_) => { - ::SELECTOR - } - Self::OperatorNotRegistered(_) => { - ::SELECTOR - } - Self::ScalarTooLarge(_) => ::SELECTOR, - Self::StaleBlockNumber(_) => { - ::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 InvalidHash( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(CounterErrors::InvalidHash) - } - InvalidHash - }, - { - fn InputEmptyQuorumNumbers( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::InputEmptyQuorumNumbers) - } - InputEmptyQuorumNumbers - }, - { - fn FutureBlockNumber( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::FutureBlockNumber) - } - FutureBlockNumber - }, - { - fn OperatorNotRegistered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::OperatorNotRegistered) - } - OperatorNotRegistered - }, - { - fn StaleBlockNumber( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::StaleBlockNumber) - } - StaleBlockNumber - }, - { - fn InputArrayLengthMismatch( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::InputArrayLengthMismatch) - } - InputArrayLengthMismatch - }, - { - fn ECMulFailed( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(CounterErrors::ECMulFailed) - } - ECMulFailed - }, - { - fn InvalidReferenceBlocknumber( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::InvalidReferenceBlocknumber) - } - InvalidReferenceBlocknumber - }, - { - fn InvalidSigma( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(CounterErrors::InvalidSigma) - } - InvalidSigma - }, - { - fn InputNonSignerLengthMismatch( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::InputNonSignerLengthMismatch) - } - InputNonSignerLengthMismatch - }, - { - fn InvalidBLSPairingKey( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::InvalidBLSPairingKey) - } - InvalidBLSPairingKey - }, - { - fn InsufficientQuorumThreshold( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::InsufficientQuorumThreshold) - } - InsufficientQuorumThreshold - }, - { - fn BytesArrayNotOrdered( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::BytesArrayNotOrdered) - } - BytesArrayNotOrdered - }, - { - fn InvalidBLSSignature( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::InvalidBLSSignature) - } - InvalidBLSSignature - }, - { - fn BitmapValueTooLarge( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::BitmapValueTooLarge) - } - BitmapValueTooLarge - }, - { - fn ECAddFailed( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(CounterErrors::ECAddFailed) - } - ECAddFailed - }, - { - fn ExpModFailed( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw(data, validate) - .map(CounterErrors::ExpModFailed) - } - ExpModFailed - }, - { - fn OnlyRegistryCoordinatorOwner( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::OnlyRegistryCoordinatorOwner) - } - OnlyRegistryCoordinatorOwner - }, - { - fn InvalidQuorumApkHash( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::InvalidQuorumApkHash) - } - InvalidQuorumApkHash - }, - { - fn BytesArrayLengthTooLong( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::BytesArrayLengthTooLong) - } - BytesArrayLengthTooLong - }, - { - fn NonSignerPubkeysNotSorted( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::NonSignerPubkeysNotSorted) - } - NonSignerPubkeysNotSorted - }, - { - fn ScalarTooLarge( - data: &[u8], - validate: bool, - ) -> alloy_sol_types::Result { - ::abi_decode_raw( - data, validate, - ) - .map(CounterErrors::ScalarTooLarge) - } - ScalarTooLarge - }, - ]; - 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::BitmapValueTooLarge(inner) => { - ::abi_encoded_size(inner) - } - Self::BytesArrayLengthTooLong(inner) => { - ::abi_encoded_size(inner) - } - Self::BytesArrayNotOrdered(inner) => { - ::abi_encoded_size(inner) - } - Self::ECAddFailed(inner) => { - ::abi_encoded_size(inner) - } - Self::ECMulFailed(inner) => { - ::abi_encoded_size(inner) - } - Self::ExpModFailed(inner) => { - ::abi_encoded_size(inner) - } - Self::FutureBlockNumber(inner) => { - ::abi_encoded_size(inner) - } - Self::InputArrayLengthMismatch(inner) => { - ::abi_encoded_size(inner) - } - Self::InputEmptyQuorumNumbers(inner) => { - ::abi_encoded_size(inner) - } - Self::InputNonSignerLengthMismatch(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::InsufficientQuorumThreshold(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::InvalidBLSPairingKey(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidBLSSignature(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidHash(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidQuorumApkHash(inner) => { - ::abi_encoded_size(inner) - } - Self::InvalidReferenceBlocknumber(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::InvalidSigma(inner) => { - ::abi_encoded_size(inner) - } - Self::NonSignerPubkeysNotSorted(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::OnlyRegistryCoordinatorOwner(inner) => { - ::abi_encoded_size( - inner, - ) - } - Self::OperatorNotRegistered(inner) => { - ::abi_encoded_size(inner) - } - Self::ScalarTooLarge(inner) => { - ::abi_encoded_size(inner) - } - Self::StaleBlockNumber(inner) => { - ::abi_encoded_size(inner) - } - } - } - #[inline] - fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec) { - match self { - Self::BitmapValueTooLarge(inner) => { - ::abi_encode_raw(inner, out) - } - Self::BytesArrayLengthTooLong(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::BytesArrayNotOrdered(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ECAddFailed(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ECMulFailed(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ExpModFailed(inner) => { - ::abi_encode_raw(inner, out) - } - Self::FutureBlockNumber(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InputArrayLengthMismatch(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::InputEmptyQuorumNumbers(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::InputNonSignerLengthMismatch(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::InsufficientQuorumThreshold(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::InvalidBLSPairingKey(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidBLSSignature(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidHash(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidQuorumApkHash(inner) => { - ::abi_encode_raw(inner, out) - } - Self::InvalidReferenceBlocknumber(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::InvalidSigma(inner) => { - ::abi_encode_raw(inner, out) - } - Self::NonSignerPubkeysNotSorted(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::OnlyRegistryCoordinatorOwner(inner) => { - ::abi_encode_raw( - inner, out, - ) - } - Self::OperatorNotRegistered(inner) => { - ::abi_encode_raw(inner, out) - } - Self::ScalarTooLarge(inner) => { - ::abi_encode_raw(inner, out) - } - Self::StaleBlockNumber(inner) => { - ::abi_encode_raw(inner, out) - } - } - } - } - use alloy::contract as alloy_contract; - /**Creates a new wrapper around an on-chain [`Counter`](self) contract instance. - - See the [wrapper's documentation](`CounterInstance`) 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, - ) -> CounterInstance { - CounterInstance::::new(address, provider) - } - /**A [`Counter`](self) instance. - - Contains type-safe methods for interacting with an on-chain instance of the - [`Counter`](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 CounterInstance { - address: alloy_sol_types::private::Address, - provider: P, - _network_transport: ::core::marker::PhantomData<(N, T)>, - } - #[automatically_derived] - impl ::core::fmt::Debug for CounterInstance { - #[inline] - fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { - f.debug_tuple("CounterInstance") - .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, - > CounterInstance - { - /**Creates a new wrapper around an on-chain [`Counter`](self) contract instance. - - See the [wrapper's documentation](`CounterInstance`) 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 CounterInstance { - /// Clones the provider and returns a new instance with the cloned provider. - #[inline] - pub fn with_cloned_provider(self) -> CounterInstance { - CounterInstance { - 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, - > CounterInstance - { - /// 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 [`BLOCK_STALE_MEASURE`] function. - pub fn BLOCK_STALE_MEASURE( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&BLOCK_STALE_MEASURECall {}) - } - ///Creates a new call builder for the [`QUORUM_THRESHOLD`] function. - pub fn QUORUM_THRESHOLD( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&QUORUM_THRESHOLDCall {}) - } - ///Creates a new call builder for the [`THRESHOLD_DENOMINATOR`] function. - pub fn THRESHOLD_DENOMINATOR( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&THRESHOLD_DENOMINATORCall {}) - } - ///Creates a new call builder for the [`blsApkRegistry`] function. - pub fn blsApkRegistry( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&blsApkRegistryCall {}) - } - ///Creates a new call builder for the [`checkSignatures`] function. - pub fn checkSignatures( - &self, - msgHash: alloy::sol_types::private::FixedBytes<32>, - quorumNumbers: alloy::sol_types::private::Bytes, - referenceBlockNumber: u32, - params: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&checkSignaturesCall { - msgHash, - quorumNumbers, - referenceBlockNumber, - params, - }) - } - ///Creates a new call builder for the [`delegation`] function. - pub fn delegation(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&delegationCall {}) - } - ///Creates a new call builder for the [`getBatchOperatorFromId`] function. - pub fn getBatchOperatorFromId( - &self, - registryCoordinator: alloy::sol_types::private::Address, - operatorIds: alloy::sol_types::private::Vec>, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getBatchOperatorFromIdCall { - registryCoordinator, - operatorIds, - }) - } - ///Creates a new call builder for the [`getBatchOperatorId`] function. - pub fn getBatchOperatorId( - &self, - registryCoordinator: alloy::sol_types::private::Address, - operators: alloy::sol_types::private::Vec, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getBatchOperatorIdCall { - registryCoordinator, - operators, - }) - } - ///Creates a new call builder for the [`getCheckSignaturesIndices`] function. - pub fn getCheckSignaturesIndices( - &self, - registryCoordinator: alloy::sol_types::private::Address, - referenceBlockNumber: u32, - quorumNumbers: alloy::sol_types::private::Bytes, - nonSignerOperatorIds: alloy::sol_types::private::Vec< - alloy::sol_types::private::FixedBytes<32>, - >, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getCheckSignaturesIndicesCall { - registryCoordinator, - referenceBlockNumber, - quorumNumbers, - nonSignerOperatorIds, - }) - } - ///Creates a new call builder for the [`getNonSignerStakesAndSignature`] function. - pub fn getNonSignerStakesAndSignature( - &self, - registryCoordinator: alloy::sol_types::private::Address, - quorumNumbers: alloy::sol_types::private::Bytes, - sigma: ::RustType, - operators: alloy::sol_types::private::Vec, - blockNumber: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getNonSignerStakesAndSignatureCall { - registryCoordinator, - quorumNumbers, - sigma, - operators, - blockNumber, - }) - } - ///Creates a new call builder for the [`getOperatorState_0`] function. - pub fn getOperatorState_0( - &self, - registryCoordinator: alloy::sol_types::private::Address, - quorumNumbers: alloy::sol_types::private::Bytes, - blockNumber: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorState_0Call { - registryCoordinator, - quorumNumbers, - blockNumber, - }) - } - ///Creates a new call builder for the [`getOperatorState_1`] function. - pub fn getOperatorState_1( - &self, - registryCoordinator: alloy::sol_types::private::Address, - operatorId: alloy::sol_types::private::FixedBytes<32>, - blockNumber: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getOperatorState_1Call { - registryCoordinator, - operatorId, - blockNumber, - }) - } - ///Creates a new call builder for the [`getQuorumBitmapsAtBlockNumber`] function. - pub fn getQuorumBitmapsAtBlockNumber( - &self, - registryCoordinator: alloy::sol_types::private::Address, - operatorIds: alloy::sol_types::private::Vec>, - blockNumber: u32, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&getQuorumBitmapsAtBlockNumberCall { - registryCoordinator, - operatorIds, - blockNumber, - }) - } - ///Creates a new call builder for the [`increment`] function. - pub fn increment( - &self, - msgHash: alloy::sol_types::private::FixedBytes<32>, - quorumNumbers: alloy::sol_types::private::Bytes, - referenceBlockNumber: u32, - params: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&incrementCall { - msgHash, - quorumNumbers, - referenceBlockNumber, - params, - }) - } - ///Creates a new call builder for the [`number`] function. - pub fn number(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&numberCall {}) - } - ///Creates a new call builder for the [`registryCoordinator`] function. - pub fn registryCoordinator( - &self, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(®istryCoordinatorCall {}) - } - ///Creates a new call builder for the [`stakeRegistry`] function. - pub fn stakeRegistry(&self) -> alloy_contract::SolCallBuilder { - self.call_builder(&stakeRegistryCall {}) - } - ///Creates a new call builder for the [`trySignatureAndApkVerification`] function. - pub fn trySignatureAndApkVerification( - &self, - msgHash: alloy::sol_types::private::FixedBytes<32>, - apk: ::RustType, - apkG2: ::RustType, - sigma: ::RustType, - ) -> alloy_contract::SolCallBuilder { - self.call_builder(&trySignatureAndApkVerificationCall { - msgHash, - apk, - apkG2, - sigma, - }) - } - } - /// Event filters. - #[automatically_derived] - impl< - T: alloy_contract::private::Transport + ::core::clone::Clone, - P: alloy_contract::private::Provider, - N: alloy_contract::private::Network, - > CounterInstance - { - /// 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/src/bindings/mod.rs b/src/bindings/mod.rs deleted file mode 100644 index ef6fdc7..0000000 --- a/src/bindings/mod.rs +++ /dev/null @@ -1,64 +0,0 @@ -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets, - clippy::too_many_arguments, - clippy::type_complexity, - missing_docs, - dead_code -)] -pub mod votingcontract; - -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets, - clippy::too_many_arguments, - clippy::type_complexity, - missing_docs, - dead_code -)] -pub mod blssigcheckoperatorstateretriever; - -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets, - clippy::too_many_arguments, - clippy::type_complexity, - missing_docs, - dead_code -)] -pub mod blssignaturechecker; - -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets, - clippy::too_many_arguments, - clippy::type_complexity, - missing_docs, - dead_code -)] -pub mod blsapkregistry; - -#[allow( - non_camel_case_types, - non_snake_case, - clippy::pub_underscore_fields, - clippy::style, - clippy::empty_structs_with_brackets, - clippy::too_many_arguments, - clippy::type_complexity, - missing_docs, - dead_code -)] -pub mod counter; diff --git a/src/bindings/votingcontract.rs b/src/bindings/votingcontract.rs deleted file mode 100644 index 23a6c02..0000000 --- a/src/bindings/votingcontract.rs +++ /dev/null @@ -1,7 +0,0 @@ -use alloy::sol; - -sol!( - #[sol(rpc)] - VotingContract, - "src/bindings/abi/VotingContract.abi" -); diff --git a/src/handlers/contributor.rs b/src/handlers/contributor.rs index 7cd8129..7591cf0 100644 --- a/src/handlers/contributor.rs +++ b/src/handlers/contributor.rs @@ -1,25 +1,24 @@ use anyhow::Result; -use bn254::{self, Bn254, PublicKey, Signature as Bn254Signature}; use bytes::Bytes; -use commonware_avs_router::validator::Validator; use commonware_codec::{EncodeSize, ReadExt, Write}; use commonware_cryptography::Signer; use commonware_p2p::{Receiver, Sender}; use commonware_utils::hex; use dotenv::dotenv; +use jito_bls_ncn_core::bls::solana_bls_interface::{SolanaBN254G2, SolanaBN254Keypair, SolanaBN254Signature}; use std::collections::{HashMap, HashSet}; use tracing::info; -use commonware_avs_router::wire::{self, aggregation::Payload}; +use commonware_avs_router::{validator::Validator, wire::{self, aggregation::Payload}}; pub struct Contributor { - orchestrator: PublicKey, - signer: Bn254, + orchestrator: SolanaBN254G2, + signer: SolanaBN254Keypair, me: usize, } impl Contributor { - pub fn new(orchestrator: PublicKey, signer: Bn254, mut contributors: Vec) -> Self { + pub fn new(orchestrator: SolanaBN254G2, signer: SolanaBN254Keypair, mut contributors: Vec) -> Self { dotenv().ok(); contributors.sort(); let mut ordered_contributors = HashMap::new(); @@ -37,10 +36,10 @@ impl Contributor { pub async fn run( self, mut sender: impl Sender, - mut receiver: impl Receiver, + mut receiver: impl Receiver, ) -> Result<()> { let mut signed = HashSet::new(); - let mut signatures: HashMap> = HashMap::new(); + let mut signatures: HashMap> = HashMap::new(); let validator = Validator::new().await?; while let Ok((s, message)) = receiver.recv().await { @@ -73,7 +72,9 @@ impl Contributor { round, hex(&payload) ); - let signature = self.signer.sign(None, &payload); + + // Sign the raw message directly + let signature = self.signer.solana_sign(&payload, round); // Store signature signatures diff --git a/src/main.rs b/src/main.rs index bd5bab2..5d1b083 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,108 +1,27 @@ //! Aggregate signatures from multiple contributors over the BN254 curve. //! //! # Usage (3 of 4 Threshold) -mod bindings; mod handlers; -use ark_bn254::Fr; -use bn254::{Bn254, PrivateKey}; use clap::{Arg, Command}; -use commonware_eigenlayer::network_configuration::{EigenStakingClient, QuorumInfo}; +use commonware_avs_router::solana_helpers::{get_client_and_test_bls_ncn, get_operator_states}; use commonware_p2p::authenticated::lookup::{self, Network}; use commonware_runtime::{ Metrics, Runner, Spawner, tokio::{self}, }; use commonware_utils::NZU32; -use eigen_logging::log_level::LogLevel; use governor::Quota; -use serde::{Deserialize, Serialize}; +use jito_bls_ncn_core::bls::solana_bls_interface::SolanaBN254G2; use std::collections::HashMap; -use std::env; -use std::fs; use std::net::{IpAddr, Ipv4Addr, SocketAddr}; -use std::str::FromStr; - -#[derive(Debug, Serialize, Deserialize)] -#[allow(non_snake_case)] -struct KeyConfig { - privateKey: String, -} -#[derive(Debug, Serialize, Deserialize)] -#[allow(non_snake_case)] -struct OrchestratorConfig { - g2_x1: String, - g2_x2: String, - g2_y1: String, - g2_y2: String, - port: String, -} - -fn get_signer(key: &str) -> Bn254 { - let fr = Fr::from_str(key).expect("Invalid decimal string for private key"); - let key = PrivateKey::from(fr); - Bn254::new(key).expect("Failed to create signer") -} - -fn load_key_from_file(path: &str) -> String { - let contents = fs::read_to_string(path).expect("Could not read key file"); - let config: KeyConfig = serde_json::from_str(&contents).expect("Could not parse key file"); - config.privateKey -} - -fn load_orchestrator_config(path: &str) -> OrchestratorConfig { - let contents = fs::read_to_string(path).expect("Could not read key file"); - let config: OrchestratorConfig = - serde_json::from_str(&contents).expect("Could not parse key file"); - config -} // Unique namespace to avoid message replay attacks. const APPLICATION_NAMESPACE: &[u8] = b"_COMMONWARE_AGGREGATION_"; -fn configure_identity(matches: &clap::ArgMatches) -> (Bn254, u16) { - let key_file = matches - .get_one::("key-file") - .expect("Please provide key file"); - let port = matches - .get_one::("port") - .expect("Please provide port"); - let key = load_key_from_file(key_file); - let me = format!("{}@{}", key, port); - let parts = me.split('@').collect::>(); - if parts.len() != 2 { - panic!("Identity not well-formed"); - } - let key = parts[0]; - let signer = get_signer(key); - - let port = parts[1].parse::().expect("Port not well-formed"); - tracing::info!(port, "loaded port"); - - (signer, port) -} - -fn configure_orchestrator(matches: &clap::ArgMatches) -> OrchestratorConfig { - let orchestrator_file = matches - .get_one::("orchestrator") - .expect("No orchestrator addr"); - load_orchestrator_config(orchestrator_file) -} - -async fn get_operator_states() -> Result, Box> { +fn main() { dotenv::dotenv().ok(); - let http_rpc = env::var("HTTP_RPC").expect("HTTP_RPC must be set"); - let ws_rpc = env::var("WS_RPC").expect("WS_RPC must be set"); - let avs_deployment_path = - env::var("AVS_DEPLOYMENT_PATH").expect("AVS_DEPLOYMENT_PATH must be set"); - - let client = EigenStakingClient::new(http_rpc, ws_rpc, avs_deployment_path).await?; - - client.get_operator_states().await -} - -fn main() { // Initialize runtime let runtime_cfg = tokio::Config::default(); let runner = tokio::Runner::new(runtime_cfg.clone()); @@ -110,12 +29,6 @@ fn main() { // Parse arguments let matches = Command::new("commonware-aggregation") .about("generate and verify BN254 Multi-Signatures") - .arg( - Arg::new("key-file") - .long("key-file") - .required(true) - .help("Path to the YAML file containing the private key"), - ) .arg( Arg::new("port") .long("port") @@ -123,69 +36,81 @@ fn main() { .help("Port to run the service on"), ) .arg( - Arg::new("orchestrator") - .long("orchestrator") - .required(false) - .help("Path to orchestrator key file"), + Arg::new("operator_index") + .long("operator_index") + .required(true) + .help("Operator index"), ) .get_matches(); - // Configure my identity - let (signer, port) = configure_identity(&matches); - let orchestrator_config = configure_orchestrator(&matches); + let port_str = matches + .get_one::("port") + .expect("Please provide port"); + let port = port_str.parse::().expect("Invalid port"); + let index_str = matches + .get_one::("operator_index") + .expect("Please provide operator index"); + let index = index_str.parse::().expect("Invalid operator index"); + + println!("Starting contributor on port {} with operator index {}", port, index); - // Get operator states + let (client, test_bls_ncn) = get_client_and_test_bls_ncn().expect("Could not load Test BLS NCN"); + let signer = test_bls_ncn.test_operators[index as usize].bls_keypair; + + println!("Loaded signer for operator index {}", index); // Start runtime runner.start(|context: tokio::Context| async move { - let mut recipients: Vec<(bn254::PublicKey, SocketAddr)> = Vec::new(); - // Scoped to avoid configuring two loggers + println!("Runtime started"); + + let mut recipients: Vec<(SolanaBN254G2, SocketAddr)> = Vec::new(); let orchestrator_pub_key; { - eigen_logging::init_logger(LogLevel::Debug); - let quorum_infos = get_operator_states() + println!("Fetching operator states..."); + let operators = get_operator_states(&client, &test_bls_ncn) .await .expect("Failed to get operator states"); - // Configure allowed peers - let participants = quorum_infos[0].operators.clone(); //TODO: Fix hardcoded quorum_number + println!("Found {} operators", operators.len()); + + let participants = operators.clone(); if participants.is_empty() { panic!("Please provide at least one participant"); } for participant in &participants { - let verifier = participant.pub_keys.as_ref().unwrap().g2_pub_key.clone(); - tracing::info!(key = ?verifier, "registered authorized key",); - if let Some(socket) = &participant.socket { - let socket_addr = - SocketAddr::from_str(socket).expect("contributor address not well-formed"); - recipients.push((verifier, socket_addr)); + let verifier = participant.bls_operator.g2; + println!("Registered authorized key: {:?}", verifier); + if let Some(socket) = participant.socket_address { + recipients.push((verifier, socket)); } } - orchestrator_pub_key = bn254::PublicKey::create_from_g2_coordinates( - &orchestrator_config.g2_x1, - &orchestrator_config.g2_x2, - &orchestrator_config.g2_y1, - &orchestrator_config.g2_y2, - ) - .unwrap(); - let local_addr = SocketAddr::new( + + orchestrator_pub_key = test_bls_ncn.bls_orchestrator.bls_public_key.g2; + println!("Orchestrator pub key: {:?}", orchestrator_pub_key); + + let orchestrator_addr = SocketAddr::new( IpAddr::V4(Ipv4Addr::LOCALHOST), - orchestrator_config - .port - .parse::() - .expect("Port not well-formed"), + 3000, ); - recipients.push((orchestrator_pub_key.clone(), local_addr)); + recipients.push((orchestrator_pub_key.clone(), orchestrator_addr)); + println!("Added orchestrator at {}", orchestrator_addr); } + + // Initialize logger BEFORE using tracing macros let subscriber = tracing_subscriber::fmt() .with_max_level(tracing::Level::DEBUG) .with_writer(std::io::stdout) .finish(); - let _ = tracing::subscriber::set_default(subscriber); + let _ = tracing::subscriber::set_global_default(subscriber); + + tracing::info!("Logger initialized"); // Configure network const MAX_MESSAGE_SIZE: usize = 1024 * 1024; // 1 MB let my_addr = SocketAddr::new(IpAddr::V4(Ipv4Addr::UNSPECIFIED), port); let my_local_addr = SocketAddr::new(IpAddr::V4(Ipv4Addr::LOCALHOST), port); + + tracing::info!("Configuring P2P network on {}...", my_local_addr); + let p2p_cfg = lookup::Config::aggressive( signer.clone(), APPLICATION_NAMESPACE, @@ -195,36 +120,44 @@ fn main() { ); let (mut network, mut oracle) = Network::new(context.with_label("network"), p2p_cfg); - // Provide authorized peers + tracing::info!("Registering {} authorized peers", recipients.len()); oracle.register(0, recipients).await; // Parse contributors from operator states let mut contributors = Vec::new(); let mut contributors_map = HashMap::new(); - let quorum_infos = get_operator_states() + let quorum_infos = get_operator_states(&client, &test_bls_ncn) .await .expect("Failed to get operator states"); - let operators = &quorum_infos[0].operators; + let operators = &quorum_infos; if operators.is_empty() { panic!("Please provide at least one contributor"); } for operator in operators { - let verifier = operator.pub_keys.as_ref().unwrap().g2_pub_key.clone(); - let verifier_g1 = operator.pub_keys.as_ref().unwrap().g1_pub_key.clone(); - tracing::info!(key = ?verifier, "registered contributor",); + let verifier = operator.bls_operator.g2; + let verifier_g1 = operator.bls_operator.g1; + tracing::info!(key = ?verifier, "registered contributor"); contributors.push(verifier.clone()); contributors_map.insert(verifier, verifier_g1); } - // Check if I am the orchestrator const DEFAULT_MESSAGE_BACKLOG: usize = 256; - // Create contributor let (sender, receiver) = network.register(0, Quota::per_second(NZU32!(1)), DEFAULT_MESSAGE_BACKLOG); + + tracing::info!("Creating contributor handler..."); let contributor = handlers::Contributor::new(orchestrator_pub_key, signer, contributors); - context.spawn(|_| async move { contributor.run(sender, receiver).await }); + tracing::info!("Spawning contributor task..."); + context.spawn(|_| async move { + tracing::info!("Contributor task started, entering run loop..."); + let result = contributor.run(sender, receiver).await; + tracing::error!("Contributor run exited with: {:?}", result); + }); + + tracing::info!("Starting network..."); let _ = network.start().await; + tracing::info!("Network started"); }); }