From b452f1f948ddb589af680dded41455b5fadb89a6 Mon Sep 17 00:00:00 2001 From: DaniPopes <57450786+DaniPopes@users.noreply.github.com> Date: Mon, 3 Feb 2025 21:11:09 +0100 Subject: [PATCH 1/2] fix(sol-macro): call proc_macro_error handler manually --- crates/sol-macro-expander/src/expand/mod.rs | 12 +- crates/sol-macro-expander/src/utils.rs | 25 ++++ crates/sol-types/tests/compiletest.rs | 2 +- crates/sol-types/tests/ui/collisions.stderr | 18 +-- .../tests/ui/features/not(json)/abi.stderr | 1 - crates/sol-types/tests/ui/keywords.stderr | 39 +++--- crates/sol-types/tests/ui/overloads.stderr | 90 +++++--------- crates/sol-types/tests/ui/type.stderr | 113 +++++++++--------- 8 files changed, 141 insertions(+), 159 deletions(-) diff --git a/crates/sol-macro-expander/src/expand/mod.rs b/crates/sol-macro-expander/src/expand/mod.rs index c892f51da..adb315506 100644 --- a/crates/sol-macro-expander/src/expand/mod.rs +++ b/crates/sol-macro-expander/src/expand/mod.rs @@ -42,15 +42,17 @@ const RESOLVE_LIMIT: usize = 32; /// /// [`sol!`]: https://docs.rs/alloy-sol-macro/latest/alloy_sol_macro/index.html pub fn expand(ast: File) -> Result { - ExpCtxt::new(&ast).expand() + utils::pme_compat_result(|| ExpCtxt::new(&ast).expand()) } /// Expands a Rust type from a Solidity type. pub fn expand_type(ty: &Type, crates: &ExternCrates) -> TokenStream { - let dummy_file = File { attrs: Vec::new(), items: Vec::new() }; - let mut cx = ExpCtxt::new(&dummy_file); - cx.crates = crates.clone(); - cx.expand_type(ty) + utils::pme_compat(|| { + let dummy_file = File { attrs: Vec::new(), items: Vec::new() }; + let mut cx = ExpCtxt::new(&dummy_file); + cx.crates = crates.clone(); + cx.expand_type(ty) + }) } /// Mapping namespace -> ident -> T diff --git a/crates/sol-macro-expander/src/utils.rs b/crates/sol-macro-expander/src/utils.rs index 674c4a27e..feddff886 100644 --- a/crates/sol-macro-expander/src/utils.rs +++ b/crates/sol-macro-expander/src/utils.rs @@ -84,3 +84,28 @@ impl ToTokens for ExprArray { }); } } + +/// Applies [`proc_macro_error2`] programmatically. +pub(crate) fn pme_compat(f: impl FnOnce() -> TokenStream) -> TokenStream { + pme_compat_result(|| Ok(f())).unwrap() +} + +/// Applies [`proc_macro_error2`] programmatically. +pub(crate) fn pme_compat_result( + f: impl FnOnce() -> syn::Result, +) -> syn::Result { + let mut r = None; + let e = proc_macro_error2::entry_point( + std::panic::AssertUnwindSafe(|| { + r = Some(f()); + Default::default() + }), + false, + ); + if let Some(r) = r { + if e.is_empty() || r.is_err() { + return r; + } + } + Ok(e.into()) +} diff --git a/crates/sol-types/tests/compiletest.rs b/crates/sol-types/tests/compiletest.rs index 212746b4b..e0e23ccfc 100644 --- a/crates/sol-types/tests/compiletest.rs +++ b/crates/sol-types/tests/compiletest.rs @@ -1,7 +1,7 @@ #![allow(missing_docs)] #[rustversion::attr(nightly, ignore = "type.rs depends way too much on compiler internals")] -#[rustversion::attr(not(nightly), ignore)] +#[rustversion::attr(not(nightly), ignore = "should run only on nightly")] #[cfg_attr(any(target_os = "windows", miri), ignore)] #[test] fn ui() { diff --git a/crates/sol-types/tests/ui/collisions.stderr b/crates/sol-types/tests/ui/collisions.stderr index fa51c5dcd..60cfe9f35 100644 --- a/crates/sol-types/tests/ui/collisions.stderr +++ b/crates/sol-types/tests/ui/collisions.stderr @@ -1,14 +1,11 @@ error: function selector `0xa9059cbb` collides with `func_2093253501` + + = note: other declaration is here + --> tests/ui/collisions.rs:10:14 | 10 | function transfer(address,uint256); | ^^^^^^^^ - | -note: other declaration is here - --> tests/ui/collisions.rs:9:14 - | -9 | function func_2093253501(bytes); - | ^^^^^^^^^^^^^^^ error: error selector `0x00000000` is reserved --> tests/ui/collisions.rs:12:11 @@ -17,16 +14,13 @@ error: error selector `0x00000000` is reserved | ^^^^^^^^^^^^^^^^^^^ error: function selector `0xa9059cbb` collides with `func_2093253501` + + = note: other declaration is here + --> tests/ui/collisions.rs:19:18 | 19 | function transfer(address,uint256); | ^^^^^^^^ - | -note: other declaration is here - --> tests/ui/collisions.rs:18:18 - | -18 | function func_2093253501(bytes); - | ^^^^^^^^^^^^^^^ error: error selector `0x00000000` is reserved --> tests/ui/collisions.rs:21:15 diff --git a/crates/sol-types/tests/ui/features/not(json)/abi.stderr b/crates/sol-types/tests/ui/features/not(json)/abi.stderr index d6aeaa210..3807d3475 100644 --- a/crates/sol-types/tests/ui/features/not(json)/abi.stderr +++ b/crates/sol-types/tests/ui/features/not(json)/abi.stderr @@ -6,7 +6,6 @@ error: the `#[sol(abi)]` attribute requires the `"json"` feature 5 | | 6 | | contract C { ... | -22 | | } 23 | | } | |_^ | diff --git a/crates/sol-types/tests/ui/keywords.stderr b/crates/sol-types/tests/ui/keywords.stderr index 1d3e00f97..ec11bc76d 100644 --- a/crates/sol-types/tests/ui/keywords.stderr +++ b/crates/sol-types/tests/ui/keywords.stderr @@ -554,8 +554,7 @@ error: expected `<`, found `>` 5 | / sol! { 6 | | struct $kw { 7 | | uint $kw; -8 | | } -9 | | +... | 10 | | function $kw(uint $kw); 11 | | } | |_________^ expected `<` @@ -818,8 +817,7 @@ error: expected `{`, found `,` 5 | / sol! { 6 | | struct $kw { 7 | | uint $kw; -8 | | } -9 | | +... | 10 | | function $kw(uint $kw); | | - expected `{` 11 | | } @@ -853,8 +851,7 @@ error: expected `{`, found `)` 5 | / sol! { 6 | | struct $kw { 7 | | uint $kw; -8 | | } -9 | | +... | 10 | | function $kw(uint $kw); | | - expected `{` 11 | | } @@ -1540,8 +1537,7 @@ error: expected `(`, found `>` 5 | / sol! { 6 | | struct $kw { 7 | | uint $kw; -8 | | } -9 | | +... | 10 | | function $kw(uint $kw); 11 | | } | |_________^ unexpected token @@ -1700,8 +1696,7 @@ error[E0433]: failed to resolve: there are too many leading `super` keywords 5 | / sol! { 6 | | struct $kw { 7 | | uint $kw; -8 | | } -9 | | +... | 10 | | function $kw(uint $kw); 11 | | } | |_________^ there are too many leading `super` keywords @@ -1718,8 +1713,7 @@ error[E0573]: expected type, found module `crate` 5 | / sol! { 6 | | struct $kw { 7 | | uint $kw; -8 | | } -9 | | +... | 10 | | function $kw(uint $kw); 11 | | } | |_________^ not a type @@ -1741,8 +1735,7 @@ error[E0574]: expected struct, variant or union type, found module `crate` 5 | / sol! { 6 | | struct $kw { 7 | | uint $kw; -8 | | } -9 | | +... | 10 | | function $kw(uint $kw); 11 | | } | |_________^ not a struct, variant or union type @@ -1773,8 +1766,7 @@ error[E0573]: expected type, found module `self` 5 | / sol! { 6 | | struct $kw { 7 | | uint $kw; -8 | | } -9 | | +... | 10 | | function $kw(uint $kw); 11 | | } | | ^ help: a self type with a similar name exists: `Self` @@ -1797,8 +1789,7 @@ error[E0574]: expected struct, variant or union type, found module `self` 5 | / sol! { 6 | | struct $kw { 7 | | uint $kw; -8 | | } -9 | | +... | 10 | | function $kw(uint $kw); 11 | | } | | ^ help: a self type with a similar name exists: `Self` @@ -1836,8 +1827,7 @@ error[E0425]: cannot find value `value` in this scope 5 | / sol! { 6 | | struct $kw { 7 | | uint $kw; -8 | | } -9 | | +... | 10 | | function $kw(uint $kw); 11 | | } | |_________^ not found in this scope @@ -1876,8 +1866,7 @@ error: `Self` is not valid in the self type of an impl block 5 | / sol! { 6 | | struct $kw { 7 | | uint $kw; -8 | | } -9 | | +... | 10 | | function $kw(uint $kw); 11 | | } | |_________^ @@ -1899,13 +1888,11 @@ error[E0117]: only traits defined in the current crate can be implemented for ar 5 | / sol! { 6 | | struct $kw { 7 | | uint $kw; -8 | | } -9 | | +... | 10 | | function $kw(uint $kw); 11 | | } | | ^ | | | - | | impl doesn't use only types from inside the current crate | |_________this is not defined in the current crate because tuples are always foreign | this is not defined in the current crate because this is a foreign trait ... @@ -1917,6 +1904,8 @@ error[E0117]: only traits defined in the current crate can be implemented for ar 47 | | } | |_- in this macro invocation | + = note: impl doesn't have any local type before any uncovered type parameters + = note: for more information see https://doc.rust-lang.org/reference/items/implementations.html#orphan-rules = note: define and implement a trait or new type instead = note: this error originates in the macro `sol` which comes from the expansion of the macro `kws` (in Nightly builds, run with -Z macro-backtrace for more info) diff --git a/crates/sol-types/tests/ui/overloads.stderr b/crates/sol-types/tests/ui/overloads.stderr index 80117b3d1..68ba650c6 100644 --- a/crates/sol-types/tests/ui/overloads.stderr +++ b/crates/sol-types/tests/ui/overloads.stderr @@ -1,119 +1,89 @@ error: function `overloadTaken` is overloaded, but the generated name `overloadTaken_0` is already in use + + = note: other declaration is here + --> tests/ui/overloads.rs:15:18 | 15 | function overloadTaken(); | ^^^^^^^^^^^^^ - | -note: other declaration is here - --> tests/ui/overloads.rs:17:18 - | -17 | function overloadTaken_0(); - | ^^^^^^^^^^^^^^^ error: function `overloadTaken` is overloaded, but the generated name `overloadTaken_1` is already in use + + = note: other declaration is here + --> tests/ui/overloads.rs:16:18 | 16 | function overloadTaken(uint256); | ^^^^^^^^^^^^^ - | -note: other declaration is here - --> tests/ui/overloads.rs:18:18 - | -18 | function overloadTaken_1(); - | ^^^^^^^^^^^^^^^ error: function with same name and parameter types defined twice + + = note: other declaration is here + --> tests/ui/overloads.rs:23:18 | 23 | function sameOverload(); | ^^^^^^^^^^^^ - | -note: other declaration is here - --> tests/ui/overloads.rs:24:18 - | -24 | function sameOverload(); - | ^^^^^^^^^^^^ error: function with same name and parameter types defined twice + + = note: other declaration is here + --> tests/ui/overloads.rs:28:18 | 28 | function sameTysOverload1(uint256[]memory a); | ^^^^^^^^^^^^^^^^ - | -note: other declaration is here - --> tests/ui/overloads.rs:29:18 - | -29 | function sameTysOverload1(uint256[]storage b); - | ^^^^^^^^^^^^^^^^ error: function with same name and parameter types defined twice + + = note: other declaration is here + --> tests/ui/overloads.rs:33:18 | 33 | function sameTysOverload2(string memory,string storage); | ^^^^^^^^^^^^^^^^ - | -note: other declaration is here - --> tests/ui/overloads.rs:34:18 - | -34 | function sameTysOverload2(string storage b,string calldata); - | ^^^^^^^^^^^^^^^^ error: event `overloadTaken` is overloaded, but the generated name `overloadTaken_0` is already in use + + = note: other declaration is here + --> tests/ui/overloads.rs:50:15 | 50 | event overloadTaken(); | ^^^^^^^^^^^^^ - | -note: other declaration is here - --> tests/ui/overloads.rs:52:15 - | -52 | event overloadTaken_0(); - | ^^^^^^^^^^^^^^^ error: event `overloadTaken` is overloaded, but the generated name `overloadTaken_1` is already in use + + = note: other declaration is here + --> tests/ui/overloads.rs:51:15 | 51 | event overloadTaken(uint256); | ^^^^^^^^^^^^^ - | -note: other declaration is here - --> tests/ui/overloads.rs:53:15 - | -53 | event overloadTaken_1(); - | ^^^^^^^^^^^^^^^ error: event with same name and parameter types defined twice + + = note: other declaration is here + --> tests/ui/overloads.rs:58:15 | 58 | event sameOverload(); | ^^^^^^^^^^^^ - | -note: other declaration is here - --> tests/ui/overloads.rs:59:15 - | -59 | event sameOverload(); - | ^^^^^^^^^^^^ error: event with same name and parameter types defined twice + + = note: other declaration is here + --> tests/ui/overloads.rs:63:15 | 63 | event sameTysOverload1(uint256[] a); | ^^^^^^^^^^^^^^^^ - | -note: other declaration is here - --> tests/ui/overloads.rs:64:15 - | -64 | event sameTysOverload1(uint256[] b); - | ^^^^^^^^^^^^^^^^ error: event with same name and parameter types defined twice + + = note: other declaration is here + --> tests/ui/overloads.rs:68:15 | 68 | event sameTysOverload2(string, string); | ^^^^^^^^^^^^^^^^ - | -note: other declaration is here - --> tests/ui/overloads.rs:69:15 - | -69 | event sameTysOverload2(string, string); - | ^^^^^^^^^^^^^^^^ diff --git a/crates/sol-types/tests/ui/type.stderr b/crates/sol-types/tests/ui/type.stderr index c21c6282e..be87271f7 100644 --- a/crates/sol-types/tests/ui/type.stderr +++ b/crates/sol-types/tests/ui/type.stderr @@ -10,89 +10,92 @@ error: single element tuples must have a trailing comma 151 | (bool) t; | ^ -error: invalid size: number would be zero for non-zero type +error: enum has too many variants + --> tests/ui/type.rs:476:10 + | +476 | enum TooBigEnum { + | ^^^^^^^^^^ + +error: Mapping types are not supported here + --> tests/ui/type.rs:739:9 + | +739 | mapping(mapping(a b => c d) e => mapping(f g => h i) j) map; + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: Mapping types are not supported here + --> tests/ui/type.rs:748:13 + | +748 | mapping(mapping(int => int) => int) public mapKeyOfMap; + | ^^^^^^^^^^^^^^^^^^^ + +error: Mapping types are not supported here + --> tests/ui/type.rs:752:23 + | +752 | function mappings(mapping(uint256 a => bool b), mapping(bool => bool) x); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: Mapping types are not supported here + --> tests/ui/type.rs:752:53 + | +752 | function mappings(mapping(uint256 a => bool b), mapping(bool => bool) x); + | ^^^^^^^^^^^^^^^^^^^^^ + +error[E0412]: cannot find type `bytes0` in this scope --> tests/ui/type.rs:157:9 | 157 | bytes0 a; - | ^^^^^^ + | ^^^^^^ not found in this scope -error: fixed bytes range is 1-32 +error[E0412]: cannot find type `bytes33` in this scope --> tests/ui/type.rs:163:9 | 163 | bytes33 a; - | ^^^^^^^ + | ^^^^^^^ not found in this scope -error: invalid size: number would be zero for non-zero type +error[E0412]: cannot find type `uint0` in this scope --> tests/ui/type.rs:169:9 | 169 | uint0 a; - | ^^^^^ + | ^^^^^ not found in this scope -error: uintX must be a multiple of 8 up to 256 +error[E0412]: cannot find type `uint264` in this scope --> tests/ui/type.rs:175:9 | 175 | uint264 a; - | ^^^^^^^ + | ^^^^^^^ not found in this scope -error: uintX must be a multiple of 8 up to 256 +error[E0412]: cannot find type `uint7` in this scope --> tests/ui/type.rs:181:9 | 181 | uint7 a; - | ^^^^^ + | ^^^^^ not found in this scope -error: invalid size: number would be zero for non-zero type +error[E0412]: cannot find type `int0` in this scope --> tests/ui/type.rs:187:9 | 187 | int0 a; - | ^^^^ + | ^^^^ not found in this scope -error: intX must be a multiple of 8 up to 256 +error[E0412]: cannot find type `int264` in this scope --> tests/ui/type.rs:193:9 | 193 | int264 a; - | ^^^^^^ + | ^^^^^^ not found in this scope -error: intX must be a multiple of 8 up to 256 +error[E0412]: cannot find type `int7` in this scope --> tests/ui/type.rs:199:9 | 199 | int7 a; - | ^^^^ - -error: enum has too many variants - --> tests/ui/type.rs:476:10 - | -476 | enum TooBigEnum { - | ^^^^^^^^^^ - -error: Mapping types are not supported here - --> tests/ui/type.rs:739:9 - | -739 | mapping(mapping(a b => c d) e => mapping(f g => h i) j) map; - | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -error: Mapping types are not supported here - --> tests/ui/type.rs:748:13 - | -748 | mapping(mapping(int => int) => int) public mapKeyOfMap; - | ^^^^^^^^^^^^^^^^^^^ - -error: Mapping types are not supported here - --> tests/ui/type.rs:752:23 - | -752 | function mappings(mapping(uint256 a => bool b), mapping(bool => bool) x); - | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -error: Mapping types are not supported here - --> tests/ui/type.rs:752:53 - | -752 | function mappings(mapping(uint256 a => bool b), mapping(bool => bool) x); - | ^^^^^^^^^^^^^^^^^^^^^ + | ^^^^ not found in this scope error[E0412]: cannot find type `bytes_` in this scope --> tests/ui/type.rs:205:9 | +155 | sol! { + | ---- similarly named struct `Bytes0` defined here +... 205 | bytes_ a; - | ^^^^^^ not found in this scope + | ^^^^^^ help: a struct with a similar name exists: `Bytes0` error[E0412]: cannot find type `bytes_32` in this scope --> tests/ui/type.rs:206:9 @@ -138,10 +141,10 @@ error[E0277]: the trait bound `(alloy_sol_types::sol_data::Address, alloy_sol_ty 5 | | address a; 6 | | address payable ap; ... | -111 | | } 112 | | } - | |_^ the trait `SolType` is not implemented for `(Address, ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...)` + | |_^ unsatisfied trait bound | + = help: the trait `SolType` is not implemented for `(alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::String, alloy_sol_types::sol_data::Bool, alloy_sol_types::sol_data::Bytes, alloy_sol_types::sol_data::FixedBytes<1>, alloy_sol_types::sol_data::FixedBytes<2>, alloy_sol_types::sol_data::FixedBytes<3>, alloy_sol_types::sol_data::FixedBytes<4>, alloy_sol_types::sol_data::FixedBytes<5>, alloy_sol_types::sol_data::FixedBytes<6>, alloy_sol_types::sol_data::FixedBytes<7>, alloy_sol_types::sol_data::FixedBytes<8>, alloy_sol_types::sol_data::FixedBytes<9>, alloy_sol_types::sol_data::FixedBytes<10>, alloy_sol_types::sol_data::FixedBytes<11>, alloy_sol_types::sol_data::FixedBytes<12>, alloy_sol_types::sol_data::FixedBytes<13>, alloy_sol_types::sol_data::FixedBytes<14>, alloy_sol_types::sol_data::FixedBytes<15>, alloy_sol_types::sol_data::FixedBytes<16>, alloy_sol_types::sol_data::FixedBytes<17>, alloy_sol_types::sol_data::FixedBytes<18>, alloy_sol_types::sol_data::FixedBytes<19>, alloy_sol_types::sol_data::FixedBytes<20>, alloy_sol_types::sol_data::FixedBytes<21>, alloy_sol_types::sol_data::FixedBytes<22>, alloy_sol_types::sol_data::FixedBytes<23>, alloy_sol_types::sol_data::FixedBytes<24>, alloy_sol_types::sol_data::FixedBytes<25>, alloy_sol_types::sol_data::FixedBytes<26>, alloy_sol_types::sol_data::FixedBytes<27>, alloy_sol_types::sol_data::FixedBytes<28>, alloy_sol_types::sol_data::FixedBytes<29>, alloy_sol_types::sol_data::FixedBytes<30>, alloy_sol_types::sol_data::FixedBytes<31>, alloy_sol_types::sol_data::FixedBytes<32>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Int<8>, alloy_sol_types::sol_data::Int<16>, alloy_sol_types::sol_data::Int<24>, alloy_sol_types::sol_data::Int<32>, alloy_sol_types::sol_data::Int<40>, alloy_sol_types::sol_data::Int<48>, alloy_sol_types::sol_data::Int<56>, alloy_sol_types::sol_data::Int<64>, alloy_sol_types::sol_data::Int<72>, alloy_sol_types::sol_data::Int<80>, alloy_sol_types::sol_data::Int<88>, alloy_sol_types::sol_data::Int<96>, alloy_sol_types::sol_data::Int<104>, alloy_sol_types::sol_data::Int<112>, alloy_sol_types::sol_data::Int<120>, alloy_sol_types::sol_data::Int<128>, alloy_sol_types::sol_data::Int<136>, alloy_sol_types::sol_data::Int<144>, alloy_sol_types::sol_data::Int<152>, alloy_sol_types::sol_data::Int<160>, alloy_sol_types::sol_data::Int<168>, alloy_sol_types::sol_data::Int<176>, alloy_sol_types::sol_data::Int<184>, alloy_sol_types::sol_data::Int<192>, alloy_sol_types::sol_data::Int<200>, alloy_sol_types::sol_data::Int<208>, alloy_sol_types::sol_data::Int<216>, alloy_sol_types::sol_data::Int<224>, alloy_sol_types::sol_data::Int<232>, alloy_sol_types::sol_data::Int<240>, alloy_sol_types::sol_data::Int<248>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Uint<256>, alloy_sol_types::sol_data::Uint<8>, alloy_sol_types::sol_data::Uint<16>, alloy_sol_types::sol_data::Uint<24>, alloy_sol_types::sol_data::Uint<32>, alloy_sol_types::sol_data::Uint<40>, alloy_sol_types::sol_data::Uint<48>, alloy_sol_types::sol_data::Uint<56>, alloy_sol_types::sol_data::Uint<64>, alloy_sol_types::sol_data::Uint<72>, alloy_sol_types::sol_data::Uint<80>, alloy_sol_types::sol_data::Uint<88>, alloy_sol_types::sol_data::Uint<96>, alloy_sol_types::sol_data::Uint<104>, alloy_sol_types::sol_data::Uint<112>, alloy_sol_types::sol_data::Uint<120>, alloy_sol_types::sol_data::Uint<128>, alloy_sol_types::sol_data::Uint<136>, alloy_sol_types::sol_data::Uint<144>, alloy_sol_types::sol_data::Uint<152>, alloy_sol_types::sol_data::Uint<160>, alloy_sol_types::sol_data::Uint<168>, alloy_sol_types::sol_data::Uint<176>, alloy_sol_types::sol_data::Uint<184>, alloy_sol_types::sol_data::Uint<192>, alloy_sol_types::sol_data::Uint<200>, alloy_sol_types::sol_data::Uint<208>, alloy_sol_types::sol_data::Uint<216>, alloy_sol_types::sol_data::Uint<224>, alloy_sol_types::sol_data::Uint<232>, alloy_sol_types::sol_data::Uint<240>, alloy_sol_types::sol_data::Uint<248>, alloy_sol_types::sol_data::Uint<256>)` = help: the following other types implement trait `SolType`: () (T1, T2) @@ -162,10 +165,10 @@ error[E0277]: the trait bound `(alloy_sol_types::private::Address, alloy_sol_typ 5 | | address a; 6 | | address payable ap; ... | -111 | | } 112 | | } - | |_^ the trait `SolTypeValue<(alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::String, alloy_sol_types::sol_data::Bool, alloy_sol_types::sol_data::Bytes, alloy_sol_types::sol_data::FixedBytes<1>, alloy_sol_types::sol_data::FixedBytes<2>, alloy_sol_types::sol_data::FixedBytes<3>, alloy_sol_types::sol_data::FixedBytes<4>, alloy_sol_types::sol_data::FixedBytes<5>, alloy_sol_types::sol_data::FixedBytes<6>, alloy_sol_types::sol_data::FixedBytes<7>, alloy_sol_types::sol_data::FixedBytes<8>, alloy_sol_types::sol_data::FixedBytes<9>, alloy_sol_types::sol_data::FixedBytes<10>, alloy_sol_types::sol_data::FixedBytes<11>, alloy_sol_types::sol_data::FixedBytes<12>, alloy_sol_types::sol_data::FixedBytes<13>, alloy_sol_types::sol_data::FixedBytes<14>, alloy_sol_types::sol_data::FixedBytes<15>, alloy_sol_types::sol_data::FixedBytes<16>, alloy_sol_types::sol_data::FixedBytes<17>, alloy_sol_types::sol_data::FixedBytes<18>, alloy_sol_types::sol_data::FixedBytes<19>, alloy_sol_types::sol_data::FixedBytes<20>, alloy_sol_types::sol_data::FixedBytes<21>, alloy_sol_types::sol_data::FixedBytes<22>, alloy_sol_types::sol_data::FixedBytes<23>, alloy_sol_types::sol_data::FixedBytes<24>, alloy_sol_types::sol_data::FixedBytes<25>, alloy_sol_types::sol_data::FixedBytes<26>, alloy_sol_types::sol_data::FixedBytes<27>, alloy_sol_types::sol_data::FixedBytes<28>, alloy_sol_types::sol_data::FixedBytes<29>, alloy_sol_types::sol_data::FixedBytes<30>, alloy_sol_types::sol_data::FixedBytes<31>, alloy_sol_types::sol_data::FixedBytes<32>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Int<8>, alloy_sol_types::sol_data::Int<16>, alloy_sol_types::sol_data::Int<24>, alloy_sol_types::sol_data::Int<32>, alloy_sol_types::sol_data::Int<40>, alloy_sol_types::sol_data::Int<48>, alloy_sol_types::sol_data::Int<56>, alloy_sol_types::sol_data::Int<64>, alloy_sol_types::sol_data::Int<72>, alloy_sol_types::sol_data::Int<80>, alloy_sol_types::sol_data::Int<88>, alloy_sol_types::sol_data::Int<96>, alloy_sol_types::sol_data::Int<104>, alloy_sol_types::sol_data::Int<112>, alloy_sol_types::sol_data::Int<120>, alloy_sol_types::sol_data::Int<128>, alloy_sol_types::sol_data::Int<136>, alloy_sol_types::sol_data::Int<144>, alloy_sol_types::sol_data::Int<152>, alloy_sol_types::sol_data::Int<160>, alloy_sol_types::sol_data::Int<168>, alloy_sol_types::sol_data::Int<176>, alloy_sol_types::sol_data::Int<184>, alloy_sol_types::sol_data::Int<192>, alloy_sol_types::sol_data::Int<200>, alloy_sol_types::sol_data::Int<208>, alloy_sol_types::sol_data::Int<216>, alloy_sol_types::sol_data::Int<224>, alloy_sol_types::sol_data::Int<232>, alloy_sol_types::sol_data::Int<240>, alloy_sol_types::sol_data::Int<248>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Uint<256>, alloy_sol_types::sol_data::Uint<8>, alloy_sol_types::sol_data::Uint<16>, alloy_sol_types::sol_data::Uint<24>, alloy_sol_types::sol_data::Uint<32>, alloy_sol_types::sol_data::Uint<40>, alloy_sol_types::sol_data::Uint<48>, alloy_sol_types::sol_data::Uint<56>, alloy_sol_types::sol_data::Uint<64>, alloy_sol_types::sol_data::Uint<72>, alloy_sol_types::sol_data::Uint<80>, alloy_sol_types::sol_data::Uint<88>, alloy_sol_types::sol_data::Uint<96>, alloy_sol_types::sol_data::Uint<104>, alloy_sol_types::sol_data::Uint<112>, alloy_sol_types::sol_data::Uint<120>, alloy_sol_types::sol_data::Uint<128>, alloy_sol_types::sol_data::Uint<136>, alloy_sol_types::sol_data::Uint<144>, alloy_sol_types::sol_data::Uint<152>, alloy_sol_types::sol_data::Uint<160>, alloy_sol_types::sol_data::Uint<168>, alloy_sol_types::sol_data::Uint<176>, alloy_sol_types::sol_data::Uint<184>, alloy_sol_types::sol_data::Uint<192>, alloy_sol_types::sol_data::Uint<200>, alloy_sol_types::sol_data::Uint<208>, alloy_sol_types::sol_data::Uint<216>, alloy_sol_types::sol_data::Uint<224>, alloy_sol_types::sol_data::Uint<232>, alloy_sol_types::sol_data::Uint<240>, alloy_sol_types::sol_data::Uint<248>, alloy_sol_types::sol_data::Uint<256>)>` is not implemented for `(Address, ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...)` + | |_^ unsatisfied trait bound | + = help: the trait `SolTypeValue<(alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::String, alloy_sol_types::sol_data::Bool, alloy_sol_types::sol_data::Bytes, alloy_sol_types::sol_data::FixedBytes<1>, alloy_sol_types::sol_data::FixedBytes<2>, alloy_sol_types::sol_data::FixedBytes<3>, alloy_sol_types::sol_data::FixedBytes<4>, alloy_sol_types::sol_data::FixedBytes<5>, alloy_sol_types::sol_data::FixedBytes<6>, alloy_sol_types::sol_data::FixedBytes<7>, alloy_sol_types::sol_data::FixedBytes<8>, alloy_sol_types::sol_data::FixedBytes<9>, alloy_sol_types::sol_data::FixedBytes<10>, alloy_sol_types::sol_data::FixedBytes<11>, alloy_sol_types::sol_data::FixedBytes<12>, alloy_sol_types::sol_data::FixedBytes<13>, alloy_sol_types::sol_data::FixedBytes<14>, alloy_sol_types::sol_data::FixedBytes<15>, alloy_sol_types::sol_data::FixedBytes<16>, alloy_sol_types::sol_data::FixedBytes<17>, alloy_sol_types::sol_data::FixedBytes<18>, alloy_sol_types::sol_data::FixedBytes<19>, alloy_sol_types::sol_data::FixedBytes<20>, alloy_sol_types::sol_data::FixedBytes<21>, alloy_sol_types::sol_data::FixedBytes<22>, alloy_sol_types::sol_data::FixedBytes<23>, alloy_sol_types::sol_data::FixedBytes<24>, alloy_sol_types::sol_data::FixedBytes<25>, alloy_sol_types::sol_data::FixedBytes<26>, alloy_sol_types::sol_data::FixedBytes<27>, alloy_sol_types::sol_data::FixedBytes<28>, alloy_sol_types::sol_data::FixedBytes<29>, alloy_sol_types::sol_data::FixedBytes<30>, alloy_sol_types::sol_data::FixedBytes<31>, alloy_sol_types::sol_data::FixedBytes<32>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Int<8>, alloy_sol_types::sol_data::Int<16>, alloy_sol_types::sol_data::Int<24>, alloy_sol_types::sol_data::Int<32>, alloy_sol_types::sol_data::Int<40>, alloy_sol_types::sol_data::Int<48>, alloy_sol_types::sol_data::Int<56>, alloy_sol_types::sol_data::Int<64>, alloy_sol_types::sol_data::Int<72>, alloy_sol_types::sol_data::Int<80>, alloy_sol_types::sol_data::Int<88>, alloy_sol_types::sol_data::Int<96>, alloy_sol_types::sol_data::Int<104>, alloy_sol_types::sol_data::Int<112>, alloy_sol_types::sol_data::Int<120>, alloy_sol_types::sol_data::Int<128>, alloy_sol_types::sol_data::Int<136>, alloy_sol_types::sol_data::Int<144>, alloy_sol_types::sol_data::Int<152>, alloy_sol_types::sol_data::Int<160>, alloy_sol_types::sol_data::Int<168>, alloy_sol_types::sol_data::Int<176>, alloy_sol_types::sol_data::Int<184>, alloy_sol_types::sol_data::Int<192>, alloy_sol_types::sol_data::Int<200>, alloy_sol_types::sol_data::Int<208>, alloy_sol_types::sol_data::Int<216>, alloy_sol_types::sol_data::Int<224>, alloy_sol_types::sol_data::Int<232>, alloy_sol_types::sol_data::Int<240>, alloy_sol_types::sol_data::Int<248>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Uint<256>, alloy_sol_types::sol_data::Uint<8>, alloy_sol_types::sol_data::Uint<16>, alloy_sol_types::sol_data::Uint<24>, alloy_sol_types::sol_data::Uint<32>, alloy_sol_types::sol_data::Uint<40>, alloy_sol_types::sol_data::Uint<48>, alloy_sol_types::sol_data::Uint<56>, alloy_sol_types::sol_data::Uint<64>, alloy_sol_types::sol_data::Uint<72>, alloy_sol_types::sol_data::Uint<80>, alloy_sol_types::sol_data::Uint<88>, alloy_sol_types::sol_data::Uint<96>, alloy_sol_types::sol_data::Uint<104>, alloy_sol_types::sol_data::Uint<112>, alloy_sol_types::sol_data::Uint<120>, alloy_sol_types::sol_data::Uint<128>, alloy_sol_types::sol_data::Uint<136>, alloy_sol_types::sol_data::Uint<144>, alloy_sol_types::sol_data::Uint<152>, alloy_sol_types::sol_data::Uint<160>, alloy_sol_types::sol_data::Uint<168>, alloy_sol_types::sol_data::Uint<176>, alloy_sol_types::sol_data::Uint<184>, alloy_sol_types::sol_data::Uint<192>, alloy_sol_types::sol_data::Uint<200>, alloy_sol_types::sol_data::Uint<208>, alloy_sol_types::sol_data::Uint<216>, alloy_sol_types::sol_data::Uint<224>, alloy_sol_types::sol_data::Uint<232>, alloy_sol_types::sol_data::Uint<240>, alloy_sol_types::sol_data::Uint<248>, alloy_sol_types::sol_data::Uint<256>)>` is not implemented for `(alloy_sol_types::private::Address, alloy_sol_types::private::Address, std::string::String, bool, alloy_sol_types::private::Bytes, alloy_sol_types::private::FixedBytes<1>, alloy_sol_types::private::FixedBytes<2>, alloy_sol_types::private::FixedBytes<3>, alloy_sol_types::private::FixedBytes<4>, alloy_sol_types::private::FixedBytes<5>, alloy_sol_types::private::FixedBytes<6>, alloy_sol_types::private::FixedBytes<7>, alloy_sol_types::private::FixedBytes<8>, alloy_sol_types::private::FixedBytes<9>, alloy_sol_types::private::FixedBytes<10>, alloy_sol_types::private::FixedBytes<11>, alloy_sol_types::private::FixedBytes<12>, alloy_sol_types::private::FixedBytes<13>, alloy_sol_types::private::FixedBytes<14>, alloy_sol_types::private::FixedBytes<15>, alloy_sol_types::private::FixedBytes<16>, alloy_sol_types::private::FixedBytes<17>, alloy_sol_types::private::FixedBytes<18>, alloy_sol_types::private::FixedBytes<19>, alloy_sol_types::private::FixedBytes<20>, alloy_sol_types::private::FixedBytes<21>, alloy_sol_types::private::FixedBytes<22>, alloy_sol_types::private::FixedBytes<23>, alloy_sol_types::private::FixedBytes<24>, alloy_sol_types::private::FixedBytes<25>, alloy_sol_types::private::FixedBytes<26>, alloy_sol_types::private::FixedBytes<27>, alloy_sol_types::private::FixedBytes<28>, alloy_sol_types::private::FixedBytes<29>, alloy_sol_types::private::FixedBytes<30>, alloy_sol_types::private::FixedBytes<31>, alloy_sol_types::private::FixedBytes<32>, alloy_sol_types::private::Signed<256, 4>, i8, i16, alloy_sol_types::private::Signed<24, 1>, i32, alloy_sol_types::private::Signed<40, 1>, alloy_sol_types::private::Signed<48, 1>, alloy_sol_types::private::Signed<56, 1>, i64, alloy_sol_types::private::Signed<72, 2>, alloy_sol_types::private::Signed<80, 2>, alloy_sol_types::private::Signed<88, 2>, alloy_sol_types::private::Signed<96, 2>, alloy_sol_types::private::Signed<104, 2>, alloy_sol_types::private::Signed<112, 2>, alloy_sol_types::private::Signed<120, 2>, i128, alloy_sol_types::private::Signed<136, 3>, alloy_sol_types::private::Signed<144, 3>, alloy_sol_types::private::Signed<152, 3>, alloy_sol_types::private::Signed<160, 3>, alloy_sol_types::private::Signed<168, 3>, alloy_sol_types::private::Signed<176, 3>, alloy_sol_types::private::Signed<184, 3>, alloy_sol_types::private::Signed<192, 3>, alloy_sol_types::private::Signed<200, 4>, alloy_sol_types::private::Signed<208, 4>, alloy_sol_types::private::Signed<216, 4>, alloy_sol_types::private::Signed<224, 4>, alloy_sol_types::private::Signed<232, 4>, alloy_sol_types::private::Signed<240, 4>, alloy_sol_types::private::Signed<248, 4>, alloy_sol_types::private::Signed<256, 4>, alloy_sol_types::private::Uint<256, 4>, u8, u16, alloy_sol_types::private::Uint<24, 1>, u32, alloy_sol_types::private::Uint<40, 1>, alloy_sol_types::private::Uint<48, 1>, alloy_sol_types::private::Uint<56, 1>, u64, alloy_sol_types::private::Uint<72, 2>, alloy_sol_types::private::Uint<80, 2>, alloy_sol_types::private::Uint<88, 2>, alloy_sol_types::private::Uint<96, 2>, alloy_sol_types::private::Uint<104, 2>, alloy_sol_types::private::Uint<112, 2>, alloy_sol_types::private::Uint<120, 2>, u128, alloy_sol_types::private::Uint<136, 3>, alloy_sol_types::private::Uint<144, 3>, alloy_sol_types::private::Uint<152, 3>, alloy_sol_types::private::Uint<160, 3>, alloy_sol_types::private::Uint<168, 3>, alloy_sol_types::private::Uint<176, 3>, alloy_sol_types::private::Uint<184, 3>, alloy_sol_types::private::Uint<192, 3>, alloy_sol_types::private::Uint<200, 4>, alloy_sol_types::private::Uint<208, 4>, alloy_sol_types::private::Uint<216, 4>, alloy_sol_types::private::Uint<224, 4>, alloy_sol_types::private::Uint<232, 4>, alloy_sol_types::private::Uint<240, 4>, alloy_sol_types::private::Uint<248, 4>, alloy_sol_types::private::Uint<256, 4>)` = help: the following other types implement trait `SolTypeValue`: `()` implements `SolTypeValue<()>` `(T1, T2)` implements `SolTypeValue<(U1, U2)>` @@ -191,10 +194,10 @@ error[E0277]: the trait bound `(alloy_sol_types::private::Address, alloy_sol_typ 5 | | address a; 6 | | address payable ap; ... | -111 | | } 112 | | } - | |_^ the trait `SolTypeValue<(alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::String, alloy_sol_types::sol_data::Bool, alloy_sol_types::sol_data::Bytes, alloy_sol_types::sol_data::FixedBytes<1>, alloy_sol_types::sol_data::FixedBytes<2>, alloy_sol_types::sol_data::FixedBytes<3>, alloy_sol_types::sol_data::FixedBytes<4>, alloy_sol_types::sol_data::FixedBytes<5>, alloy_sol_types::sol_data::FixedBytes<6>, alloy_sol_types::sol_data::FixedBytes<7>, alloy_sol_types::sol_data::FixedBytes<8>, alloy_sol_types::sol_data::FixedBytes<9>, alloy_sol_types::sol_data::FixedBytes<10>, alloy_sol_types::sol_data::FixedBytes<11>, alloy_sol_types::sol_data::FixedBytes<12>, alloy_sol_types::sol_data::FixedBytes<13>, alloy_sol_types::sol_data::FixedBytes<14>, alloy_sol_types::sol_data::FixedBytes<15>, alloy_sol_types::sol_data::FixedBytes<16>, alloy_sol_types::sol_data::FixedBytes<17>, alloy_sol_types::sol_data::FixedBytes<18>, alloy_sol_types::sol_data::FixedBytes<19>, alloy_sol_types::sol_data::FixedBytes<20>, alloy_sol_types::sol_data::FixedBytes<21>, alloy_sol_types::sol_data::FixedBytes<22>, alloy_sol_types::sol_data::FixedBytes<23>, alloy_sol_types::sol_data::FixedBytes<24>, alloy_sol_types::sol_data::FixedBytes<25>, alloy_sol_types::sol_data::FixedBytes<26>, alloy_sol_types::sol_data::FixedBytes<27>, alloy_sol_types::sol_data::FixedBytes<28>, alloy_sol_types::sol_data::FixedBytes<29>, alloy_sol_types::sol_data::FixedBytes<30>, alloy_sol_types::sol_data::FixedBytes<31>, alloy_sol_types::sol_data::FixedBytes<32>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Int<8>, alloy_sol_types::sol_data::Int<16>, alloy_sol_types::sol_data::Int<24>, alloy_sol_types::sol_data::Int<32>, alloy_sol_types::sol_data::Int<40>, alloy_sol_types::sol_data::Int<48>, alloy_sol_types::sol_data::Int<56>, alloy_sol_types::sol_data::Int<64>, alloy_sol_types::sol_data::Int<72>, alloy_sol_types::sol_data::Int<80>, alloy_sol_types::sol_data::Int<88>, alloy_sol_types::sol_data::Int<96>, alloy_sol_types::sol_data::Int<104>, alloy_sol_types::sol_data::Int<112>, alloy_sol_types::sol_data::Int<120>, alloy_sol_types::sol_data::Int<128>, alloy_sol_types::sol_data::Int<136>, alloy_sol_types::sol_data::Int<144>, alloy_sol_types::sol_data::Int<152>, alloy_sol_types::sol_data::Int<160>, alloy_sol_types::sol_data::Int<168>, alloy_sol_types::sol_data::Int<176>, alloy_sol_types::sol_data::Int<184>, alloy_sol_types::sol_data::Int<192>, alloy_sol_types::sol_data::Int<200>, alloy_sol_types::sol_data::Int<208>, alloy_sol_types::sol_data::Int<216>, alloy_sol_types::sol_data::Int<224>, alloy_sol_types::sol_data::Int<232>, alloy_sol_types::sol_data::Int<240>, alloy_sol_types::sol_data::Int<248>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Uint<256>, alloy_sol_types::sol_data::Uint<8>, alloy_sol_types::sol_data::Uint<16>, alloy_sol_types::sol_data::Uint<24>, alloy_sol_types::sol_data::Uint<32>, alloy_sol_types::sol_data::Uint<40>, alloy_sol_types::sol_data::Uint<48>, alloy_sol_types::sol_data::Uint<56>, alloy_sol_types::sol_data::Uint<64>, alloy_sol_types::sol_data::Uint<72>, alloy_sol_types::sol_data::Uint<80>, alloy_sol_types::sol_data::Uint<88>, alloy_sol_types::sol_data::Uint<96>, alloy_sol_types::sol_data::Uint<104>, alloy_sol_types::sol_data::Uint<112>, alloy_sol_types::sol_data::Uint<120>, alloy_sol_types::sol_data::Uint<128>, alloy_sol_types::sol_data::Uint<136>, alloy_sol_types::sol_data::Uint<144>, alloy_sol_types::sol_data::Uint<152>, alloy_sol_types::sol_data::Uint<160>, alloy_sol_types::sol_data::Uint<168>, alloy_sol_types::sol_data::Uint<176>, alloy_sol_types::sol_data::Uint<184>, alloy_sol_types::sol_data::Uint<192>, alloy_sol_types::sol_data::Uint<200>, alloy_sol_types::sol_data::Uint<208>, alloy_sol_types::sol_data::Uint<216>, alloy_sol_types::sol_data::Uint<224>, alloy_sol_types::sol_data::Uint<232>, alloy_sol_types::sol_data::Uint<240>, alloy_sol_types::sol_data::Uint<248>, alloy_sol_types::sol_data::Uint<256>)>` is not implemented for `(Address, ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...)` + | |_^ unsatisfied trait bound | + = help: the trait `SolTypeValue<(alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::String, alloy_sol_types::sol_data::Bool, alloy_sol_types::sol_data::Bytes, alloy_sol_types::sol_data::FixedBytes<1>, alloy_sol_types::sol_data::FixedBytes<2>, alloy_sol_types::sol_data::FixedBytes<3>, alloy_sol_types::sol_data::FixedBytes<4>, alloy_sol_types::sol_data::FixedBytes<5>, alloy_sol_types::sol_data::FixedBytes<6>, alloy_sol_types::sol_data::FixedBytes<7>, alloy_sol_types::sol_data::FixedBytes<8>, alloy_sol_types::sol_data::FixedBytes<9>, alloy_sol_types::sol_data::FixedBytes<10>, alloy_sol_types::sol_data::FixedBytes<11>, alloy_sol_types::sol_data::FixedBytes<12>, alloy_sol_types::sol_data::FixedBytes<13>, alloy_sol_types::sol_data::FixedBytes<14>, alloy_sol_types::sol_data::FixedBytes<15>, alloy_sol_types::sol_data::FixedBytes<16>, alloy_sol_types::sol_data::FixedBytes<17>, alloy_sol_types::sol_data::FixedBytes<18>, alloy_sol_types::sol_data::FixedBytes<19>, alloy_sol_types::sol_data::FixedBytes<20>, alloy_sol_types::sol_data::FixedBytes<21>, alloy_sol_types::sol_data::FixedBytes<22>, alloy_sol_types::sol_data::FixedBytes<23>, alloy_sol_types::sol_data::FixedBytes<24>, alloy_sol_types::sol_data::FixedBytes<25>, alloy_sol_types::sol_data::FixedBytes<26>, alloy_sol_types::sol_data::FixedBytes<27>, alloy_sol_types::sol_data::FixedBytes<28>, alloy_sol_types::sol_data::FixedBytes<29>, alloy_sol_types::sol_data::FixedBytes<30>, alloy_sol_types::sol_data::FixedBytes<31>, alloy_sol_types::sol_data::FixedBytes<32>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Int<8>, alloy_sol_types::sol_data::Int<16>, alloy_sol_types::sol_data::Int<24>, alloy_sol_types::sol_data::Int<32>, alloy_sol_types::sol_data::Int<40>, alloy_sol_types::sol_data::Int<48>, alloy_sol_types::sol_data::Int<56>, alloy_sol_types::sol_data::Int<64>, alloy_sol_types::sol_data::Int<72>, alloy_sol_types::sol_data::Int<80>, alloy_sol_types::sol_data::Int<88>, alloy_sol_types::sol_data::Int<96>, alloy_sol_types::sol_data::Int<104>, alloy_sol_types::sol_data::Int<112>, alloy_sol_types::sol_data::Int<120>, alloy_sol_types::sol_data::Int<128>, alloy_sol_types::sol_data::Int<136>, alloy_sol_types::sol_data::Int<144>, alloy_sol_types::sol_data::Int<152>, alloy_sol_types::sol_data::Int<160>, alloy_sol_types::sol_data::Int<168>, alloy_sol_types::sol_data::Int<176>, alloy_sol_types::sol_data::Int<184>, alloy_sol_types::sol_data::Int<192>, alloy_sol_types::sol_data::Int<200>, alloy_sol_types::sol_data::Int<208>, alloy_sol_types::sol_data::Int<216>, alloy_sol_types::sol_data::Int<224>, alloy_sol_types::sol_data::Int<232>, alloy_sol_types::sol_data::Int<240>, alloy_sol_types::sol_data::Int<248>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Uint<256>, alloy_sol_types::sol_data::Uint<8>, alloy_sol_types::sol_data::Uint<16>, alloy_sol_types::sol_data::Uint<24>, alloy_sol_types::sol_data::Uint<32>, alloy_sol_types::sol_data::Uint<40>, alloy_sol_types::sol_data::Uint<48>, alloy_sol_types::sol_data::Uint<56>, alloy_sol_types::sol_data::Uint<64>, alloy_sol_types::sol_data::Uint<72>, alloy_sol_types::sol_data::Uint<80>, alloy_sol_types::sol_data::Uint<88>, alloy_sol_types::sol_data::Uint<96>, alloy_sol_types::sol_data::Uint<104>, alloy_sol_types::sol_data::Uint<112>, alloy_sol_types::sol_data::Uint<120>, alloy_sol_types::sol_data::Uint<128>, alloy_sol_types::sol_data::Uint<136>, alloy_sol_types::sol_data::Uint<144>, alloy_sol_types::sol_data::Uint<152>, alloy_sol_types::sol_data::Uint<160>, alloy_sol_types::sol_data::Uint<168>, alloy_sol_types::sol_data::Uint<176>, alloy_sol_types::sol_data::Uint<184>, alloy_sol_types::sol_data::Uint<192>, alloy_sol_types::sol_data::Uint<200>, alloy_sol_types::sol_data::Uint<208>, alloy_sol_types::sol_data::Uint<216>, alloy_sol_types::sol_data::Uint<224>, alloy_sol_types::sol_data::Uint<232>, alloy_sol_types::sol_data::Uint<240>, alloy_sol_types::sol_data::Uint<248>, alloy_sol_types::sol_data::Uint<256>)>` is not implemented for `(alloy_sol_types::private::Address, alloy_sol_types::private::Address, std::string::String, bool, alloy_sol_types::private::Bytes, alloy_sol_types::private::FixedBytes<1>, alloy_sol_types::private::FixedBytes<2>, alloy_sol_types::private::FixedBytes<3>, alloy_sol_types::private::FixedBytes<4>, alloy_sol_types::private::FixedBytes<5>, alloy_sol_types::private::FixedBytes<6>, alloy_sol_types::private::FixedBytes<7>, alloy_sol_types::private::FixedBytes<8>, alloy_sol_types::private::FixedBytes<9>, alloy_sol_types::private::FixedBytes<10>, alloy_sol_types::private::FixedBytes<11>, alloy_sol_types::private::FixedBytes<12>, alloy_sol_types::private::FixedBytes<13>, alloy_sol_types::private::FixedBytes<14>, alloy_sol_types::private::FixedBytes<15>, alloy_sol_types::private::FixedBytes<16>, alloy_sol_types::private::FixedBytes<17>, alloy_sol_types::private::FixedBytes<18>, alloy_sol_types::private::FixedBytes<19>, alloy_sol_types::private::FixedBytes<20>, alloy_sol_types::private::FixedBytes<21>, alloy_sol_types::private::FixedBytes<22>, alloy_sol_types::private::FixedBytes<23>, alloy_sol_types::private::FixedBytes<24>, alloy_sol_types::private::FixedBytes<25>, alloy_sol_types::private::FixedBytes<26>, alloy_sol_types::private::FixedBytes<27>, alloy_sol_types::private::FixedBytes<28>, alloy_sol_types::private::FixedBytes<29>, alloy_sol_types::private::FixedBytes<30>, alloy_sol_types::private::FixedBytes<31>, alloy_sol_types::private::FixedBytes<32>, alloy_sol_types::private::Signed<256, 4>, i8, i16, alloy_sol_types::private::Signed<24, 1>, i32, alloy_sol_types::private::Signed<40, 1>, alloy_sol_types::private::Signed<48, 1>, alloy_sol_types::private::Signed<56, 1>, i64, alloy_sol_types::private::Signed<72, 2>, alloy_sol_types::private::Signed<80, 2>, alloy_sol_types::private::Signed<88, 2>, alloy_sol_types::private::Signed<96, 2>, alloy_sol_types::private::Signed<104, 2>, alloy_sol_types::private::Signed<112, 2>, alloy_sol_types::private::Signed<120, 2>, i128, alloy_sol_types::private::Signed<136, 3>, alloy_sol_types::private::Signed<144, 3>, alloy_sol_types::private::Signed<152, 3>, alloy_sol_types::private::Signed<160, 3>, alloy_sol_types::private::Signed<168, 3>, alloy_sol_types::private::Signed<176, 3>, alloy_sol_types::private::Signed<184, 3>, alloy_sol_types::private::Signed<192, 3>, alloy_sol_types::private::Signed<200, 4>, alloy_sol_types::private::Signed<208, 4>, alloy_sol_types::private::Signed<216, 4>, alloy_sol_types::private::Signed<224, 4>, alloy_sol_types::private::Signed<232, 4>, alloy_sol_types::private::Signed<240, 4>, alloy_sol_types::private::Signed<248, 4>, alloy_sol_types::private::Signed<256, 4>, alloy_sol_types::private::Uint<256, 4>, u8, u16, alloy_sol_types::private::Uint<24, 1>, u32, alloy_sol_types::private::Uint<40, 1>, alloy_sol_types::private::Uint<48, 1>, alloy_sol_types::private::Uint<56, 1>, u64, alloy_sol_types::private::Uint<72, 2>, alloy_sol_types::private::Uint<80, 2>, alloy_sol_types::private::Uint<88, 2>, alloy_sol_types::private::Uint<96, 2>, alloy_sol_types::private::Uint<104, 2>, alloy_sol_types::private::Uint<112, 2>, alloy_sol_types::private::Uint<120, 2>, u128, alloy_sol_types::private::Uint<136, 3>, alloy_sol_types::private::Uint<144, 3>, alloy_sol_types::private::Uint<152, 3>, alloy_sol_types::private::Uint<160, 3>, alloy_sol_types::private::Uint<168, 3>, alloy_sol_types::private::Uint<176, 3>, alloy_sol_types::private::Uint<184, 3>, alloy_sol_types::private::Uint<192, 3>, alloy_sol_types::private::Uint<200, 4>, alloy_sol_types::private::Uint<208, 4>, alloy_sol_types::private::Uint<216, 4>, alloy_sol_types::private::Uint<224, 4>, alloy_sol_types::private::Uint<232, 4>, alloy_sol_types::private::Uint<240, 4>, alloy_sol_types::private::Uint<248, 4>, alloy_sol_types::private::Uint<256, 4>)` = help: the following other types implement trait `SolTypeValue`: `()` implements `SolTypeValue<()>` `(T1, T2)` implements `SolTypeValue<(U1, U2)>` @@ -220,10 +223,10 @@ error[E0277]: the trait bound `(alloy_sol_types::private::Address, alloy_sol_typ 5 | | address a; 6 | | address payable ap; ... | -111 | | } 112 | | } - | |_^ the trait `SolTypeValue<(alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::String, alloy_sol_types::sol_data::Bool, alloy_sol_types::sol_data::Bytes, alloy_sol_types::sol_data::FixedBytes<1>, alloy_sol_types::sol_data::FixedBytes<2>, alloy_sol_types::sol_data::FixedBytes<3>, alloy_sol_types::sol_data::FixedBytes<4>, alloy_sol_types::sol_data::FixedBytes<5>, alloy_sol_types::sol_data::FixedBytes<6>, alloy_sol_types::sol_data::FixedBytes<7>, alloy_sol_types::sol_data::FixedBytes<8>, alloy_sol_types::sol_data::FixedBytes<9>, alloy_sol_types::sol_data::FixedBytes<10>, alloy_sol_types::sol_data::FixedBytes<11>, alloy_sol_types::sol_data::FixedBytes<12>, alloy_sol_types::sol_data::FixedBytes<13>, alloy_sol_types::sol_data::FixedBytes<14>, alloy_sol_types::sol_data::FixedBytes<15>, alloy_sol_types::sol_data::FixedBytes<16>, alloy_sol_types::sol_data::FixedBytes<17>, alloy_sol_types::sol_data::FixedBytes<18>, alloy_sol_types::sol_data::FixedBytes<19>, alloy_sol_types::sol_data::FixedBytes<20>, alloy_sol_types::sol_data::FixedBytes<21>, alloy_sol_types::sol_data::FixedBytes<22>, alloy_sol_types::sol_data::FixedBytes<23>, alloy_sol_types::sol_data::FixedBytes<24>, alloy_sol_types::sol_data::FixedBytes<25>, alloy_sol_types::sol_data::FixedBytes<26>, alloy_sol_types::sol_data::FixedBytes<27>, alloy_sol_types::sol_data::FixedBytes<28>, alloy_sol_types::sol_data::FixedBytes<29>, alloy_sol_types::sol_data::FixedBytes<30>, alloy_sol_types::sol_data::FixedBytes<31>, alloy_sol_types::sol_data::FixedBytes<32>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Int<8>, alloy_sol_types::sol_data::Int<16>, alloy_sol_types::sol_data::Int<24>, alloy_sol_types::sol_data::Int<32>, alloy_sol_types::sol_data::Int<40>, alloy_sol_types::sol_data::Int<48>, alloy_sol_types::sol_data::Int<56>, alloy_sol_types::sol_data::Int<64>, alloy_sol_types::sol_data::Int<72>, alloy_sol_types::sol_data::Int<80>, alloy_sol_types::sol_data::Int<88>, alloy_sol_types::sol_data::Int<96>, alloy_sol_types::sol_data::Int<104>, alloy_sol_types::sol_data::Int<112>, alloy_sol_types::sol_data::Int<120>, alloy_sol_types::sol_data::Int<128>, alloy_sol_types::sol_data::Int<136>, alloy_sol_types::sol_data::Int<144>, alloy_sol_types::sol_data::Int<152>, alloy_sol_types::sol_data::Int<160>, alloy_sol_types::sol_data::Int<168>, alloy_sol_types::sol_data::Int<176>, alloy_sol_types::sol_data::Int<184>, alloy_sol_types::sol_data::Int<192>, alloy_sol_types::sol_data::Int<200>, alloy_sol_types::sol_data::Int<208>, alloy_sol_types::sol_data::Int<216>, alloy_sol_types::sol_data::Int<224>, alloy_sol_types::sol_data::Int<232>, alloy_sol_types::sol_data::Int<240>, alloy_sol_types::sol_data::Int<248>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Uint<256>, alloy_sol_types::sol_data::Uint<8>, alloy_sol_types::sol_data::Uint<16>, alloy_sol_types::sol_data::Uint<24>, alloy_sol_types::sol_data::Uint<32>, alloy_sol_types::sol_data::Uint<40>, alloy_sol_types::sol_data::Uint<48>, alloy_sol_types::sol_data::Uint<56>, alloy_sol_types::sol_data::Uint<64>, alloy_sol_types::sol_data::Uint<72>, alloy_sol_types::sol_data::Uint<80>, alloy_sol_types::sol_data::Uint<88>, alloy_sol_types::sol_data::Uint<96>, alloy_sol_types::sol_data::Uint<104>, alloy_sol_types::sol_data::Uint<112>, alloy_sol_types::sol_data::Uint<120>, alloy_sol_types::sol_data::Uint<128>, alloy_sol_types::sol_data::Uint<136>, alloy_sol_types::sol_data::Uint<144>, alloy_sol_types::sol_data::Uint<152>, alloy_sol_types::sol_data::Uint<160>, alloy_sol_types::sol_data::Uint<168>, alloy_sol_types::sol_data::Uint<176>, alloy_sol_types::sol_data::Uint<184>, alloy_sol_types::sol_data::Uint<192>, alloy_sol_types::sol_data::Uint<200>, alloy_sol_types::sol_data::Uint<208>, alloy_sol_types::sol_data::Uint<216>, alloy_sol_types::sol_data::Uint<224>, alloy_sol_types::sol_data::Uint<232>, alloy_sol_types::sol_data::Uint<240>, alloy_sol_types::sol_data::Uint<248>, alloy_sol_types::sol_data::Uint<256>)>` is not implemented for `(Address, ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ..., ...)` + | |_^ unsatisfied trait bound | + = help: the trait `SolTypeValue<(alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::Address, alloy_sol_types::sol_data::String, alloy_sol_types::sol_data::Bool, alloy_sol_types::sol_data::Bytes, alloy_sol_types::sol_data::FixedBytes<1>, alloy_sol_types::sol_data::FixedBytes<2>, alloy_sol_types::sol_data::FixedBytes<3>, alloy_sol_types::sol_data::FixedBytes<4>, alloy_sol_types::sol_data::FixedBytes<5>, alloy_sol_types::sol_data::FixedBytes<6>, alloy_sol_types::sol_data::FixedBytes<7>, alloy_sol_types::sol_data::FixedBytes<8>, alloy_sol_types::sol_data::FixedBytes<9>, alloy_sol_types::sol_data::FixedBytes<10>, alloy_sol_types::sol_data::FixedBytes<11>, alloy_sol_types::sol_data::FixedBytes<12>, alloy_sol_types::sol_data::FixedBytes<13>, alloy_sol_types::sol_data::FixedBytes<14>, alloy_sol_types::sol_data::FixedBytes<15>, alloy_sol_types::sol_data::FixedBytes<16>, alloy_sol_types::sol_data::FixedBytes<17>, alloy_sol_types::sol_data::FixedBytes<18>, alloy_sol_types::sol_data::FixedBytes<19>, alloy_sol_types::sol_data::FixedBytes<20>, alloy_sol_types::sol_data::FixedBytes<21>, alloy_sol_types::sol_data::FixedBytes<22>, alloy_sol_types::sol_data::FixedBytes<23>, alloy_sol_types::sol_data::FixedBytes<24>, alloy_sol_types::sol_data::FixedBytes<25>, alloy_sol_types::sol_data::FixedBytes<26>, alloy_sol_types::sol_data::FixedBytes<27>, alloy_sol_types::sol_data::FixedBytes<28>, alloy_sol_types::sol_data::FixedBytes<29>, alloy_sol_types::sol_data::FixedBytes<30>, alloy_sol_types::sol_data::FixedBytes<31>, alloy_sol_types::sol_data::FixedBytes<32>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Int<8>, alloy_sol_types::sol_data::Int<16>, alloy_sol_types::sol_data::Int<24>, alloy_sol_types::sol_data::Int<32>, alloy_sol_types::sol_data::Int<40>, alloy_sol_types::sol_data::Int<48>, alloy_sol_types::sol_data::Int<56>, alloy_sol_types::sol_data::Int<64>, alloy_sol_types::sol_data::Int<72>, alloy_sol_types::sol_data::Int<80>, alloy_sol_types::sol_data::Int<88>, alloy_sol_types::sol_data::Int<96>, alloy_sol_types::sol_data::Int<104>, alloy_sol_types::sol_data::Int<112>, alloy_sol_types::sol_data::Int<120>, alloy_sol_types::sol_data::Int<128>, alloy_sol_types::sol_data::Int<136>, alloy_sol_types::sol_data::Int<144>, alloy_sol_types::sol_data::Int<152>, alloy_sol_types::sol_data::Int<160>, alloy_sol_types::sol_data::Int<168>, alloy_sol_types::sol_data::Int<176>, alloy_sol_types::sol_data::Int<184>, alloy_sol_types::sol_data::Int<192>, alloy_sol_types::sol_data::Int<200>, alloy_sol_types::sol_data::Int<208>, alloy_sol_types::sol_data::Int<216>, alloy_sol_types::sol_data::Int<224>, alloy_sol_types::sol_data::Int<232>, alloy_sol_types::sol_data::Int<240>, alloy_sol_types::sol_data::Int<248>, alloy_sol_types::sol_data::Int<256>, alloy_sol_types::sol_data::Uint<256>, alloy_sol_types::sol_data::Uint<8>, alloy_sol_types::sol_data::Uint<16>, alloy_sol_types::sol_data::Uint<24>, alloy_sol_types::sol_data::Uint<32>, alloy_sol_types::sol_data::Uint<40>, alloy_sol_types::sol_data::Uint<48>, alloy_sol_types::sol_data::Uint<56>, alloy_sol_types::sol_data::Uint<64>, alloy_sol_types::sol_data::Uint<72>, alloy_sol_types::sol_data::Uint<80>, alloy_sol_types::sol_data::Uint<88>, alloy_sol_types::sol_data::Uint<96>, alloy_sol_types::sol_data::Uint<104>, alloy_sol_types::sol_data::Uint<112>, alloy_sol_types::sol_data::Uint<120>, alloy_sol_types::sol_data::Uint<128>, alloy_sol_types::sol_data::Uint<136>, alloy_sol_types::sol_data::Uint<144>, alloy_sol_types::sol_data::Uint<152>, alloy_sol_types::sol_data::Uint<160>, alloy_sol_types::sol_data::Uint<168>, alloy_sol_types::sol_data::Uint<176>, alloy_sol_types::sol_data::Uint<184>, alloy_sol_types::sol_data::Uint<192>, alloy_sol_types::sol_data::Uint<200>, alloy_sol_types::sol_data::Uint<208>, alloy_sol_types::sol_data::Uint<216>, alloy_sol_types::sol_data::Uint<224>, alloy_sol_types::sol_data::Uint<232>, alloy_sol_types::sol_data::Uint<240>, alloy_sol_types::sol_data::Uint<248>, alloy_sol_types::sol_data::Uint<256>)>` is not implemented for `(alloy_sol_types::private::Address, alloy_sol_types::private::Address, std::string::String, bool, alloy_sol_types::private::Bytes, alloy_sol_types::private::FixedBytes<1>, alloy_sol_types::private::FixedBytes<2>, alloy_sol_types::private::FixedBytes<3>, alloy_sol_types::private::FixedBytes<4>, alloy_sol_types::private::FixedBytes<5>, alloy_sol_types::private::FixedBytes<6>, alloy_sol_types::private::FixedBytes<7>, alloy_sol_types::private::FixedBytes<8>, alloy_sol_types::private::FixedBytes<9>, alloy_sol_types::private::FixedBytes<10>, alloy_sol_types::private::FixedBytes<11>, alloy_sol_types::private::FixedBytes<12>, alloy_sol_types::private::FixedBytes<13>, alloy_sol_types::private::FixedBytes<14>, alloy_sol_types::private::FixedBytes<15>, alloy_sol_types::private::FixedBytes<16>, alloy_sol_types::private::FixedBytes<17>, alloy_sol_types::private::FixedBytes<18>, alloy_sol_types::private::FixedBytes<19>, alloy_sol_types::private::FixedBytes<20>, alloy_sol_types::private::FixedBytes<21>, alloy_sol_types::private::FixedBytes<22>, alloy_sol_types::private::FixedBytes<23>, alloy_sol_types::private::FixedBytes<24>, alloy_sol_types::private::FixedBytes<25>, alloy_sol_types::private::FixedBytes<26>, alloy_sol_types::private::FixedBytes<27>, alloy_sol_types::private::FixedBytes<28>, alloy_sol_types::private::FixedBytes<29>, alloy_sol_types::private::FixedBytes<30>, alloy_sol_types::private::FixedBytes<31>, alloy_sol_types::private::FixedBytes<32>, alloy_sol_types::private::Signed<256, 4>, i8, i16, alloy_sol_types::private::Signed<24, 1>, i32, alloy_sol_types::private::Signed<40, 1>, alloy_sol_types::private::Signed<48, 1>, alloy_sol_types::private::Signed<56, 1>, i64, alloy_sol_types::private::Signed<72, 2>, alloy_sol_types::private::Signed<80, 2>, alloy_sol_types::private::Signed<88, 2>, alloy_sol_types::private::Signed<96, 2>, alloy_sol_types::private::Signed<104, 2>, alloy_sol_types::private::Signed<112, 2>, alloy_sol_types::private::Signed<120, 2>, i128, alloy_sol_types::private::Signed<136, 3>, alloy_sol_types::private::Signed<144, 3>, alloy_sol_types::private::Signed<152, 3>, alloy_sol_types::private::Signed<160, 3>, alloy_sol_types::private::Signed<168, 3>, alloy_sol_types::private::Signed<176, 3>, alloy_sol_types::private::Signed<184, 3>, alloy_sol_types::private::Signed<192, 3>, alloy_sol_types::private::Signed<200, 4>, alloy_sol_types::private::Signed<208, 4>, alloy_sol_types::private::Signed<216, 4>, alloy_sol_types::private::Signed<224, 4>, alloy_sol_types::private::Signed<232, 4>, alloy_sol_types::private::Signed<240, 4>, alloy_sol_types::private::Signed<248, 4>, alloy_sol_types::private::Signed<256, 4>, alloy_sol_types::private::Uint<256, 4>, u8, u16, alloy_sol_types::private::Uint<24, 1>, u32, alloy_sol_types::private::Uint<40, 1>, alloy_sol_types::private::Uint<48, 1>, alloy_sol_types::private::Uint<56, 1>, u64, alloy_sol_types::private::Uint<72, 2>, alloy_sol_types::private::Uint<80, 2>, alloy_sol_types::private::Uint<88, 2>, alloy_sol_types::private::Uint<96, 2>, alloy_sol_types::private::Uint<104, 2>, alloy_sol_types::private::Uint<112, 2>, alloy_sol_types::private::Uint<120, 2>, u128, alloy_sol_types::private::Uint<136, 3>, alloy_sol_types::private::Uint<144, 3>, alloy_sol_types::private::Uint<152, 3>, alloy_sol_types::private::Uint<160, 3>, alloy_sol_types::private::Uint<168, 3>, alloy_sol_types::private::Uint<176, 3>, alloy_sol_types::private::Uint<184, 3>, alloy_sol_types::private::Uint<192, 3>, alloy_sol_types::private::Uint<200, 4>, alloy_sol_types::private::Uint<208, 4>, alloy_sol_types::private::Uint<216, 4>, alloy_sol_types::private::Uint<224, 4>, alloy_sol_types::private::Uint<232, 4>, alloy_sol_types::private::Uint<240, 4>, alloy_sol_types::private::Uint<248, 4>, alloy_sol_types::private::Uint<256, 4>)` = help: the following other types implement trait `SolTypeValue`: `()` implements `SolTypeValue<()>` `(T1, T2)` implements `SolTypeValue<(U1, U2)>` From ad9bfc14564a82e27a6e94ad73fb5be7b14416ae Mon Sep 17 00:00:00 2001 From: DaniPopes <57450786+DaniPopes@users.noreply.github.com> Date: Mon, 3 Feb 2025 21:14:34 +0100 Subject: [PATCH 2/2] pin --- Cargo.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.toml b/Cargo.toml index 53b934d88..51b3a35a8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -51,7 +51,7 @@ serde = { version = "1.0", default-features = false, features = ["alloc"] } serde_json = { version = "1.0", default-features = false, features = ["alloc"] } # macros -proc-macro-error2 = "2.0.0" +proc-macro-error2 = ">=2.0.0, <=2.0.1" # We directly use the `entry_point` private API. proc-macro2 = "1.0" quote = "1.0" syn = "2.0"