1#[allow(
12 non_camel_case_types,
13 non_snake_case,
14 clippy::pub_underscore_fields,
15 clippy::style,
16 clippy::empty_structs_with_brackets
17)]
18pub mod BN254 {
19 use alloy::sol_types as alloy_sol_types;
20
21 use super::*;
22 #[derive(Default, Debug, PartialEq, Eq, Hash)]
23 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
24 #[derive(Clone)]
25 pub struct BaseField(alloy::sol_types::private::primitives::aliases::U256);
26 const _: () = {
27 use alloy::sol_types as alloy_sol_types;
28 #[automatically_derived]
29 impl alloy_sol_types::private::SolTypeValue<BaseField>
30 for alloy::sol_types::private::primitives::aliases::U256
31 {
32 #[inline]
33 fn stv_to_tokens(
34 &self,
35 ) -> <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::Token<'_>
36 {
37 alloy_sol_types::private::SolTypeValue::<
38 alloy::sol_types::sol_data::Uint<256>,
39 >::stv_to_tokens(self)
40 }
41 #[inline]
42 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
43 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(self)
44 .0
45 }
46 #[inline]
47 fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
48 <alloy::sol_types::sol_data::Uint<
49 256,
50 > as alloy_sol_types::SolType>::abi_encode_packed_to(self, out)
51 }
52 #[inline]
53 fn stv_abi_packed_encoded_size(&self) -> usize {
54 <alloy::sol_types::sol_data::Uint<
55 256,
56 > as alloy_sol_types::SolType>::abi_encoded_size(self)
57 }
58 }
59 #[automatically_derived]
60 impl BaseField {
61 pub const NAME: &'static str = stringify!(@ name);
63 #[inline]
65 pub const fn from(value: alloy::sol_types::private::primitives::aliases::U256) -> Self {
66 Self(value)
67 }
68 #[inline]
70 pub const fn into(self) -> alloy::sol_types::private::primitives::aliases::U256 {
71 self.0
72 }
73 #[inline]
76 pub fn abi_encode(&self) -> alloy_sol_types::private::Vec<u8> {
77 <Self as alloy_sol_types::SolType>::abi_encode(&self.0)
78 }
79 #[inline]
82 pub fn abi_encode_packed(&self) -> alloy_sol_types::private::Vec<u8> {
83 <Self as alloy_sol_types::SolType>::abi_encode_packed(&self.0)
84 }
85 }
86 #[automatically_derived]
87 impl alloy_sol_types::SolType for BaseField {
88 type RustType = alloy::sol_types::private::primitives::aliases::U256;
89 type Token<'a> =
90 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::Token<'a>;
91 const SOL_NAME: &'static str = Self::NAME;
92 const ENCODED_SIZE: Option<usize> =
93 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::ENCODED_SIZE;
94 const PACKED_ENCODED_SIZE: Option<usize> = <alloy::sol_types::sol_data::Uint<
95 256,
96 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
97 #[inline]
98 fn valid_token(token: &Self::Token<'_>) -> bool {
99 Self::type_check(token).is_ok()
100 }
101 #[inline]
102 fn type_check(token: &Self::Token<'_>) -> alloy_sol_types::Result<()> {
103 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::type_check(
104 token,
105 )
106 }
107 #[inline]
108 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
109 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::detokenize(
110 token,
111 )
112 }
113 }
114 #[automatically_derived]
115 impl alloy_sol_types::EventTopic for BaseField {
116 #[inline]
117 fn topic_preimage_length(rust: &Self::RustType) -> usize {
118 <alloy::sol_types::sol_data::Uint<
119 256,
120 > as alloy_sol_types::EventTopic>::topic_preimage_length(rust)
121 }
122 #[inline]
123 fn encode_topic_preimage(
124 rust: &Self::RustType,
125 out: &mut alloy_sol_types::private::Vec<u8>,
126 ) {
127 <alloy::sol_types::sol_data::Uint<
128 256,
129 > as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, out)
130 }
131 #[inline]
132 fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken {
133 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::EventTopic>::encode_topic(
134 rust,
135 )
136 }
137 }
138 };
139 #[derive(Default, Debug, PartialEq, Eq, Hash)]
140 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
144 #[derive(Clone)]
145 pub struct G1Point {
146 #[allow(missing_docs)]
147 pub x: <BaseField as alloy::sol_types::SolType>::RustType,
148 #[allow(missing_docs)]
149 pub y: <BaseField as alloy::sol_types::SolType>::RustType,
150 }
151 #[allow(
152 non_camel_case_types,
153 non_snake_case,
154 clippy::pub_underscore_fields,
155 clippy::style
156 )]
157 const _: () = {
158 use alloy::sol_types as alloy_sol_types;
159 #[doc(hidden)]
160 type UnderlyingSolTuple<'a> = (BaseField, BaseField);
161 #[doc(hidden)]
162 type UnderlyingRustTuple<'a> = (
163 <BaseField as alloy::sol_types::SolType>::RustType,
164 <BaseField as alloy::sol_types::SolType>::RustType,
165 );
166 #[cfg(test)]
167 #[allow(dead_code, unreachable_patterns)]
168 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
169 match _t {
170 alloy_sol_types::private::AssertTypeEq::<
171 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
172 >(_) => {},
173 }
174 }
175 #[automatically_derived]
176 #[doc(hidden)]
177 impl ::core::convert::From<G1Point> for UnderlyingRustTuple<'_> {
178 fn from(value: G1Point) -> Self {
179 (value.x, value.y)
180 }
181 }
182 #[automatically_derived]
183 #[doc(hidden)]
184 impl ::core::convert::From<UnderlyingRustTuple<'_>> for G1Point {
185 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
186 Self {
187 x: tuple.0,
188 y: tuple.1,
189 }
190 }
191 }
192 #[automatically_derived]
193 impl alloy_sol_types::SolValue for G1Point {
194 type SolType = Self;
195 }
196 #[automatically_derived]
197 impl alloy_sol_types::private::SolTypeValue<Self> for G1Point {
198 #[inline]
199 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
200 (
201 <BaseField as alloy_sol_types::SolType>::tokenize(&self.x),
202 <BaseField as alloy_sol_types::SolType>::tokenize(&self.y),
203 )
204 }
205 #[inline]
206 fn stv_abi_encoded_size(&self) -> usize {
207 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
208 return size;
209 }
210 let tuple =
211 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
212 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
213 }
214 #[inline]
215 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
216 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
217 }
218 #[inline]
219 fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
220 let tuple =
221 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
222 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encode_packed_to(
223 &tuple, out,
224 )
225 }
226 #[inline]
227 fn stv_abi_packed_encoded_size(&self) -> usize {
228 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
229 return size;
230 }
231 let tuple =
232 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
233 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_packed_encoded_size(
234 &tuple,
235 )
236 }
237 }
238 #[automatically_derived]
239 impl alloy_sol_types::SolType for G1Point {
240 type RustType = Self;
241 type Token<'a> = <UnderlyingSolTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
242 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
243 const ENCODED_SIZE: Option<usize> =
244 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::ENCODED_SIZE;
245 const PACKED_ENCODED_SIZE: Option<usize> =
246 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
247 #[inline]
248 fn valid_token(token: &Self::Token<'_>) -> bool {
249 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
250 }
251 #[inline]
252 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
253 let tuple = <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::detokenize(token);
254 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
255 }
256 }
257 #[automatically_derived]
258 impl alloy_sol_types::SolStruct for G1Point {
259 const NAME: &'static str = "G1Point";
260 #[inline]
261 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
262 alloy_sol_types::private::Cow::Borrowed("G1Point(uint256 x,uint256 y)")
263 }
264 #[inline]
265 fn eip712_components(
266 ) -> alloy_sol_types::private::Vec<alloy_sol_types::private::Cow<'static, str>>
267 {
268 alloy_sol_types::private::Vec::new()
269 }
270 #[inline]
271 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
272 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
273 }
274 #[inline]
275 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
276 [
277 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.x).0,
278 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.y).0,
279 ]
280 .concat()
281 }
282 }
283 #[automatically_derived]
284 impl alloy_sol_types::EventTopic for G1Point {
285 #[inline]
286 fn topic_preimage_length(rust: &Self::RustType) -> usize {
287 0usize
288 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.x)
289 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.y)
290 }
291 #[inline]
292 fn encode_topic_preimage(
293 rust: &Self::RustType,
294 out: &mut alloy_sol_types::private::Vec<u8>,
295 ) {
296 out.reserve(<Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust));
297 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.x, out);
298 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.y, out);
299 }
300 #[inline]
301 fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken {
302 let mut out = alloy_sol_types::private::Vec::new();
303 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, &mut out);
304 alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out))
305 }
306 }
307 };
308 #[derive(Default, Debug, PartialEq, Eq, Hash)]
309 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
313 #[derive(Clone)]
314 pub struct G2Point {
315 #[allow(missing_docs)]
316 pub x0: <BaseField as alloy::sol_types::SolType>::RustType,
317 #[allow(missing_docs)]
318 pub x1: <BaseField as alloy::sol_types::SolType>::RustType,
319 #[allow(missing_docs)]
320 pub y0: <BaseField as alloy::sol_types::SolType>::RustType,
321 #[allow(missing_docs)]
322 pub y1: <BaseField as alloy::sol_types::SolType>::RustType,
323 }
324 #[allow(
325 non_camel_case_types,
326 non_snake_case,
327 clippy::pub_underscore_fields,
328 clippy::style
329 )]
330 const _: () = {
331 use alloy::sol_types as alloy_sol_types;
332 #[doc(hidden)]
333 type UnderlyingSolTuple<'a> = (BaseField, BaseField, BaseField, BaseField);
334 #[doc(hidden)]
335 type UnderlyingRustTuple<'a> = (
336 <BaseField as alloy::sol_types::SolType>::RustType,
337 <BaseField as alloy::sol_types::SolType>::RustType,
338 <BaseField as alloy::sol_types::SolType>::RustType,
339 <BaseField as alloy::sol_types::SolType>::RustType,
340 );
341 #[cfg(test)]
342 #[allow(dead_code, unreachable_patterns)]
343 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
344 match _t {
345 alloy_sol_types::private::AssertTypeEq::<
346 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
347 >(_) => {},
348 }
349 }
350 #[automatically_derived]
351 #[doc(hidden)]
352 impl ::core::convert::From<G2Point> for UnderlyingRustTuple<'_> {
353 fn from(value: G2Point) -> Self {
354 (value.x0, value.x1, value.y0, value.y1)
355 }
356 }
357 #[automatically_derived]
358 #[doc(hidden)]
359 impl ::core::convert::From<UnderlyingRustTuple<'_>> for G2Point {
360 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
361 Self {
362 x0: tuple.0,
363 x1: tuple.1,
364 y0: tuple.2,
365 y1: tuple.3,
366 }
367 }
368 }
369 #[automatically_derived]
370 impl alloy_sol_types::SolValue for G2Point {
371 type SolType = Self;
372 }
373 #[automatically_derived]
374 impl alloy_sol_types::private::SolTypeValue<Self> for G2Point {
375 #[inline]
376 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
377 (
378 <BaseField as alloy_sol_types::SolType>::tokenize(&self.x0),
379 <BaseField as alloy_sol_types::SolType>::tokenize(&self.x1),
380 <BaseField as alloy_sol_types::SolType>::tokenize(&self.y0),
381 <BaseField as alloy_sol_types::SolType>::tokenize(&self.y1),
382 )
383 }
384 #[inline]
385 fn stv_abi_encoded_size(&self) -> usize {
386 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
387 return size;
388 }
389 let tuple =
390 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
391 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
392 }
393 #[inline]
394 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
395 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
396 }
397 #[inline]
398 fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
399 let tuple =
400 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
401 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encode_packed_to(
402 &tuple, out,
403 )
404 }
405 #[inline]
406 fn stv_abi_packed_encoded_size(&self) -> usize {
407 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
408 return size;
409 }
410 let tuple =
411 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
412 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_packed_encoded_size(
413 &tuple,
414 )
415 }
416 }
417 #[automatically_derived]
418 impl alloy_sol_types::SolType for G2Point {
419 type RustType = Self;
420 type Token<'a> = <UnderlyingSolTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
421 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
422 const ENCODED_SIZE: Option<usize> =
423 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::ENCODED_SIZE;
424 const PACKED_ENCODED_SIZE: Option<usize> =
425 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
426 #[inline]
427 fn valid_token(token: &Self::Token<'_>) -> bool {
428 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
429 }
430 #[inline]
431 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
432 let tuple = <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::detokenize(token);
433 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
434 }
435 }
436 #[automatically_derived]
437 impl alloy_sol_types::SolStruct for G2Point {
438 const NAME: &'static str = "G2Point";
439 #[inline]
440 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
441 alloy_sol_types::private::Cow::Borrowed(
442 "G2Point(uint256 x0,uint256 x1,uint256 y0,uint256 y1)",
443 )
444 }
445 #[inline]
446 fn eip712_components(
447 ) -> alloy_sol_types::private::Vec<alloy_sol_types::private::Cow<'static, str>>
448 {
449 alloy_sol_types::private::Vec::new()
450 }
451 #[inline]
452 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
453 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
454 }
455 #[inline]
456 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
457 [
458 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.x0).0,
459 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.x1).0,
460 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.y0).0,
461 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.y1).0,
462 ]
463 .concat()
464 }
465 }
466 #[automatically_derived]
467 impl alloy_sol_types::EventTopic for G2Point {
468 #[inline]
469 fn topic_preimage_length(rust: &Self::RustType) -> usize {
470 0usize
471 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.x0)
472 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.x1)
473 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.y0)
474 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.y1)
475 }
476 #[inline]
477 fn encode_topic_preimage(
478 rust: &Self::RustType,
479 out: &mut alloy_sol_types::private::Vec<u8>,
480 ) {
481 out.reserve(<Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust));
482 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.x0, out);
483 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.x1, out);
484 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.y0, out);
485 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.y1, out);
486 }
487 #[inline]
488 fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken {
489 let mut out = alloy_sol_types::private::Vec::new();
490 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, &mut out);
491 alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out))
492 }
493 }
494 };
495 use alloy::contract as alloy_contract;
496 #[inline]
500 pub const fn new<
501 T: alloy_contract::private::Transport + ::core::clone::Clone,
502 P: alloy_contract::private::Provider<T, N>,
503 N: alloy_contract::private::Network,
504 >(
505 address: alloy_sol_types::private::Address,
506 provider: P,
507 ) -> BN254Instance<T, P, N> {
508 BN254Instance::<T, P, N>::new(address, provider)
509 }
510 #[derive(Clone)]
522 pub struct BN254Instance<T, P, N = alloy_contract::private::Ethereum> {
523 address: alloy_sol_types::private::Address,
524 provider: P,
525 _network_transport: ::core::marker::PhantomData<(N, T)>,
526 }
527 #[automatically_derived]
528 impl<T, P, N> ::core::fmt::Debug for BN254Instance<T, P, N> {
529 #[inline]
530 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
531 f.debug_tuple("BN254Instance").field(&self.address).finish()
532 }
533 }
534 #[automatically_derived]
536 impl<
537 T: alloy_contract::private::Transport + ::core::clone::Clone,
538 P: alloy_contract::private::Provider<T, N>,
539 N: alloy_contract::private::Network,
540 > BN254Instance<T, P, N>
541 {
542 #[inline]
546 pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self {
547 Self {
548 address,
549 provider,
550 _network_transport: ::core::marker::PhantomData,
551 }
552 }
553 #[inline]
555 pub const fn address(&self) -> &alloy_sol_types::private::Address {
556 &self.address
557 }
558 #[inline]
560 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
561 self.address = address;
562 }
563 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
565 self.set_address(address);
566 self
567 }
568 #[inline]
570 pub const fn provider(&self) -> &P {
571 &self.provider
572 }
573 }
574 impl<T, P: ::core::clone::Clone, N> BN254Instance<T, &P, N> {
575 #[inline]
577 pub fn with_cloned_provider(self) -> BN254Instance<T, P, N> {
578 BN254Instance {
579 address: self.address,
580 provider: ::core::clone::Clone::clone(&self.provider),
581 _network_transport: ::core::marker::PhantomData,
582 }
583 }
584 }
585 #[automatically_derived]
587 impl<
588 T: alloy_contract::private::Transport + ::core::clone::Clone,
589 P: alloy_contract::private::Provider<T, N>,
590 N: alloy_contract::private::Network,
591 > BN254Instance<T, P, N>
592 {
593 pub fn call_builder<C: alloy_sol_types::SolCall>(
598 &self,
599 call: &C,
600 ) -> alloy_contract::SolCallBuilder<T, &P, C, N> {
601 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
602 }
603 }
604 #[automatically_derived]
606 impl<
607 T: alloy_contract::private::Transport + ::core::clone::Clone,
608 P: alloy_contract::private::Provider<T, N>,
609 N: alloy_contract::private::Network,
610 > BN254Instance<T, P, N>
611 {
612 pub fn event_filter<E: alloy_sol_types::SolEvent>(
617 &self,
618 ) -> alloy_contract::Event<T, &P, E, N> {
619 alloy_contract::Event::new_sol(&self.provider, &self.address)
620 }
621 }
622}
623#[allow(
632 non_camel_case_types,
633 non_snake_case,
634 clippy::pub_underscore_fields,
635 clippy::style,
636 clippy::empty_structs_with_brackets
637)]
638pub mod EdOnBN254 {
639 use alloy::sol_types as alloy_sol_types;
640
641 use super::*;
642 #[derive(Default, Debug, PartialEq, Eq, Hash)]
643 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
647 #[derive(Clone)]
648 pub struct EdOnBN254Point {
649 #[allow(missing_docs)]
650 pub x: alloy::sol_types::private::primitives::aliases::U256,
651 #[allow(missing_docs)]
652 pub y: alloy::sol_types::private::primitives::aliases::U256,
653 }
654 #[allow(
655 non_camel_case_types,
656 non_snake_case,
657 clippy::pub_underscore_fields,
658 clippy::style
659 )]
660 const _: () = {
661 use alloy::sol_types as alloy_sol_types;
662 #[doc(hidden)]
663 type UnderlyingSolTuple<'a> = (
664 alloy::sol_types::sol_data::Uint<256>,
665 alloy::sol_types::sol_data::Uint<256>,
666 );
667 #[doc(hidden)]
668 type UnderlyingRustTuple<'a> = (
669 alloy::sol_types::private::primitives::aliases::U256,
670 alloy::sol_types::private::primitives::aliases::U256,
671 );
672 #[cfg(test)]
673 #[allow(dead_code, unreachable_patterns)]
674 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
675 match _t {
676 alloy_sol_types::private::AssertTypeEq::<
677 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
678 >(_) => {},
679 }
680 }
681 #[automatically_derived]
682 #[doc(hidden)]
683 impl ::core::convert::From<EdOnBN254Point> for UnderlyingRustTuple<'_> {
684 fn from(value: EdOnBN254Point) -> Self {
685 (value.x, value.y)
686 }
687 }
688 #[automatically_derived]
689 #[doc(hidden)]
690 impl ::core::convert::From<UnderlyingRustTuple<'_>> for EdOnBN254Point {
691 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
692 Self {
693 x: tuple.0,
694 y: tuple.1,
695 }
696 }
697 }
698 #[automatically_derived]
699 impl alloy_sol_types::SolValue for EdOnBN254Point {
700 type SolType = Self;
701 }
702 #[automatically_derived]
703 impl alloy_sol_types::private::SolTypeValue<Self> for EdOnBN254Point {
704 #[inline]
705 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
706 (
707 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
708 &self.x,
709 ),
710 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
711 &self.y,
712 ),
713 )
714 }
715 #[inline]
716 fn stv_abi_encoded_size(&self) -> usize {
717 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
718 return size;
719 }
720 let tuple =
721 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
722 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
723 }
724 #[inline]
725 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
726 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
727 }
728 #[inline]
729 fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
730 let tuple =
731 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
732 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_encode_packed_to(
733 &tuple, out,
734 )
735 }
736 #[inline]
737 fn stv_abi_packed_encoded_size(&self) -> usize {
738 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
739 return size;
740 }
741 let tuple =
742 <UnderlyingRustTuple<'_> as ::core::convert::From<Self>>::from(self.clone());
743 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::abi_packed_encoded_size(
744 &tuple,
745 )
746 }
747 }
748 #[automatically_derived]
749 impl alloy_sol_types::SolType for EdOnBN254Point {
750 type RustType = Self;
751 type Token<'a> = <UnderlyingSolTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
752 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
753 const ENCODED_SIZE: Option<usize> =
754 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::ENCODED_SIZE;
755 const PACKED_ENCODED_SIZE: Option<usize> =
756 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
757 #[inline]
758 fn valid_token(token: &Self::Token<'_>) -> bool {
759 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
760 }
761 #[inline]
762 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
763 let tuple = <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::detokenize(token);
764 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
765 }
766 }
767 #[automatically_derived]
768 impl alloy_sol_types::SolStruct for EdOnBN254Point {
769 const NAME: &'static str = "EdOnBN254Point";
770 #[inline]
771 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
772 alloy_sol_types::private::Cow::Borrowed("EdOnBN254Point(uint256 x,uint256 y)")
773 }
774 #[inline]
775 fn eip712_components(
776 ) -> alloy_sol_types::private::Vec<alloy_sol_types::private::Cow<'static, str>>
777 {
778 alloy_sol_types::private::Vec::new()
779 }
780 #[inline]
781 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
782 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
783 }
784 #[inline]
785 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
786 [
787 <alloy::sol_types::sol_data::Uint<
788 256,
789 > as alloy_sol_types::SolType>::eip712_data_word(&self.x)
790 .0,
791 <alloy::sol_types::sol_data::Uint<
792 256,
793 > as alloy_sol_types::SolType>::eip712_data_word(&self.y)
794 .0,
795 ]
796 .concat()
797 }
798 }
799 #[automatically_derived]
800 impl alloy_sol_types::EventTopic for EdOnBN254Point {
801 #[inline]
802 fn topic_preimage_length(rust: &Self::RustType) -> usize {
803 0usize
804 + <alloy::sol_types::sol_data::Uint<
805 256,
806 > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.x)
807 + <alloy::sol_types::sol_data::Uint<
808 256,
809 > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.y)
810 }
811 #[inline]
812 fn encode_topic_preimage(
813 rust: &Self::RustType,
814 out: &mut alloy_sol_types::private::Vec<u8>,
815 ) {
816 out.reserve(<Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust));
817 <alloy::sol_types::sol_data::Uint<
818 256,
819 > as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.x, out);
820 <alloy::sol_types::sol_data::Uint<
821 256,
822 > as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.y, out);
823 }
824 #[inline]
825 fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken {
826 let mut out = alloy_sol_types::private::Vec::new();
827 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, &mut out);
828 alloy_sol_types::abi::token::WordToken(alloy_sol_types::private::keccak256(out))
829 }
830 }
831 };
832 use alloy::contract as alloy_contract;
833 #[inline]
837 pub const fn new<
838 T: alloy_contract::private::Transport + ::core::clone::Clone,
839 P: alloy_contract::private::Provider<T, N>,
840 N: alloy_contract::private::Network,
841 >(
842 address: alloy_sol_types::private::Address,
843 provider: P,
844 ) -> EdOnBN254Instance<T, P, N> {
845 EdOnBN254Instance::<T, P, N>::new(address, provider)
846 }
847 #[derive(Clone)]
859 pub struct EdOnBN254Instance<T, P, N = alloy_contract::private::Ethereum> {
860 address: alloy_sol_types::private::Address,
861 provider: P,
862 _network_transport: ::core::marker::PhantomData<(N, T)>,
863 }
864 #[automatically_derived]
865 impl<T, P, N> ::core::fmt::Debug for EdOnBN254Instance<T, P, N> {
866 #[inline]
867 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
868 f.debug_tuple("EdOnBN254Instance")
869 .field(&self.address)
870 .finish()
871 }
872 }
873 #[automatically_derived]
875 impl<
876 T: alloy_contract::private::Transport + ::core::clone::Clone,
877 P: alloy_contract::private::Provider<T, N>,
878 N: alloy_contract::private::Network,
879 > EdOnBN254Instance<T, P, N>
880 {
881 #[inline]
885 pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self {
886 Self {
887 address,
888 provider,
889 _network_transport: ::core::marker::PhantomData,
890 }
891 }
892 #[inline]
894 pub const fn address(&self) -> &alloy_sol_types::private::Address {
895 &self.address
896 }
897 #[inline]
899 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
900 self.address = address;
901 }
902 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
904 self.set_address(address);
905 self
906 }
907 #[inline]
909 pub const fn provider(&self) -> &P {
910 &self.provider
911 }
912 }
913 impl<T, P: ::core::clone::Clone, N> EdOnBN254Instance<T, &P, N> {
914 #[inline]
916 pub fn with_cloned_provider(self) -> EdOnBN254Instance<T, P, N> {
917 EdOnBN254Instance {
918 address: self.address,
919 provider: ::core::clone::Clone::clone(&self.provider),
920 _network_transport: ::core::marker::PhantomData,
921 }
922 }
923 }
924 #[automatically_derived]
926 impl<
927 T: alloy_contract::private::Transport + ::core::clone::Clone,
928 P: alloy_contract::private::Provider<T, N>,
929 N: alloy_contract::private::Network,
930 > EdOnBN254Instance<T, P, N>
931 {
932 pub fn call_builder<C: alloy_sol_types::SolCall>(
937 &self,
938 call: &C,
939 ) -> alloy_contract::SolCallBuilder<T, &P, C, N> {
940 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
941 }
942 }
943 #[automatically_derived]
945 impl<
946 T: alloy_contract::private::Transport + ::core::clone::Clone,
947 P: alloy_contract::private::Provider<T, N>,
948 N: alloy_contract::private::Network,
949 > EdOnBN254Instance<T, P, N>
950 {
951 pub fn event_filter<E: alloy_sol_types::SolEvent>(
956 &self,
957 ) -> alloy_contract::Event<T, &P, E, N> {
958 alloy_contract::Event::new_sol(&self.provider, &self.address)
959 }
960 }
961}
962#[allow(
2052 non_camel_case_types,
2053 non_snake_case,
2054 clippy::pub_underscore_fields,
2055 clippy::style,
2056 clippy::empty_structs_with_brackets
2057)]
2058pub mod StakeTable {
2059 use alloy::sol_types as alloy_sol_types;
2060
2061 use super::*;
2062 #[rustfmt::skip]
2068 #[allow(clippy::all)]
2069 pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
2070 b"`\xA0`@R0`\x80R4\x80\x15a\0\x13W__\xFD[Pa\0\x1Ca\0)V[a\0$a\0)V[a\0\xDBV[\x7F\xF0\xC5~\x16\x84\r\xF0@\xF1P\x88\xDC/\x81\xFE9\x1C9#\xBE\xC7>#\xA9f.\xFC\x9C\"\x9Cj\0\x80Th\x01\0\0\0\0\0\0\0\0\x90\x04`\xFF\x16\x15a\0yW`@Qc\xF9.\xE8\xA9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80T`\x01`\x01`@\x1B\x03\x90\x81\x16\x14a\0\xD8W\x80T`\x01`\x01`@\x1B\x03\x19\x16`\x01`\x01`@\x1B\x03\x90\x81\x17\x82U`@Q\x90\x81R\x7F\xC7\xF5\x05\xB2\xF3q\xAE!u\xEEI\x13\xF4I\x9E\x1F&3\xA7\xB5\x93c!\xEE\xD1\xCD\xAE\xB6\x11Q\x81\xD2\x90` \x01`@Q\x80\x91\x03\x90\xA1[PV[`\x80Qa*\xEBa\x01\x01_9_\x81\x81a\x12\xDA\x01R\x81\x81a\x13\x03\x01Ra\x14\x86\x01Ra*\xEB_\xF3\xFE`\x80`@R`\x046\x10a\x01aW_5`\xE0\x1C\x80c\x9B0\xA5\xE6\x11a\0\xCDW\x80c\xB5p\x0Eh\x11a\0\x87W\x80c\xC6H\x14\xDD\x11a\0bW\x80c\xC6H\x14\xDD\x14a\x04|W\x80c\xF2\xFD\xE3\x8B\x14a\x04\xB2W\x80c\xFAR\xC7\xD8\x14a\x04\xD1W\x80c\xFC\x0CTj\x14a\x05\x14W__\xFD[\x80c\xB5p\x0Eh\x14a\x04\x13W\x80c\xB5\xEC\xB3D\x14a\x042W\x80c\xBE 0\x94\x14a\x04]W__\xFD[\x80c\x9B0\xA5\xE6\x14a\x02\xF3W\x80c\x9E\x9A\x8F1\x14a\x03\x12W\x80c\xA2\xD7\x8D\xD5\x14a\x03'W\x80c\xA3\x06j\xAB\x14a\x03yW\x80c\xAD<\xB1\xCC\x14a\x03\x98W\x80c\xB3\xE6\xEB\xD5\x14a\x03\xD5W__\xFD[\x80cO\x1E\xF2\x86\x11a\x01\x1EW\x80cO\x1E\xF2\x86\x14a\x025W\x80cR\xD1\x90-\x14a\x02HW\x80cUD\xC2\xF1\x14a\x02\\W\x80cj\x91\x1C\xCF\x14a\x02{W\x80cqP\x18\xA6\x14a\x02\x8FW\x80c\x8D\xA5\xCB[\x14a\x02\xA3W__\xFD[\x80c\x02n@+\x14a\x01eW\x80c\r\x8En,\x14a\x01\x86W\x80c\x13\xB9\x05z\x14a\x01\xB6W\x80c!@\xFE\xCD\x14a\x01\xD5W\x80c>\x9D\xF9\xB5\x14a\x01\xF4W\x80cM\x99\xDD\x16\x14a\x02\x16W[__\xFD[4\x80\x15a\x01pW__\xFD[Pa\x01\x84a\x01\x7F6`\x04a#\xE9V[a\x053V[\0[4\x80\x15a\x01\x91W__\xFD[P`@\x80Q`\x01\x81R_` \x82\x01\x81\x90R\x91\x81\x01\x91\x90\x91R``\x01[`@Q\x80\x91\x03\x90\xF3[4\x80\x15a\x01\xC1W__\xFD[Pa\x01\x84a\x01\xD06`\x04a%\x0FV[a\x06\xD4V[4\x80\x15a\x01\xE0W__\xFD[Pa\x01\x84a\x01\xEF6`\x04a%mV[a\x08gV[4\x80\x15a\x01\xFFW__\xFD[Pa\x02\x08_T\x81V[`@Q\x90\x81R` \x01a\x01\xADV[4\x80\x15a\x02!W__\xFD[Pa\x01\x84a\x0206`\x04a#\xE9V[a\t\x88V[a\x01\x84a\x02C6`\x04a%\x86V[a\x0B\x89V[4\x80\x15a\x02SW__\xFD[Pa\x02\x08a\x0B\xA8V[4\x80\x15a\x02gW__\xFD[Pa\x01\x84a\x02v6`\x04a&+V[a\x0B\xC3V[4\x80\x15a\x02\x86W__\xFD[Pa\x01\x84a\x0C\x8CV[4\x80\x15a\x02\x9AW__\xFD[Pa\x01\x84a\r\x0EV[4\x80\x15a\x02\xAEW__\xFD[P\x7F\x90\x16\xD0\x9Dr\xD4\x0F\xDA\xE2\xFD\x8C\xEA\xC6\xB6#Lw\x06!O\xD3\x9C\x1C\xD1\xE6\t\xA0R\x8C\x19\x93\0T`\x01`\x01`\xA0\x1B\x03\x16[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x01\xADV[4\x80\x15a\x02\xFEW__\xFD[Pa\x02\x08a\x03\r6`\x04a&oV[a\r!V[4\x80\x15a\x03\x1DW__\xFD[Pa\x02\x08`\x08T\x81V[4\x80\x15a\x032W__\xFD[Pa\x03da\x03A6`\x04a&\x89V[`\x07` \x90\x81R_\x92\x83R`@\x80\x84 \x90\x91R\x90\x82R\x90 \x80T`\x01\x90\x91\x01T\x82V[`@\x80Q\x92\x83R` \x83\x01\x91\x90\x91R\x01a\x01\xADV[4\x80\x15a\x03\x84W__\xFD[Pa\x01\x84a\x03\x936`\x04a%mV[a\r{V[4\x80\x15a\x03\xA3W__\xFD[Pa\x03\xC8`@Q\x80`@\x01`@R\x80`\x05\x81R` \x01d\x03R\xE3\x02\xE3`\xDC\x1B\x81RP\x81V[`@Qa\x01\xAD\x91\x90a&\xBAV[4\x80\x15a\x03\xE0W__\xFD[Pa\x04\x03a\x03\xEF6`\x04a&\xEFV[`\x04` R_\x90\x81R`@\x90 T`\xFF\x16\x81V[`@Q\x90\x15\x15\x81R` \x01a\x01\xADV[4\x80\x15a\x04\x1EW__\xFD[P`\x01Ta\x02\xDB\x90`\x01`\x01`\xA0\x1B\x03\x16\x81V[4\x80\x15a\x04=W__\xFD[Pa\x02\x08a\x04L6`\x04a%mV[`\x05` R_\x90\x81R`@\x90 T\x81V[4\x80\x15a\x04hW__\xFD[Pa\x01\x84a\x04w6`\x04a'\x06V[a\x0E\x8BV[4\x80\x15a\x04\x87W__\xFD[Pa\x02\x08a\x04\x966`\x04a&\x89V[`\x06` \x90\x81R_\x92\x83R`@\x80\x84 \x90\x91R\x90\x82R\x90 T\x81V[4\x80\x15a\x04\xBDW__\xFD[Pa\x01\x84a\x04\xCC6`\x04a%mV[a\x0F\xB7V[4\x80\x15a\x04\xDCW__\xFD[Pa\x05\x06a\x04\xEB6`\x04a%mV[`\x03` R_\x90\x81R`@\x90 \x80T`\x01\x90\x91\x01T`\xFF\x16\x82V[`@Qa\x01\xAD\x92\x91\x90a'dV[4\x80\x15a\x05\x1FW__\xFD[P`\x02Ta\x02\xDB\x90`\x01`\x01`\xA0\x1B\x03\x16\x81V[a\x05<\x82a\x0F\xF4V[3_\x82\x90\x03a\x05^W`@Qc\x1F* \x05`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x02T`@Qcn\xB1v\x9F`\xE1\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x83\x81\x16`\x04\x83\x01R0`$\x83\x01R_\x92\x16\x90c\xDDb\xED>\x90`D\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x05\xACW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x05\xD0\x91\x90a'\x94V[\x90P\x82\x81\x10\x15a\x06\x02W`@Qc\x05Ce\xBB`\xE3\x1B\x81R`\x04\x81\x01\x82\x90R`$\x81\x01\x84\x90R`D\x01[`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x84\x16_\x90\x81R`\x03` R`@\x81 \x80T\x85\x92\x90a\x06)\x90\x84\x90a'\xBFV[\x90\x91UPP`\x01`\x01`\xA0\x1B\x03\x80\x85\x16_\x90\x81R`\x06` \x90\x81R`@\x80\x83 \x93\x86\x16\x83R\x92\x90R\x90\x81 \x80T\x85\x92\x90a\x06d\x90\x84\x90a'\xBFV[\x90\x91UPP`\x02Ta\x06\x81\x90`\x01`\x01`\xA0\x1B\x03\x16\x830\x86a\x10CV[\x83`\x01`\x01`\xA0\x1B\x03\x16\x82`\x01`\x01`\xA0\x1B\x03\x16\x7F\xE5T\x1Aka\x03\xD4\xFA~\x02\x1E\xD5O\xAD9\xC6o'\xA7k\xD1=7L\xF6$\n\xE6\xBD\x0B\xB7+\x85`@Qa\x06\xC6\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3PPPPV[3a\x06\xDE\x81a\x10\xE7V[a\x06\xE7\x84a\x114V[a\x06\xF0\x85a\x11oV[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x83\x16` \x82\x01R_\x91\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90Pa\x07\"\x81\x85\x88a\x11\xABV[a'\x10\x83a\xFF\xFF\x16\x11\x15a\x07IW`@Qc\xDC\x81\xDB\x85`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x04_a\x07W\x89a\r!V[\x81R` \x01\x90\x81R` \x01_ _a\x01\0\n\x81T\x81`\xFF\x02\x19\x16\x90\x83\x15\x15\x02\x17\x90UP`@Q\x80`@\x01`@R\x80_\x81R` \x01`\x01`\x02\x81\x11\x15a\x07\x9EWa\x07\x9Ea'PV[\x90R`\x01`\x01`\xA0\x1B\x03\x83\x16_\x90\x81R`\x03` \x90\x81R`@\x90\x91 \x82Q\x81U\x90\x82\x01Q`\x01\x80\x83\x01\x80T\x90\x91`\xFF\x19\x90\x91\x16\x90\x83`\x02\x81\x11\x15a\x07\xE4Wa\x07\xE4a'PV[\x02\x17\x90UPP`@\x80Q\x88Q\x81R` \x80\x8A\x01Q\x81\x83\x01R\x89\x83\x01Q\x82\x84\x01R``\x80\x8B\x01Q\x90\x83\x01R\x88Q`\x80\x83\x01R\x88\x01Q`\xA0\x82\x01Ra\xFF\xFF\x86\x16`\xC0\x82\x01R\x90Q`\x01`\x01`\xA0\x1B\x03\x85\x16\x92P\x7F\xF6\xE85\x9CWR\x0BF\x964sk\xFC;\xB7\xEC\\\xBD\x1A\x0B\xD2\x8B\x10\xA8'W\x93\xBBs\x0By\x7F\x91\x81\x90\x03`\xE0\x01\x90\xA2PPPPPPV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x05` R`@\x81 T3\x91\x81\x90\x03a\x08\xA1W`@Qcy)\x8AS`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80B\x10\x15a\x08\xC2W`@QcZwCW`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x06` \x90\x81R`@\x80\x83 \x93\x86\x16\x83R\x92\x90R\x90\x81 T\x90\x81\x90\x03a\t\nW`@Qc\x06\x86\x82{`\xE5\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x85\x16_\x90\x81R`\x06` \x90\x81R`@\x80\x83 \x87\x85\x16\x84R\x90\x91R\x81 U`\x02Ta\t?\x91\x16\x84\x83a\x12@V[\x82`\x01`\x01`\xA0\x1B\x03\x16\x7F\x7F\xCFS,\x15\xF0\xA6\xDB\x0B\xD6\xD0\xE08\xBE\xA7\x1D0\xD8\x08\xC7\xD9\x8C\xB3\xBFrh\xA9[\xF5\x08\x1Be\x82`@Qa\tz\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA2PPPPV[a\t\x91\x82a\x0F\xF4V[3_\x82\x90\x03a\t\xB3W`@Qc\x1F* \x05`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x02`\x01`\x01`\xA0\x1B\x03\x82\x16_\x90\x81R`\x03` R`@\x90 `\x01\x01T`\xFF\x16`\x02\x81\x11\x15a\t\xE4Wa\t\xE4a'PV[\x03a\n\x02W`@Qc\xEA\xB4\xA9c`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x07` \x90\x81R`@\x80\x83 \x93\x85\x16\x83R\x92\x90R T\x15a\nEW`@Qc\xD4#\xA4\xF1`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x06` \x90\x81R`@\x80\x83 \x93\x85\x16\x83R\x92\x90R T\x82\x81\x10\x15a\n\x8EW`@Qc\x92fSQ`\xE0\x1B\x81R`\x04\x81\x01\x82\x90R`$\x01a\x05\xF9V[`\x01`\x01`\xA0\x1B\x03\x80\x85\x16_\x90\x81R`\x06` \x90\x81R`@\x80\x83 \x93\x86\x16\x83R\x92\x90R\x90\x81 \x80T\x85\x92\x90a\n\xC4\x90\x84\x90a'\xD2V[\x92PP\x81\x90UP`@Q\x80`@\x01`@R\x80\x84\x81R` \x01`\x08TBa\n\xEA\x91\x90a'\xBFV[\x90R`\x01`\x01`\xA0\x1B\x03\x80\x86\x16_\x81\x81R`\x07` \x90\x81R`@\x80\x83 \x94\x88\x16\x83R\x93\x81R\x83\x82 \x85Q\x81U\x94\x81\x01Q`\x01\x90\x95\x01\x94\x90\x94U\x90\x81R`\x03\x90\x92R\x81 \x80T\x85\x92\x90a\x0B=\x90\x84\x90a'\xD2V[\x92PP\x81\x90UP\x83`\x01`\x01`\xA0\x1B\x03\x16\x82`\x01`\x01`\xA0\x1B\x03\x16\x7FM\x10\xBD\x04\x97u\xC7{\xD7\xF2U\x19Z\xFB\xA5\x08\x80(\xEC\xB3\xC7\xC2w\xD3\x93\xCC\xFFy4\xF2\xF9,\x85`@Qa\x06\xC6\x91\x81R` \x01\x90V[a\x0B\x91a\x12\xCFV[a\x0B\x9A\x82a\x13sV[a\x0B\xA4\x82\x82a\x13\xBAV[PPV[_a\x0B\xB1a\x14{V[P_Q` a*\xBF_9_Q\x90_R\x90V[3a\x0B\xCD\x81a\x0F\xF4V[a\x0B\xD6\x83a\x114V[a\x0B\xDF\x84a\x11oV[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x83\x16` \x82\x01R_\x91\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90Pa\x0C\x11\x81\x84\x87a\x11\xABV[`\x01`\x04_a\x0C\x1F\x88a\r!V[\x81R` \x01\x90\x81R` \x01_ _a\x01\0\n\x81T\x81`\xFF\x02\x19\x16\x90\x83\x15\x15\x02\x17\x90UP\x81`\x01`\x01`\xA0\x1B\x03\x16\x7F\x80\xD8\xA4\xA1f3(\xA9\x98\xD4U[\xA2\x1D\x8B\xBAn\xF1Wj\x8C^\x9D'\xF9\xC5E\xF1\xA3\xD5+\x1D\x86\x86`@Qa\x0C}\x92\x91\x90a'\xE5V[`@Q\x80\x91\x03\x90\xA2PPPPPV[3a\x0C\x96\x81a\x0F\xF4V[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x03` R`@\x90 `\x01\x01\x80T`\xFF\x19\x16`\x02\x17\x90U`\x08Ta\x0C\xC8\x90Ba'\xBFV[`\x01`\x01`\xA0\x1B\x03\x82\x16_\x81\x81R`\x05` R`@\x80\x82 \x93\x90\x93U\x91Q\x90\x91\x7F\xFB$0ST\xC8wb\xD5WHz\xE4\xA5d\xE8\xD0>\xCB\xB9\xA9}\xD8\xAF\xFF\x8E\x1Fo\xCA\xF0\xDD\x16\x91\xA2PV[a\r\x16a\x14\xC4V[a\r\x1F_a\x15\x1FV[V[_\x81_\x01Q\x82` \x01Q\x83`@\x01Q\x84``\x01Q`@Q` \x01a\r^\x94\x93\x92\x91\x90\x93\x84R` \x84\x01\x92\x90\x92R`@\x83\x01R``\x82\x01R`\x80\x01\x90V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x91\x90PV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x07` \x90\x81R`@\x80\x83 3\x80\x85R\x92R\x82 T\x90\x91\x81\x90\x03a\r\xC0W`@Qc\x06\x86\x82{`\xE5\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x07` \x90\x81R`@\x80\x83 \x93\x86\x16\x83R\x92\x90R `\x01\x01TB\x10\x15a\x0E\x08W`@QcZwCW`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x07` \x90\x81R`@\x80\x83 \x86\x85\x16\x84R\x90\x91R\x81 \x81\x81U`\x01\x01U`\x02Ta\x0EC\x91\x16\x83\x83a\x12@V[\x81`\x01`\x01`\xA0\x1B\x03\x16\x7F\x7F\xCFS,\x15\xF0\xA6\xDB\x0B\xD6\xD0\xE08\xBE\xA7\x1D0\xD8\x08\xC7\xD9\x8C\xB3\xBFrh\xA9[\xF5\x08\x1Be\x82`@Qa\x0E~\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA2PPPV[\x7F\xF0\xC5~\x16\x84\r\xF0@\xF1P\x88\xDC/\x81\xFE9\x1C9#\xBE\xC7>#\xA9f.\xFC\x9C\"\x9Cj\0\x80T`\x01`@\x1B\x81\x04`\xFF\x16\x15\x90g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16_\x81\x15\x80\x15a\x0E\xD0WP\x82[\x90P_\x82g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16`\x01\x14\x80\x15a\x0E\xECWP0;\x15[\x90P\x81\x15\x80\x15a\x0E\xFAWP\x80\x15[\x15a\x0F\x18W`@Qc\xF9.\xE8\xA9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x84Tg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16`\x01\x17\x85U\x83\x15a\x0FBW\x84T`\xFF`@\x1B\x19\x16`\x01`@\x1B\x17\x85U[a\x0FK\x86a\x15\x8FV[a\x0FSa\x15\xA0V[a\x0F[a\x15\xA8V[a\x0Ff\x89\x89\x89a\x16\xAEV[\x83\x15a\x0F\xACW\x84T`\xFF`@\x1B\x19\x16\x85U`@Q`\x01\x81R\x7F\xC7\xF5\x05\xB2\xF3q\xAE!u\xEEI\x13\xF4I\x9E\x1F&3\xA7\xB5\x93c!\xEE\xD1\xCD\xAE\xB6\x11Q\x81\xD2\x90` \x01`@Q\x80\x91\x03\x90\xA1[PPPPPPPPPV[a\x0F\xBFa\x14\xC4V[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x0F\xE8W`@Qc\x1EO\xBD\xF7`\xE0\x1B\x81R_`\x04\x82\x01R`$\x01a\x05\xF9V[a\x0F\xF1\x81a\x15\x1FV[PV[`\x01`\x01`\x01`\xA0\x1B\x03\x82\x16_\x90\x81R`\x03` R`@\x90 `\x01\x01T`\xFF\x16`\x02\x81\x11\x15a\x10%Wa\x10%a'PV[\x14a\x0F\xF1W`@QcP\x8Ay?`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_`@Qc#\xB8r\xDD`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x85\x16`\x04\x82\x01R`\x01`\x01`\xA0\x1B\x03\x84\x16`$\x82\x01R\x82`D\x82\x01R` _`d\x83_\x8AZ\xF1\x91PP\x80`\x1F=\x11`\x01_Q\x14\x16\x15\x16\x15a\x10\x9CWP\x83;\x15=\x17\x15[\x80a\x10\xE0W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x14`$\x82\x01Rs\x15\x14\x90S\x94\xD1\x91T\x97\xD1\x94\x93\xD3W\xD1\x90RS\x11Q`b\x1B`D\x82\x01R`d\x01a\x05\xF9V[PPPPPV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x03` R`@\x81 `\x01\x01T`\xFF\x16`\x02\x81\x11\x15a\x11\x16Wa\x11\x16a'PV[\x14a\x0F\xF1W`@Qc\x13.~\xFB`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01Ra\x11Q\x82\x82a\x171V[\x15a\x0B\xA4W`@Qc\x06\xCFC\x8F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x04_a\x11{\x83a\r!V[\x81R` \x81\x01\x91\x90\x91R`@\x01_ T`\xFF\x16\x15a\x0F\xF1W`@Qb\xDA\x8AW`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x11\xB4\x82a\x17TV[_`@Q\x80``\x01`@R\x80`$\x81R` \x01a*{`$\x919\x90P_\x84\x82`@Q` \x01a\x11\xE4\x92\x91\x90a(6V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P_a\x11\xFF\x82a\x17\xEAV[\x90Pa\x12\x1C\x81\x85a\x12\x0F\x88a\x18\xD7V[a\x12\x17a\x19NV[a\x1A\x1BV[a\x128W`@Qb\xCE\xD3\xE5`\xE4\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PPPPPPV[_`@Qc\xA9\x05\x9C\xBB`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x84\x16`\x04\x82\x01R\x82`$\x82\x01R` _`D\x83_\x89Z\xF1\x91PP\x80`\x1F=\x11`\x01_Q\x14\x16\x15\x16\x15a\x12\x8AWP\x82;\x15=\x17\x15[\x80a\x12\xC9W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x0F`$\x82\x01Rn\x15\x14\x90S\x94\xD1\x91T\x97\xD1\x90RS\x11Q`\x8A\x1B`D\x82\x01R`d\x01a\x05\xF9V[PPPPV[0`\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\x14\x80a\x13UWP\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\x16a\x13I_Q` a*\xBF_9_Q\x90_RT`\x01`\x01`\xA0\x1B\x03\x16\x90V[`\x01`\x01`\xA0\x1B\x03\x16\x14\x15[\x15a\r\x1FW`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x13{a\x14\xC4V[`@Q`\x01`\x01`\xA0\x1B\x03\x82\x16\x81R\x7F\xF7\x87!\"n\xFE\x9A\x1B\xB6x\x18\x9A\x16\xD1UI(\xB9\xF2\x19.,\xB9>\xED\xA8;y\xFA@\0}\x90` \x01`@Q\x80\x91\x03\x90\xA1PV[\x81`\x01`\x01`\xA0\x1B\x03\x16cR\xD1\x90-`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x92PPP\x80\x15a\x14\x14WP`@\x80Q`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01\x90\x92Ra\x14\x11\x91\x81\x01\x90a'\x94V[`\x01[a\x14<W`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x83\x16`\x04\x82\x01R`$\x01a\x05\xF9V[_Q` a*\xBF_9_Q\x90_R\x81\x14a\x14lW`@Qc*\x87Ri`\xE2\x1B\x81R`\x04\x81\x01\x82\x90R`$\x01a\x05\xF9V[a\x14v\x83\x83a\x1A\xF9V[PPPV[0`\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\r\x1FW`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[3a\x14\xF6\x7F\x90\x16\xD0\x9Dr\xD4\x0F\xDA\xE2\xFD\x8C\xEA\xC6\xB6#Lw\x06!O\xD3\x9C\x1C\xD1\xE6\t\xA0R\x8C\x19\x93\0T`\x01`\x01`\xA0\x1B\x03\x16\x90V[`\x01`\x01`\xA0\x1B\x03\x16\x14a\r\x1FW`@Qc\x11\x8C\xDA\xA7`\xE0\x1B\x81R3`\x04\x82\x01R`$\x01a\x05\xF9V[\x7F\x90\x16\xD0\x9Dr\xD4\x0F\xDA\xE2\xFD\x8C\xEA\xC6\xB6#Lw\x06!O\xD3\x9C\x1C\xD1\xE6\t\xA0R\x8C\x19\x93\0\x80T`\x01`\x01`\xA0\x1B\x03\x19\x81\x16`\x01`\x01`\xA0\x1B\x03\x84\x81\x16\x91\x82\x17\x84U`@Q\x92\x16\x91\x82\x90\x7F\x8B\xE0\x07\x9CS\x16Y\x14\x13D\xCD\x1F\xD0\xA4\xF2\x84\x19I\x7F\x97\"\xA3\xDA\xAF\xE3\xB4\x18okdW\xE0\x90_\x90\xA3PPPV[a\x15\x97a\x1BNV[a\x0F\xF1\x81a\x1B\x97V[a\r\x1Fa\x1BNV[\x7F\xF0\xC5~\x16\x84\r\xF0@\xF1P\x88\xDC/\x81\xFE9\x1C9#\xBE\xC7>#\xA9f.\xFC\x9C\"\x9Cj\0\x80T`\x01`@\x1B\x81\x04`\xFF\x16\x15\x90g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16_\x81\x15\x80\x15a\x15\xEDWP\x82[\x90P_\x82g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16`\x01\x14\x80\x15a\x16\tWP0;\x15[\x90P\x81\x15\x80\x15a\x16\x17WP\x80\x15[\x15a\x165W`@Qc\xF9.\xE8\xA9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x84Tg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16`\x01\x17\x85U\x83\x15a\x16_W\x84T`\xFF`@\x1B\x19\x16`\x01`@\x1B\x17\x85U[C_U\x83\x15a\x10\xE0W\x84T`\xFF`@\x1B\x19\x16\x85U`@Q`\x01\x81R\x7F\xC7\xF5\x05\xB2\xF3q\xAE!u\xEEI\x13\xF4I\x9E\x1F&3\xA7\xB5\x93c!\xEE\xD1\xCD\xAE\xB6\x11Q\x81\xD2\x90` \x01`@Q\x80\x91\x03\x90\xA1PPPPPV[`\x01`\x01`\xA0\x1B\x03\x83\x16a\x16\xD5W`@Qc\xD9.#=`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x82\x16a\x16\xFCW`@Qc\xD9.#=`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x02\x80T`\x01`\x01`\xA0\x1B\x03\x94\x85\x16`\x01`\x01`\xA0\x1B\x03\x19\x91\x82\x16\x17\x90\x91U`\x01\x80T\x93\x90\x94\x16\x92\x16\x91\x90\x91\x17\x90\x91U`\x08UV[\x80Q\x82Q_\x91\x14\x80\x15a\x17KWP\x81` \x01Q\x83` \x01Q\x14[\x90P[\x92\x91PPV[\x80Q` \x82\x01Q_\x91_Q` a*\x9F_9_Q\x90_R\x91\x15\x90\x15\x16\x15a\x17zWPPPV[\x82Q` \x84\x01Q\x82`\x03\x84\x85\x85\x86\t\x85\t\x08\x83\x82\x83\t\x14\x83\x82\x10\x84\x84\x10\x16\x16\x93PPP\x81a\x14vW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FBn254: invalid G1 point\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x05\xF9V[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R_a\x18\x07\x83a\x1B\x9FV[\x90P_Q` a*\x9F_9_Q\x90_R`\x03_\x82\x84\x85\t\x90P\x82\x80a\x18.Wa\x18.a(RV[\x84\x82\t\x90P\x82\x80a\x18AWa\x18Aa(RV[\x82\x82\x08\x90P__a\x18Q\x83a\x1D\xA8V[\x92P\x90P[\x80a\x18\xBAW\x84\x80a\x18iWa\x18ia(RV[`\x01\x87\x08\x95P\x84\x80a\x18}Wa\x18}a(RV[\x86\x87\t\x92P\x84\x80a\x18\x90Wa\x18\x90a(RV[\x86\x84\t\x92P\x84\x80a\x18\xA3Wa\x18\xA3a(RV[\x84\x84\x08\x92Pa\x18\xB1\x83a\x1D\xA8V[\x92P\x90Pa\x18VV[P`@\x80Q\x80\x82\x01\x90\x91R\x94\x85R` \x85\x01RP\x91\x94\x93PPPPV[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R\x81Q` \x83\x01Q\x15\x90\x15\x16\x15a\x18\xFEWP\x90V[`@Q\x80`@\x01`@R\x80\x83_\x01Q\x81R` \x01_Q` a*\x9F_9_Q\x90_R\x84` \x01Qa\x19/\x91\x90a(fV[a\x19F\x90_Q` a*\x9F_9_Q\x90_Ra'\xD2V[\x90R\x92\x91PPV[a\x19u`@Q\x80`\x80\x01`@R\x80_\x81R` \x01_\x81R` \x01_\x81R` \x01_\x81RP\x90V[`@Q\x80`\x80\x01`@R\x80\x7F\x18\0\xDE\xEF\x12\x1F\x1EvBj\0f^\\DygC\"\xD4\xF7^\xDA\xDDF\xDE\xBD\\\xD9\x92\xF6\xED\x81R` \x01\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\x12\xC8^\xA5\xDB\x8Cm\xEBJ\xABq\x80\x8D\xCB@\x8F\xE3\xD1\xE7i\x0CC\xD3{L\xE6\xCC\x01f\xFA}\xAA\x81R` \x01\x7F\t\x06\x89\xD0X_\xF0u\xEC\x9E\x99\xADi\x0C3\x95\xBCK13p\xB3\x8E\xF3U\xAC\xDA\xDC\xD1\"\x97[\x81RP\x90P\x90V[___`@Q\x87Q\x81R` \x88\x01Q` \x82\x01R` \x87\x01Q`@\x82\x01R\x86Q``\x82\x01R``\x87\x01Q`\x80\x82\x01R`@\x87\x01Q`\xA0\x82\x01R\x85Q`\xC0\x82\x01R` \x86\x01Q`\xE0\x82\x01R` \x85\x01Qa\x01\0\x82\x01R\x84Qa\x01 \x82\x01R``\x85\x01Qa\x01@\x82\x01R`@\x85\x01Qa\x01`\x82\x01R` _a\x01\x80\x83`\x08Z\xFA\x91PP_Q\x91P\x80a\x1A\xEDW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1C`$\x82\x01R\x7FBn254: Pairing check failed!\0\0\0\0`D\x82\x01R`d\x01a\x05\xF9V[P\x15\x15\x95\x94PPPPPV[a\x1B\x02\x82a\x1E\x9FV[`@Q`\x01`\x01`\xA0\x1B\x03\x83\x16\x90\x7F\xBC|\xD7Z \xEE'\xFD\x9A\xDE\xBA\xB3 A\xF7U!M\xBCk\xFF\xA9\x0C\xC0\"[9\xDA.\\-;\x90_\x90\xA2\x80Q\x15a\x1BFWa\x14v\x82\x82a\x1F\x02V[a\x0B\xA4a\x1FtV[\x7F\xF0\xC5~\x16\x84\r\xF0@\xF1P\x88\xDC/\x81\xFE9\x1C9#\xBE\xC7>#\xA9f.\xFC\x9C\"\x9Cj\0T`\x01`@\x1B\x90\x04`\xFF\x16a\r\x1FW`@Qc\x1A\xFC\xD7\x9F`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0F\xBFa\x1BNV[__a\x1B\xAA\x83a\x1F\x93V[\x80Q\x90\x91P`0\x81\x14a\x1B\xBFWa\x1B\xBFa(\x85V[_\x81g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x1B\xD9Wa\x1B\xD9a$\x11V[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a\x1C\x03W` \x82\x01\x81\x806\x837\x01\x90P[P\x90P_[\x82\x81\x10\x15a\x1CrW\x83`\x01a\x1C\x1D\x83\x86a'\xD2V[a\x1C'\x91\x90a'\xD2V[\x81Q\x81\x10a\x1C7Wa\x1C7a(\x99V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x82\x82\x81Q\x81\x10a\x1CTWa\x1CTa(\x99V[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81_\x1A\x90SP`\x01\x01a\x1C\x08V[P`@\x80Q`\x1F\x80\x82Ra\x04\0\x82\x01\x90\x92R_\x90\x82` \x82\x01a\x03\xE0\x806\x837\x01\x90PP\x90P_[\x82\x81\x10\x15a\x1D\x02W\x83\x81a\x1C\xAE\x85\x88a'\xD2V[a\x1C\xB8\x91\x90a'\xBFV[\x81Q\x81\x10a\x1C\xC8Wa\x1C\xC8a(\x99V[` \x01\x01Q`\xF8\x1C`\xF8\x1B`\xF8\x1C\x82\x82\x81Q\x81\x10a\x1C\xE8Wa\x1C\xE8a(\x99V[`\xFF\x90\x92\x16` \x92\x83\x02\x91\x90\x91\x01\x90\x91\x01R`\x01\x01a\x1C\x9AV[P_a\x1D\r\x82a\"\xDFV[\x90Pa\x01\0_Q` a*\x9F_9_Q\x90_R_a\x1D+\x86\x89a'\xD2V[\x90P_[\x81\x81\x10\x15a\x1D\x98W_\x88`\x01a\x1DE\x84\x86a'\xD2V[a\x1DO\x91\x90a'\xD2V[\x81Q\x81\x10a\x1D_Wa\x1D_a(\x99V[\x01` \x01Q`\xF8\x1C\x90P\x83\x80a\x1DwWa\x1Dwa(RV[\x85\x87\t\x95P\x83\x80a\x1D\x8AWa\x1D\x8Aa(RV[\x81\x87\x08\x95PP`\x01\x01a\x1D/V[P\x92\x9A\x99PPPPPPPPPPV[_____\x7F\x0C\x19\x13\x9C\xB8Lh\nn\x14\x11m\xA0`V\x17e\xE0Z\xA4Z\x1Cr\xA3O\x08#\x05\xB6\x1F?R\x90P__Q` a*\x9F_9_Q\x90_R\x90P`@Q` \x81R` \x80\x82\x01R` `@\x82\x01R\x87``\x82\x01R\x82`\x80\x82\x01R\x81`\xA0\x82\x01R` _`\xC0\x83`\x05Z\xFA\x94PP_Q\x92P\x83a\x1EeW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1B`$\x82\x01R\x7Fpow precompile call failed!\0\0\0\0\0`D\x82\x01R`d\x01a\x05\xF9V[\x80`\x01\x84\x90\x1B\x11\x15a\x1E~Wa\x1E{\x83\x82a'\xD2V[\x92P[\x80\x80a\x1E\x8CWa\x1E\x8Ca(RV[\x83\x84\t\x96\x90\x96\x14\x96\x91\x95P\x90\x93PPPPV[\x80`\x01`\x01`\xA0\x1B\x03\x16;_\x03a\x1E\xD4W`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x82\x16`\x04\x82\x01R`$\x01a\x05\xF9V[_Q` a*\xBF_9_Q\x90_R\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x92\x90\x92\x16\x91\x90\x91\x17\x90UV[``__\x84`\x01`\x01`\xA0\x1B\x03\x16\x84`@Qa\x1F\x1E\x91\x90a(\xADV[_`@Q\x80\x83\x03\x81\x85Z\xF4\x91PP=\x80_\x81\x14a\x1FVW`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a\x1F[V[``\x91P[P\x91P\x91Pa\x1Fk\x85\x83\x83a#FV[\x95\x94PPPPPV[4\x15a\r\x1FW`@Qc\xB3\x98\x97\x9F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@\x80Q`0\x80\x82R``\x82\x81\x01\x90\x93R\x90` \x90`\x01`\xF9\x1B\x90_\x90\x84` \x82\x01\x81\x806\x837\x01\x90PP\x90P\x80\x86`@Q` \x01a\x1F\xD3\x92\x91\x90a(6V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P\x80\x84`\xF8\x1B`@Q` \x01a\x1F\xFA\x92\x91\x90a(\xB8V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P\x80`@Q` \x01a \x1C\x91\x90a(\xE2V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x90\x82\x90R\x91Pa\x01\x01`\xF0\x1B\x90a F\x90\x83\x90\x83\x90` \x01a(\xFAV[`@\x80Q\x80\x83\x03`\x1F\x19\x01\x81R\x82\x82R\x80Q` \x91\x82\x01 \x81\x84\x01\x81\x90R`\x01`\xF8\x1B\x84\x84\x01R`\x01`\x01`\xF0\x1B\x03\x19\x85\x16`A\x85\x01R\x82Q`#\x81\x86\x03\x01\x81R`C\x90\x94\x01\x90\x92R\x82Q\x90\x83\x01 \x91\x93P\x90_`\xFF\x88\x16g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a \xB6Wa \xB6a$\x11V[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a \xE0W` \x82\x01\x81\x806\x837\x01\x90P[P\x90P_\x82`@Q` \x01a \xF7\x91\x81R` \x01\x90V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x90P_[\x81Q\x81\x10\x15a!aW\x81\x81\x81Q\x81\x10a!&Wa!&a(\x99V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x83\x82\x81Q\x81\x10a!CWa!Ca(\x99V[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81_\x1A\x90SP`\x01\x01a!\x0BV[P_\x84`@Q` \x01a!v\x91\x81R` \x01\x90V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R` \x83\x01\x90\x91R_\x80\x83R\x91\x98P\x91P[\x89\x81\x10\x15a\"\x08W_\x83\x82\x81Q\x81\x10a!\xAFWa!\xAFa(\x99V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x83\x83\x81Q\x81\x10a!\xCCWa!\xCCa(\x99V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x18\x90P\x88\x81`@Q` \x01a!\xED\x92\x91\x90a)\x1EV[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x98PP`\x01\x01a!\x94V[P\x86\x88\x87`@Q` \x01a\"\x1E\x93\x92\x91\x90a)BV[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x96P\x86\x80Q\x90` \x01 \x93P\x83`@Q` \x01a\"L\x91\x81R` \x01\x90V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x91P_[a\"m\x8A`\xFF\x8D\x16a'\xD2V[\x81\x10\x15a\"\xCEW\x82\x81\x81Q\x81\x10a\"\x86Wa\"\x86a(\x99V[\x01` \x01Q`\x01`\x01`\xF8\x1B\x03\x19\x16\x84a\"\xA0\x83\x8Da'\xBFV[\x81Q\x81\x10a\"\xB0Wa\"\xB0a(\x99V[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81_\x1A\x90SP`\x01\x01a\"`V[P\x91\x9B\x9APPPPPPPPPPPV[_\x80\x80[\x83Q\x81\x10\x15a#?W\x83\x81\x81Q\x81\x10a\"\xFEWa\"\xFEa(\x99V[` \x02` \x01\x01Q`\xFF\x16\x81`\x08a#\x16\x91\x90a)uV[a#!\x90`\x02a*oV[a#+\x91\x90a)uV[a#5\x90\x83a'\xBFV[\x91P`\x01\x01a\"\xE3V[P\x92\x91PPV[``\x82a#[Wa#V\x82a#\xA5V[a#\x9EV[\x81Q\x15\x80\x15a#rWP`\x01`\x01`\xA0\x1B\x03\x84\x16;\x15[\x15a#\x9BW`@Qc\x99\x96\xB3\x15`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x85\x16`\x04\x82\x01R`$\x01a\x05\xF9V[P\x80[\x93\x92PPPV[\x80Q\x15a#\xB5W\x80Q\x80\x82` \x01\xFD[`@Qc\n\x12\xF5!`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x805`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a#\xE4W__\xFD[\x91\x90PV[__`@\x83\x85\x03\x12\x15a#\xFAW__\xFD[a$\x03\x83a#\xCEV[\x94` \x93\x90\x93\x015\x93PPPV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[`@\x80Q\x90\x81\x01g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x82\x82\x10\x17\x15a$HWa$Ha$\x11V[`@R\x90V[`@Q`\x1F\x82\x01`\x1F\x19\x16\x81\x01g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x82\x82\x10\x17\x15a$wWa$wa$\x11V[`@R\x91\x90PV[_`\x80\x82\x84\x03\x12\x15a$\x8FW__\xFD[`@Q`\x80\x81\x01g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x82\x82\x10\x17\x15a$\xB2Wa$\xB2a$\x11V[`@\x90\x81R\x835\x82R` \x80\x85\x015\x90\x83\x01R\x83\x81\x015\x90\x82\x01R``\x92\x83\x015\x92\x81\x01\x92\x90\x92RP\x91\x90PV[_`@\x82\x84\x03\x12\x15a$\xF0W__\xFD[a$\xF8a$%V[\x825\x81R` \x92\x83\x015\x92\x81\x01\x92\x90\x92RP\x91\x90PV[____a\x01 \x85\x87\x03\x12\x15a%#W__\xFD[a%-\x86\x86a$\x7FV[\x93Pa%<\x86`\x80\x87\x01a$\xE0V[\x92Pa%K\x86`\xC0\x87\x01a$\xE0V[\x91Pa\x01\0\x85\x015a\xFF\xFF\x81\x16\x81\x14a%bW__\xFD[\x93\x96\x92\x95P\x90\x93PPV[_` \x82\x84\x03\x12\x15a%}W__\xFD[a\x17K\x82a#\xCEV[__`@\x83\x85\x03\x12\x15a%\x97W__\xFD[a%\xA0\x83a#\xCEV[\x91P` \x83\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a%\xBBW__\xFD[\x83\x01`\x1F\x81\x01\x85\x13a%\xCBW__\xFD[\x805g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a%\xE5Wa%\xE5a$\x11V[a%\xF8`\x1F\x82\x01`\x1F\x19\x16` \x01a$NV[\x81\x81R\x86` \x83\x85\x01\x01\x11\x15a&\x0CW__\xFD[\x81` \x84\x01` \x83\x017_` \x83\x83\x01\x01R\x80\x93PPPP\x92P\x92\x90PV[___a\x01\0\x84\x86\x03\x12\x15a&>W__\xFD[a&H\x85\x85a$\x7FV[\x92Pa&W\x85`\x80\x86\x01a$\xE0V[\x91Pa&f\x85`\xC0\x86\x01a$\xE0V[\x90P\x92P\x92P\x92V[_`\x80\x82\x84\x03\x12\x15a&\x7FW__\xFD[a\x17K\x83\x83a$\x7FV[__`@\x83\x85\x03\x12\x15a&\x9AW__\xFD[a&\xA3\x83a#\xCEV[\x91Pa&\xB1` \x84\x01a#\xCEV[\x90P\x92P\x92\x90PV[` \x81R_\x82Q\x80` \x84\x01R\x80` \x85\x01`@\x85\x01^_`@\x82\x85\x01\x01R`@`\x1F\x19`\x1F\x83\x01\x16\x84\x01\x01\x91PP\x92\x91PPV[_` \x82\x84\x03\x12\x15a&\xFFW__\xFD[P5\x91\x90PV[____`\x80\x85\x87\x03\x12\x15a'\x19W__\xFD[a'\"\x85a#\xCEV[\x93Pa'0` \x86\x01a#\xCEV[\x92P`@\x85\x015\x91Pa'E``\x86\x01a#\xCEV[\x90P\x92\x95\x91\x94P\x92PV[cNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[\x82\x81R`@\x81\x01`\x03\x83\x10a'\x87WcNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[\x82` \x83\x01R\x93\x92PPPV[_` \x82\x84\x03\x12\x15a'\xA4W__\xFD[PQ\x91\x90PV[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[\x80\x82\x01\x80\x82\x11\x15a\x17NWa\x17Na'\xABV[\x81\x81\x03\x81\x81\x11\x15a\x17NWa\x17Na'\xABV[\x82Q\x81R` \x80\x84\x01Q\x81\x83\x01R`@\x80\x85\x01Q\x90\x83\x01R``\x80\x85\x01Q\x90\x83\x01R\x82Q`\x80\x83\x01R\x82\x01Q`\xA0\x82\x01R`\xC0\x81\x01a#\x9EV[_\x81Q\x80` \x84\x01\x85^_\x93\x01\x92\x83RP\x90\x91\x90PV[_a(Ja(D\x83\x86a(\x1FV[\x84a(\x1FV[\x94\x93PPPPV[cNH{q`\xE0\x1B_R`\x12`\x04R`$_\xFD[_\x82a(\x80WcNH{q`\xE0\x1B_R`\x12`\x04R`$_\xFD[P\x06\x90V[cNH{q`\xE0\x1B_R`\x01`\x04R`$_\xFD[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[_a\x17K\x82\x84a(\x1FV[_a(\xC3\x82\x85a(\x1FV[_\x81R`\x01`\x01`\xF8\x1B\x03\x19\x93\x90\x93\x16`\x01\x84\x01RPP`\x02\x01\x91\x90PV[_a(\xED\x82\x84a(\x1FV[_\x81R`\x01\x01\x93\x92PPPV[_a)\x05\x82\x85a(\x1FV[`\x01`\x01`\xF0\x1B\x03\x19\x93\x90\x93\x16\x83RPP`\x02\x01\x91\x90PV[_a))\x82\x85a(\x1FV[`\x01`\x01`\xF8\x1B\x03\x19\x93\x90\x93\x16\x83RPP`\x01\x01\x91\x90PV[_a)M\x82\x86a(\x1FV[`\x01`\x01`\xF8\x1B\x03\x19\x94\x90\x94\x16\x84RPP`\x01`\x01`\xF0\x1B\x03\x19\x16`\x01\x82\x01R`\x03\x01\x91\x90PV[\x80\x82\x02\x81\x15\x82\x82\x04\x84\x14\x17a\x17NWa\x17Na'\xABV[`\x01\x81[`\x01\x84\x11\x15a)\xC7W\x80\x85\x04\x81\x11\x15a)\xABWa)\xABa'\xABV[`\x01\x84\x16\x15a)\xB9W\x90\x81\x02\x90[`\x01\x93\x90\x93\x1C\x92\x80\x02a)\x90V[\x93P\x93\x91PPV[_\x82a)\xDDWP`\x01a\x17NV[\x81a)\xE9WP_a\x17NV[\x81`\x01\x81\x14a)\xFFW`\x02\x81\x14a*\tWa*%V[`\x01\x91PPa\x17NV[`\xFF\x84\x11\x15a*\x1AWa*\x1Aa'\xABV[PP`\x01\x82\x1Ba\x17NV[P` \x83\x10a\x013\x83\x10\x16`N\x84\x10`\x0B\x84\x10\x16\x17\x15a*HWP\x81\x81\na\x17NV[a*T_\x19\x84\x84a)\x8CV[\x80_\x19\x04\x82\x11\x15a*gWa*ga'\xABV[\x02\x93\x92PPPV[_a\x17K\x83\x83a)\xCFV\xFEBLS_SIG_BN254G1_XMD:KECCAK_NCTH_NUL_0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG6\x08\x94\xA1;\xA1\xA3!\x06g\xC8(I-\xB9\x8D\xCA> v\xCC75\xA9 \xA3\xCAP]8+\xBC\xA1dsolcC\0\x08\x1C\0\n",
2071 );
2072 #[rustfmt::skip]
2078 #[allow(clippy::all)]
2079 pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
2080 b"`\x80`@R`\x046\x10a\x01aW_5`\xE0\x1C\x80c\x9B0\xA5\xE6\x11a\0\xCDW\x80c\xB5p\x0Eh\x11a\0\x87W\x80c\xC6H\x14\xDD\x11a\0bW\x80c\xC6H\x14\xDD\x14a\x04|W\x80c\xF2\xFD\xE3\x8B\x14a\x04\xB2W\x80c\xFAR\xC7\xD8\x14a\x04\xD1W\x80c\xFC\x0CTj\x14a\x05\x14W__\xFD[\x80c\xB5p\x0Eh\x14a\x04\x13W\x80c\xB5\xEC\xB3D\x14a\x042W\x80c\xBE 0\x94\x14a\x04]W__\xFD[\x80c\x9B0\xA5\xE6\x14a\x02\xF3W\x80c\x9E\x9A\x8F1\x14a\x03\x12W\x80c\xA2\xD7\x8D\xD5\x14a\x03'W\x80c\xA3\x06j\xAB\x14a\x03yW\x80c\xAD<\xB1\xCC\x14a\x03\x98W\x80c\xB3\xE6\xEB\xD5\x14a\x03\xD5W__\xFD[\x80cO\x1E\xF2\x86\x11a\x01\x1EW\x80cO\x1E\xF2\x86\x14a\x025W\x80cR\xD1\x90-\x14a\x02HW\x80cUD\xC2\xF1\x14a\x02\\W\x80cj\x91\x1C\xCF\x14a\x02{W\x80cqP\x18\xA6\x14a\x02\x8FW\x80c\x8D\xA5\xCB[\x14a\x02\xA3W__\xFD[\x80c\x02n@+\x14a\x01eW\x80c\r\x8En,\x14a\x01\x86W\x80c\x13\xB9\x05z\x14a\x01\xB6W\x80c!@\xFE\xCD\x14a\x01\xD5W\x80c>\x9D\xF9\xB5\x14a\x01\xF4W\x80cM\x99\xDD\x16\x14a\x02\x16W[__\xFD[4\x80\x15a\x01pW__\xFD[Pa\x01\x84a\x01\x7F6`\x04a#\xE9V[a\x053V[\0[4\x80\x15a\x01\x91W__\xFD[P`@\x80Q`\x01\x81R_` \x82\x01\x81\x90R\x91\x81\x01\x91\x90\x91R``\x01[`@Q\x80\x91\x03\x90\xF3[4\x80\x15a\x01\xC1W__\xFD[Pa\x01\x84a\x01\xD06`\x04a%\x0FV[a\x06\xD4V[4\x80\x15a\x01\xE0W__\xFD[Pa\x01\x84a\x01\xEF6`\x04a%mV[a\x08gV[4\x80\x15a\x01\xFFW__\xFD[Pa\x02\x08_T\x81V[`@Q\x90\x81R` \x01a\x01\xADV[4\x80\x15a\x02!W__\xFD[Pa\x01\x84a\x0206`\x04a#\xE9V[a\t\x88V[a\x01\x84a\x02C6`\x04a%\x86V[a\x0B\x89V[4\x80\x15a\x02SW__\xFD[Pa\x02\x08a\x0B\xA8V[4\x80\x15a\x02gW__\xFD[Pa\x01\x84a\x02v6`\x04a&+V[a\x0B\xC3V[4\x80\x15a\x02\x86W__\xFD[Pa\x01\x84a\x0C\x8CV[4\x80\x15a\x02\x9AW__\xFD[Pa\x01\x84a\r\x0EV[4\x80\x15a\x02\xAEW__\xFD[P\x7F\x90\x16\xD0\x9Dr\xD4\x0F\xDA\xE2\xFD\x8C\xEA\xC6\xB6#Lw\x06!O\xD3\x9C\x1C\xD1\xE6\t\xA0R\x8C\x19\x93\0T`\x01`\x01`\xA0\x1B\x03\x16[`@Q`\x01`\x01`\xA0\x1B\x03\x90\x91\x16\x81R` \x01a\x01\xADV[4\x80\x15a\x02\xFEW__\xFD[Pa\x02\x08a\x03\r6`\x04a&oV[a\r!V[4\x80\x15a\x03\x1DW__\xFD[Pa\x02\x08`\x08T\x81V[4\x80\x15a\x032W__\xFD[Pa\x03da\x03A6`\x04a&\x89V[`\x07` \x90\x81R_\x92\x83R`@\x80\x84 \x90\x91R\x90\x82R\x90 \x80T`\x01\x90\x91\x01T\x82V[`@\x80Q\x92\x83R` \x83\x01\x91\x90\x91R\x01a\x01\xADV[4\x80\x15a\x03\x84W__\xFD[Pa\x01\x84a\x03\x936`\x04a%mV[a\r{V[4\x80\x15a\x03\xA3W__\xFD[Pa\x03\xC8`@Q\x80`@\x01`@R\x80`\x05\x81R` \x01d\x03R\xE3\x02\xE3`\xDC\x1B\x81RP\x81V[`@Qa\x01\xAD\x91\x90a&\xBAV[4\x80\x15a\x03\xE0W__\xFD[Pa\x04\x03a\x03\xEF6`\x04a&\xEFV[`\x04` R_\x90\x81R`@\x90 T`\xFF\x16\x81V[`@Q\x90\x15\x15\x81R` \x01a\x01\xADV[4\x80\x15a\x04\x1EW__\xFD[P`\x01Ta\x02\xDB\x90`\x01`\x01`\xA0\x1B\x03\x16\x81V[4\x80\x15a\x04=W__\xFD[Pa\x02\x08a\x04L6`\x04a%mV[`\x05` R_\x90\x81R`@\x90 T\x81V[4\x80\x15a\x04hW__\xFD[Pa\x01\x84a\x04w6`\x04a'\x06V[a\x0E\x8BV[4\x80\x15a\x04\x87W__\xFD[Pa\x02\x08a\x04\x966`\x04a&\x89V[`\x06` \x90\x81R_\x92\x83R`@\x80\x84 \x90\x91R\x90\x82R\x90 T\x81V[4\x80\x15a\x04\xBDW__\xFD[Pa\x01\x84a\x04\xCC6`\x04a%mV[a\x0F\xB7V[4\x80\x15a\x04\xDCW__\xFD[Pa\x05\x06a\x04\xEB6`\x04a%mV[`\x03` R_\x90\x81R`@\x90 \x80T`\x01\x90\x91\x01T`\xFF\x16\x82V[`@Qa\x01\xAD\x92\x91\x90a'dV[4\x80\x15a\x05\x1FW__\xFD[P`\x02Ta\x02\xDB\x90`\x01`\x01`\xA0\x1B\x03\x16\x81V[a\x05<\x82a\x0F\xF4V[3_\x82\x90\x03a\x05^W`@Qc\x1F* \x05`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x02T`@Qcn\xB1v\x9F`\xE1\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x83\x81\x16`\x04\x83\x01R0`$\x83\x01R_\x92\x16\x90c\xDDb\xED>\x90`D\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x15\x80\x15a\x05\xACW=__>=_\xFD[PPPP`@Q=`\x1F\x19`\x1F\x82\x01\x16\x82\x01\x80`@RP\x81\x01\x90a\x05\xD0\x91\x90a'\x94V[\x90P\x82\x81\x10\x15a\x06\x02W`@Qc\x05Ce\xBB`\xE3\x1B\x81R`\x04\x81\x01\x82\x90R`$\x81\x01\x84\x90R`D\x01[`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x84\x16_\x90\x81R`\x03` R`@\x81 \x80T\x85\x92\x90a\x06)\x90\x84\x90a'\xBFV[\x90\x91UPP`\x01`\x01`\xA0\x1B\x03\x80\x85\x16_\x90\x81R`\x06` \x90\x81R`@\x80\x83 \x93\x86\x16\x83R\x92\x90R\x90\x81 \x80T\x85\x92\x90a\x06d\x90\x84\x90a'\xBFV[\x90\x91UPP`\x02Ta\x06\x81\x90`\x01`\x01`\xA0\x1B\x03\x16\x830\x86a\x10CV[\x83`\x01`\x01`\xA0\x1B\x03\x16\x82`\x01`\x01`\xA0\x1B\x03\x16\x7F\xE5T\x1Aka\x03\xD4\xFA~\x02\x1E\xD5O\xAD9\xC6o'\xA7k\xD1=7L\xF6$\n\xE6\xBD\x0B\xB7+\x85`@Qa\x06\xC6\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3PPPPV[3a\x06\xDE\x81a\x10\xE7V[a\x06\xE7\x84a\x114V[a\x06\xF0\x85a\x11oV[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x83\x16` \x82\x01R_\x91\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90Pa\x07\"\x81\x85\x88a\x11\xABV[a'\x10\x83a\xFF\xFF\x16\x11\x15a\x07IW`@Qc\xDC\x81\xDB\x85`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x04_a\x07W\x89a\r!V[\x81R` \x01\x90\x81R` \x01_ _a\x01\0\n\x81T\x81`\xFF\x02\x19\x16\x90\x83\x15\x15\x02\x17\x90UP`@Q\x80`@\x01`@R\x80_\x81R` \x01`\x01`\x02\x81\x11\x15a\x07\x9EWa\x07\x9Ea'PV[\x90R`\x01`\x01`\xA0\x1B\x03\x83\x16_\x90\x81R`\x03` \x90\x81R`@\x90\x91 \x82Q\x81U\x90\x82\x01Q`\x01\x80\x83\x01\x80T\x90\x91`\xFF\x19\x90\x91\x16\x90\x83`\x02\x81\x11\x15a\x07\xE4Wa\x07\xE4a'PV[\x02\x17\x90UPP`@\x80Q\x88Q\x81R` \x80\x8A\x01Q\x81\x83\x01R\x89\x83\x01Q\x82\x84\x01R``\x80\x8B\x01Q\x90\x83\x01R\x88Q`\x80\x83\x01R\x88\x01Q`\xA0\x82\x01Ra\xFF\xFF\x86\x16`\xC0\x82\x01R\x90Q`\x01`\x01`\xA0\x1B\x03\x85\x16\x92P\x7F\xF6\xE85\x9CWR\x0BF\x964sk\xFC;\xB7\xEC\\\xBD\x1A\x0B\xD2\x8B\x10\xA8'W\x93\xBBs\x0By\x7F\x91\x81\x90\x03`\xE0\x01\x90\xA2PPPPPPV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x05` R`@\x81 T3\x91\x81\x90\x03a\x08\xA1W`@Qcy)\x8AS`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80B\x10\x15a\x08\xC2W`@QcZwCW`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x06` \x90\x81R`@\x80\x83 \x93\x86\x16\x83R\x92\x90R\x90\x81 T\x90\x81\x90\x03a\t\nW`@Qc\x06\x86\x82{`\xE5\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x85\x16_\x90\x81R`\x06` \x90\x81R`@\x80\x83 \x87\x85\x16\x84R\x90\x91R\x81 U`\x02Ta\t?\x91\x16\x84\x83a\x12@V[\x82`\x01`\x01`\xA0\x1B\x03\x16\x7F\x7F\xCFS,\x15\xF0\xA6\xDB\x0B\xD6\xD0\xE08\xBE\xA7\x1D0\xD8\x08\xC7\xD9\x8C\xB3\xBFrh\xA9[\xF5\x08\x1Be\x82`@Qa\tz\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA2PPPPV[a\t\x91\x82a\x0F\xF4V[3_\x82\x90\x03a\t\xB3W`@Qc\x1F* \x05`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x02`\x01`\x01`\xA0\x1B\x03\x82\x16_\x90\x81R`\x03` R`@\x90 `\x01\x01T`\xFF\x16`\x02\x81\x11\x15a\t\xE4Wa\t\xE4a'PV[\x03a\n\x02W`@Qc\xEA\xB4\xA9c`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x07` \x90\x81R`@\x80\x83 \x93\x85\x16\x83R\x92\x90R T\x15a\nEW`@Qc\xD4#\xA4\xF1`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x06` \x90\x81R`@\x80\x83 \x93\x85\x16\x83R\x92\x90R T\x82\x81\x10\x15a\n\x8EW`@Qc\x92fSQ`\xE0\x1B\x81R`\x04\x81\x01\x82\x90R`$\x01a\x05\xF9V[`\x01`\x01`\xA0\x1B\x03\x80\x85\x16_\x90\x81R`\x06` \x90\x81R`@\x80\x83 \x93\x86\x16\x83R\x92\x90R\x90\x81 \x80T\x85\x92\x90a\n\xC4\x90\x84\x90a'\xD2V[\x92PP\x81\x90UP`@Q\x80`@\x01`@R\x80\x84\x81R` \x01`\x08TBa\n\xEA\x91\x90a'\xBFV[\x90R`\x01`\x01`\xA0\x1B\x03\x80\x86\x16_\x81\x81R`\x07` \x90\x81R`@\x80\x83 \x94\x88\x16\x83R\x93\x81R\x83\x82 \x85Q\x81U\x94\x81\x01Q`\x01\x90\x95\x01\x94\x90\x94U\x90\x81R`\x03\x90\x92R\x81 \x80T\x85\x92\x90a\x0B=\x90\x84\x90a'\xD2V[\x92PP\x81\x90UP\x83`\x01`\x01`\xA0\x1B\x03\x16\x82`\x01`\x01`\xA0\x1B\x03\x16\x7FM\x10\xBD\x04\x97u\xC7{\xD7\xF2U\x19Z\xFB\xA5\x08\x80(\xEC\xB3\xC7\xC2w\xD3\x93\xCC\xFFy4\xF2\xF9,\x85`@Qa\x06\xC6\x91\x81R` \x01\x90V[a\x0B\x91a\x12\xCFV[a\x0B\x9A\x82a\x13sV[a\x0B\xA4\x82\x82a\x13\xBAV[PPV[_a\x0B\xB1a\x14{V[P_Q` a*\xBF_9_Q\x90_R\x90V[3a\x0B\xCD\x81a\x0F\xF4V[a\x0B\xD6\x83a\x114V[a\x0B\xDF\x84a\x11oV[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x83\x16` \x82\x01R_\x91\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90Pa\x0C\x11\x81\x84\x87a\x11\xABV[`\x01`\x04_a\x0C\x1F\x88a\r!V[\x81R` \x01\x90\x81R` \x01_ _a\x01\0\n\x81T\x81`\xFF\x02\x19\x16\x90\x83\x15\x15\x02\x17\x90UP\x81`\x01`\x01`\xA0\x1B\x03\x16\x7F\x80\xD8\xA4\xA1f3(\xA9\x98\xD4U[\xA2\x1D\x8B\xBAn\xF1Wj\x8C^\x9D'\xF9\xC5E\xF1\xA3\xD5+\x1D\x86\x86`@Qa\x0C}\x92\x91\x90a'\xE5V[`@Q\x80\x91\x03\x90\xA2PPPPPV[3a\x0C\x96\x81a\x0F\xF4V[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x03` R`@\x90 `\x01\x01\x80T`\xFF\x19\x16`\x02\x17\x90U`\x08Ta\x0C\xC8\x90Ba'\xBFV[`\x01`\x01`\xA0\x1B\x03\x82\x16_\x81\x81R`\x05` R`@\x80\x82 \x93\x90\x93U\x91Q\x90\x91\x7F\xFB$0ST\xC8wb\xD5WHz\xE4\xA5d\xE8\xD0>\xCB\xB9\xA9}\xD8\xAF\xFF\x8E\x1Fo\xCA\xF0\xDD\x16\x91\xA2PV[a\r\x16a\x14\xC4V[a\r\x1F_a\x15\x1FV[V[_\x81_\x01Q\x82` \x01Q\x83`@\x01Q\x84``\x01Q`@Q` \x01a\r^\x94\x93\x92\x91\x90\x93\x84R` \x84\x01\x92\x90\x92R`@\x83\x01R``\x82\x01R`\x80\x01\x90V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x80Q\x90` \x01 \x90P\x91\x90PV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x07` \x90\x81R`@\x80\x83 3\x80\x85R\x92R\x82 T\x90\x91\x81\x90\x03a\r\xC0W`@Qc\x06\x86\x82{`\xE5\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x07` \x90\x81R`@\x80\x83 \x93\x86\x16\x83R\x92\x90R `\x01\x01TB\x10\x15a\x0E\x08W`@QcZwCW`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x80\x84\x16_\x90\x81R`\x07` \x90\x81R`@\x80\x83 \x86\x85\x16\x84R\x90\x91R\x81 \x81\x81U`\x01\x01U`\x02Ta\x0EC\x91\x16\x83\x83a\x12@V[\x81`\x01`\x01`\xA0\x1B\x03\x16\x7F\x7F\xCFS,\x15\xF0\xA6\xDB\x0B\xD6\xD0\xE08\xBE\xA7\x1D0\xD8\x08\xC7\xD9\x8C\xB3\xBFrh\xA9[\xF5\x08\x1Be\x82`@Qa\x0E~\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA2PPPV[\x7F\xF0\xC5~\x16\x84\r\xF0@\xF1P\x88\xDC/\x81\xFE9\x1C9#\xBE\xC7>#\xA9f.\xFC\x9C\"\x9Cj\0\x80T`\x01`@\x1B\x81\x04`\xFF\x16\x15\x90g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16_\x81\x15\x80\x15a\x0E\xD0WP\x82[\x90P_\x82g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16`\x01\x14\x80\x15a\x0E\xECWP0;\x15[\x90P\x81\x15\x80\x15a\x0E\xFAWP\x80\x15[\x15a\x0F\x18W`@Qc\xF9.\xE8\xA9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x84Tg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16`\x01\x17\x85U\x83\x15a\x0FBW\x84T`\xFF`@\x1B\x19\x16`\x01`@\x1B\x17\x85U[a\x0FK\x86a\x15\x8FV[a\x0FSa\x15\xA0V[a\x0F[a\x15\xA8V[a\x0Ff\x89\x89\x89a\x16\xAEV[\x83\x15a\x0F\xACW\x84T`\xFF`@\x1B\x19\x16\x85U`@Q`\x01\x81R\x7F\xC7\xF5\x05\xB2\xF3q\xAE!u\xEEI\x13\xF4I\x9E\x1F&3\xA7\xB5\x93c!\xEE\xD1\xCD\xAE\xB6\x11Q\x81\xD2\x90` \x01`@Q\x80\x91\x03\x90\xA1[PPPPPPPPPV[a\x0F\xBFa\x14\xC4V[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x0F\xE8W`@Qc\x1EO\xBD\xF7`\xE0\x1B\x81R_`\x04\x82\x01R`$\x01a\x05\xF9V[a\x0F\xF1\x81a\x15\x1FV[PV[`\x01`\x01`\x01`\xA0\x1B\x03\x82\x16_\x90\x81R`\x03` R`@\x90 `\x01\x01T`\xFF\x16`\x02\x81\x11\x15a\x10%Wa\x10%a'PV[\x14a\x0F\xF1W`@QcP\x8Ay?`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_`@Qc#\xB8r\xDD`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x85\x16`\x04\x82\x01R`\x01`\x01`\xA0\x1B\x03\x84\x16`$\x82\x01R\x82`D\x82\x01R` _`d\x83_\x8AZ\xF1\x91PP\x80`\x1F=\x11`\x01_Q\x14\x16\x15\x16\x15a\x10\x9CWP\x83;\x15=\x17\x15[\x80a\x10\xE0W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x14`$\x82\x01Rs\x15\x14\x90S\x94\xD1\x91T\x97\xD1\x94\x93\xD3W\xD1\x90RS\x11Q`b\x1B`D\x82\x01R`d\x01a\x05\xF9V[PPPPPV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x03` R`@\x81 `\x01\x01T`\xFF\x16`\x02\x81\x11\x15a\x11\x16Wa\x11\x16a'PV[\x14a\x0F\xF1W`@Qc\x13.~\xFB`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01Ra\x11Q\x82\x82a\x171V[\x15a\x0B\xA4W`@Qc\x06\xCFC\x8F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x04_a\x11{\x83a\r!V[\x81R` \x81\x01\x91\x90\x91R`@\x01_ T`\xFF\x16\x15a\x0F\xF1W`@Qb\xDA\x8AW`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x11\xB4\x82a\x17TV[_`@Q\x80``\x01`@R\x80`$\x81R` \x01a*{`$\x919\x90P_\x84\x82`@Q` \x01a\x11\xE4\x92\x91\x90a(6V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P_a\x11\xFF\x82a\x17\xEAV[\x90Pa\x12\x1C\x81\x85a\x12\x0F\x88a\x18\xD7V[a\x12\x17a\x19NV[a\x1A\x1BV[a\x128W`@Qb\xCE\xD3\xE5`\xE4\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[PPPPPPV[_`@Qc\xA9\x05\x9C\xBB`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x84\x16`\x04\x82\x01R\x82`$\x82\x01R` _`D\x83_\x89Z\xF1\x91PP\x80`\x1F=\x11`\x01_Q\x14\x16\x15\x16\x15a\x12\x8AWP\x82;\x15=\x17\x15[\x80a\x12\xC9W`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x0F`$\x82\x01Rn\x15\x14\x90S\x94\xD1\x91T\x97\xD1\x90RS\x11Q`\x8A\x1B`D\x82\x01R`d\x01a\x05\xF9V[PPPPV[0`\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\x14\x80a\x13UWP\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\x16a\x13I_Q` a*\xBF_9_Q\x90_RT`\x01`\x01`\xA0\x1B\x03\x16\x90V[`\x01`\x01`\xA0\x1B\x03\x16\x14\x15[\x15a\r\x1FW`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x13{a\x14\xC4V[`@Q`\x01`\x01`\xA0\x1B\x03\x82\x16\x81R\x7F\xF7\x87!\"n\xFE\x9A\x1B\xB6x\x18\x9A\x16\xD1UI(\xB9\xF2\x19.,\xB9>\xED\xA8;y\xFA@\0}\x90` \x01`@Q\x80\x91\x03\x90\xA1PV[\x81`\x01`\x01`\xA0\x1B\x03\x16cR\xD1\x90-`@Q\x81c\xFF\xFF\xFF\xFF\x16`\xE0\x1B\x81R`\x04\x01` `@Q\x80\x83\x03\x81\x86Z\xFA\x92PPP\x80\x15a\x14\x14WP`@\x80Q`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01\x90\x92Ra\x14\x11\x91\x81\x01\x90a'\x94V[`\x01[a\x14<W`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x83\x16`\x04\x82\x01R`$\x01a\x05\xF9V[_Q` a*\xBF_9_Q\x90_R\x81\x14a\x14lW`@Qc*\x87Ri`\xE2\x1B\x81R`\x04\x81\x01\x82\x90R`$\x01a\x05\xF9V[a\x14v\x83\x83a\x1A\xF9V[PPPV[0`\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\r\x1FW`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[3a\x14\xF6\x7F\x90\x16\xD0\x9Dr\xD4\x0F\xDA\xE2\xFD\x8C\xEA\xC6\xB6#Lw\x06!O\xD3\x9C\x1C\xD1\xE6\t\xA0R\x8C\x19\x93\0T`\x01`\x01`\xA0\x1B\x03\x16\x90V[`\x01`\x01`\xA0\x1B\x03\x16\x14a\r\x1FW`@Qc\x11\x8C\xDA\xA7`\xE0\x1B\x81R3`\x04\x82\x01R`$\x01a\x05\xF9V[\x7F\x90\x16\xD0\x9Dr\xD4\x0F\xDA\xE2\xFD\x8C\xEA\xC6\xB6#Lw\x06!O\xD3\x9C\x1C\xD1\xE6\t\xA0R\x8C\x19\x93\0\x80T`\x01`\x01`\xA0\x1B\x03\x19\x81\x16`\x01`\x01`\xA0\x1B\x03\x84\x81\x16\x91\x82\x17\x84U`@Q\x92\x16\x91\x82\x90\x7F\x8B\xE0\x07\x9CS\x16Y\x14\x13D\xCD\x1F\xD0\xA4\xF2\x84\x19I\x7F\x97\"\xA3\xDA\xAF\xE3\xB4\x18okdW\xE0\x90_\x90\xA3PPPV[a\x15\x97a\x1BNV[a\x0F\xF1\x81a\x1B\x97V[a\r\x1Fa\x1BNV[\x7F\xF0\xC5~\x16\x84\r\xF0@\xF1P\x88\xDC/\x81\xFE9\x1C9#\xBE\xC7>#\xA9f.\xFC\x9C\"\x9Cj\0\x80T`\x01`@\x1B\x81\x04`\xFF\x16\x15\x90g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16_\x81\x15\x80\x15a\x15\xEDWP\x82[\x90P_\x82g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16`\x01\x14\x80\x15a\x16\tWP0;\x15[\x90P\x81\x15\x80\x15a\x16\x17WP\x80\x15[\x15a\x165W`@Qc\xF9.\xE8\xA9`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x84Tg\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x19\x16`\x01\x17\x85U\x83\x15a\x16_W\x84T`\xFF`@\x1B\x19\x16`\x01`@\x1B\x17\x85U[C_U\x83\x15a\x10\xE0W\x84T`\xFF`@\x1B\x19\x16\x85U`@Q`\x01\x81R\x7F\xC7\xF5\x05\xB2\xF3q\xAE!u\xEEI\x13\xF4I\x9E\x1F&3\xA7\xB5\x93c!\xEE\xD1\xCD\xAE\xB6\x11Q\x81\xD2\x90` \x01`@Q\x80\x91\x03\x90\xA1PPPPPV[`\x01`\x01`\xA0\x1B\x03\x83\x16a\x16\xD5W`@Qc\xD9.#=`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x82\x16a\x16\xFCW`@Qc\xD9.#=`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x02\x80T`\x01`\x01`\xA0\x1B\x03\x94\x85\x16`\x01`\x01`\xA0\x1B\x03\x19\x91\x82\x16\x17\x90\x91U`\x01\x80T\x93\x90\x94\x16\x92\x16\x91\x90\x91\x17\x90\x91U`\x08UV[\x80Q\x82Q_\x91\x14\x80\x15a\x17KWP\x81` \x01Q\x83` \x01Q\x14[\x90P[\x92\x91PPV[\x80Q` \x82\x01Q_\x91_Q` a*\x9F_9_Q\x90_R\x91\x15\x90\x15\x16\x15a\x17zWPPPV[\x82Q` \x84\x01Q\x82`\x03\x84\x85\x85\x86\t\x85\t\x08\x83\x82\x83\t\x14\x83\x82\x10\x84\x84\x10\x16\x16\x93PPP\x81a\x14vW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x17`$\x82\x01R\x7FBn254: invalid G1 point\0\0\0\0\0\0\0\0\0`D\x82\x01R`d\x01a\x05\xF9V[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R_a\x18\x07\x83a\x1B\x9FV[\x90P_Q` a*\x9F_9_Q\x90_R`\x03_\x82\x84\x85\t\x90P\x82\x80a\x18.Wa\x18.a(RV[\x84\x82\t\x90P\x82\x80a\x18AWa\x18Aa(RV[\x82\x82\x08\x90P__a\x18Q\x83a\x1D\xA8V[\x92P\x90P[\x80a\x18\xBAW\x84\x80a\x18iWa\x18ia(RV[`\x01\x87\x08\x95P\x84\x80a\x18}Wa\x18}a(RV[\x86\x87\t\x92P\x84\x80a\x18\x90Wa\x18\x90a(RV[\x86\x84\t\x92P\x84\x80a\x18\xA3Wa\x18\xA3a(RV[\x84\x84\x08\x92Pa\x18\xB1\x83a\x1D\xA8V[\x92P\x90Pa\x18VV[P`@\x80Q\x80\x82\x01\x90\x91R\x94\x85R` \x85\x01RP\x91\x94\x93PPPPV[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R\x81Q` \x83\x01Q\x15\x90\x15\x16\x15a\x18\xFEWP\x90V[`@Q\x80`@\x01`@R\x80\x83_\x01Q\x81R` \x01_Q` a*\x9F_9_Q\x90_R\x84` \x01Qa\x19/\x91\x90a(fV[a\x19F\x90_Q` a*\x9F_9_Q\x90_Ra'\xD2V[\x90R\x92\x91PPV[a\x19u`@Q\x80`\x80\x01`@R\x80_\x81R` \x01_\x81R` \x01_\x81R` \x01_\x81RP\x90V[`@Q\x80`\x80\x01`@R\x80\x7F\x18\0\xDE\xEF\x12\x1F\x1EvBj\0f^\\DygC\"\xD4\xF7^\xDA\xDDF\xDE\xBD\\\xD9\x92\xF6\xED\x81R` \x01\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\x12\xC8^\xA5\xDB\x8Cm\xEBJ\xABq\x80\x8D\xCB@\x8F\xE3\xD1\xE7i\x0CC\xD3{L\xE6\xCC\x01f\xFA}\xAA\x81R` \x01\x7F\t\x06\x89\xD0X_\xF0u\xEC\x9E\x99\xADi\x0C3\x95\xBCK13p\xB3\x8E\xF3U\xAC\xDA\xDC\xD1\"\x97[\x81RP\x90P\x90V[___`@Q\x87Q\x81R` \x88\x01Q` \x82\x01R` \x87\x01Q`@\x82\x01R\x86Q``\x82\x01R``\x87\x01Q`\x80\x82\x01R`@\x87\x01Q`\xA0\x82\x01R\x85Q`\xC0\x82\x01R` \x86\x01Q`\xE0\x82\x01R` \x85\x01Qa\x01\0\x82\x01R\x84Qa\x01 \x82\x01R``\x85\x01Qa\x01@\x82\x01R`@\x85\x01Qa\x01`\x82\x01R` _a\x01\x80\x83`\x08Z\xFA\x91PP_Q\x91P\x80a\x1A\xEDW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1C`$\x82\x01R\x7FBn254: Pairing check failed!\0\0\0\0`D\x82\x01R`d\x01a\x05\xF9V[P\x15\x15\x95\x94PPPPPV[a\x1B\x02\x82a\x1E\x9FV[`@Q`\x01`\x01`\xA0\x1B\x03\x83\x16\x90\x7F\xBC|\xD7Z \xEE'\xFD\x9A\xDE\xBA\xB3 A\xF7U!M\xBCk\xFF\xA9\x0C\xC0\"[9\xDA.\\-;\x90_\x90\xA2\x80Q\x15a\x1BFWa\x14v\x82\x82a\x1F\x02V[a\x0B\xA4a\x1FtV[\x7F\xF0\xC5~\x16\x84\r\xF0@\xF1P\x88\xDC/\x81\xFE9\x1C9#\xBE\xC7>#\xA9f.\xFC\x9C\"\x9Cj\0T`\x01`@\x1B\x90\x04`\xFF\x16a\r\x1FW`@Qc\x1A\xFC\xD7\x9F`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0F\xBFa\x1BNV[__a\x1B\xAA\x83a\x1F\x93V[\x80Q\x90\x91P`0\x81\x14a\x1B\xBFWa\x1B\xBFa(\x85V[_\x81g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x1B\xD9Wa\x1B\xD9a$\x11V[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a\x1C\x03W` \x82\x01\x81\x806\x837\x01\x90P[P\x90P_[\x82\x81\x10\x15a\x1CrW\x83`\x01a\x1C\x1D\x83\x86a'\xD2V[a\x1C'\x91\x90a'\xD2V[\x81Q\x81\x10a\x1C7Wa\x1C7a(\x99V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x82\x82\x81Q\x81\x10a\x1CTWa\x1CTa(\x99V[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81_\x1A\x90SP`\x01\x01a\x1C\x08V[P`@\x80Q`\x1F\x80\x82Ra\x04\0\x82\x01\x90\x92R_\x90\x82` \x82\x01a\x03\xE0\x806\x837\x01\x90PP\x90P_[\x82\x81\x10\x15a\x1D\x02W\x83\x81a\x1C\xAE\x85\x88a'\xD2V[a\x1C\xB8\x91\x90a'\xBFV[\x81Q\x81\x10a\x1C\xC8Wa\x1C\xC8a(\x99V[` \x01\x01Q`\xF8\x1C`\xF8\x1B`\xF8\x1C\x82\x82\x81Q\x81\x10a\x1C\xE8Wa\x1C\xE8a(\x99V[`\xFF\x90\x92\x16` \x92\x83\x02\x91\x90\x91\x01\x90\x91\x01R`\x01\x01a\x1C\x9AV[P_a\x1D\r\x82a\"\xDFV[\x90Pa\x01\0_Q` a*\x9F_9_Q\x90_R_a\x1D+\x86\x89a'\xD2V[\x90P_[\x81\x81\x10\x15a\x1D\x98W_\x88`\x01a\x1DE\x84\x86a'\xD2V[a\x1DO\x91\x90a'\xD2V[\x81Q\x81\x10a\x1D_Wa\x1D_a(\x99V[\x01` \x01Q`\xF8\x1C\x90P\x83\x80a\x1DwWa\x1Dwa(RV[\x85\x87\t\x95P\x83\x80a\x1D\x8AWa\x1D\x8Aa(RV[\x81\x87\x08\x95PP`\x01\x01a\x1D/V[P\x92\x9A\x99PPPPPPPPPPV[_____\x7F\x0C\x19\x13\x9C\xB8Lh\nn\x14\x11m\xA0`V\x17e\xE0Z\xA4Z\x1Cr\xA3O\x08#\x05\xB6\x1F?R\x90P__Q` a*\x9F_9_Q\x90_R\x90P`@Q` \x81R` \x80\x82\x01R` `@\x82\x01R\x87``\x82\x01R\x82`\x80\x82\x01R\x81`\xA0\x82\x01R` _`\xC0\x83`\x05Z\xFA\x94PP_Q\x92P\x83a\x1EeW`@QbF\x1B\xCD`\xE5\x1B\x81R` `\x04\x82\x01R`\x1B`$\x82\x01R\x7Fpow precompile call failed!\0\0\0\0\0`D\x82\x01R`d\x01a\x05\xF9V[\x80`\x01\x84\x90\x1B\x11\x15a\x1E~Wa\x1E{\x83\x82a'\xD2V[\x92P[\x80\x80a\x1E\x8CWa\x1E\x8Ca(RV[\x83\x84\t\x96\x90\x96\x14\x96\x91\x95P\x90\x93PPPPV[\x80`\x01`\x01`\xA0\x1B\x03\x16;_\x03a\x1E\xD4W`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x82\x16`\x04\x82\x01R`$\x01a\x05\xF9V[_Q` a*\xBF_9_Q\x90_R\x80T`\x01`\x01`\xA0\x1B\x03\x19\x16`\x01`\x01`\xA0\x1B\x03\x92\x90\x92\x16\x91\x90\x91\x17\x90UV[``__\x84`\x01`\x01`\xA0\x1B\x03\x16\x84`@Qa\x1F\x1E\x91\x90a(\xADV[_`@Q\x80\x83\x03\x81\x85Z\xF4\x91PP=\x80_\x81\x14a\x1FVW`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a\x1F[V[``\x91P[P\x91P\x91Pa\x1Fk\x85\x83\x83a#FV[\x95\x94PPPPPV[4\x15a\r\x1FW`@Qc\xB3\x98\x97\x9F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@\x80Q`0\x80\x82R``\x82\x81\x01\x90\x93R\x90` \x90`\x01`\xF9\x1B\x90_\x90\x84` \x82\x01\x81\x806\x837\x01\x90PP\x90P\x80\x86`@Q` \x01a\x1F\xD3\x92\x91\x90a(6V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P\x80\x84`\xF8\x1B`@Q` \x01a\x1F\xFA\x92\x91\x90a(\xB8V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P\x80`@Q` \x01a \x1C\x91\x90a(\xE2V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x90\x82\x90R\x91Pa\x01\x01`\xF0\x1B\x90a F\x90\x83\x90\x83\x90` \x01a(\xFAV[`@\x80Q\x80\x83\x03`\x1F\x19\x01\x81R\x82\x82R\x80Q` \x91\x82\x01 \x81\x84\x01\x81\x90R`\x01`\xF8\x1B\x84\x84\x01R`\x01`\x01`\xF0\x1B\x03\x19\x85\x16`A\x85\x01R\x82Q`#\x81\x86\x03\x01\x81R`C\x90\x94\x01\x90\x92R\x82Q\x90\x83\x01 \x91\x93P\x90_`\xFF\x88\x16g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a \xB6Wa \xB6a$\x11V[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a \xE0W` \x82\x01\x81\x806\x837\x01\x90P[P\x90P_\x82`@Q` \x01a \xF7\x91\x81R` \x01\x90V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x90P_[\x81Q\x81\x10\x15a!aW\x81\x81\x81Q\x81\x10a!&Wa!&a(\x99V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x83\x82\x81Q\x81\x10a!CWa!Ca(\x99V[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81_\x1A\x90SP`\x01\x01a!\x0BV[P_\x84`@Q` \x01a!v\x91\x81R` \x01\x90V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R` \x83\x01\x90\x91R_\x80\x83R\x91\x98P\x91P[\x89\x81\x10\x15a\"\x08W_\x83\x82\x81Q\x81\x10a!\xAFWa!\xAFa(\x99V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x83\x83\x81Q\x81\x10a!\xCCWa!\xCCa(\x99V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x18\x90P\x88\x81`@Q` \x01a!\xED\x92\x91\x90a)\x1EV[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x98PP`\x01\x01a!\x94V[P\x86\x88\x87`@Q` \x01a\"\x1E\x93\x92\x91\x90a)BV[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x96P\x86\x80Q\x90` \x01 \x93P\x83`@Q` \x01a\"L\x91\x81R` \x01\x90V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x91P_[a\"m\x8A`\xFF\x8D\x16a'\xD2V[\x81\x10\x15a\"\xCEW\x82\x81\x81Q\x81\x10a\"\x86Wa\"\x86a(\x99V[\x01` \x01Q`\x01`\x01`\xF8\x1B\x03\x19\x16\x84a\"\xA0\x83\x8Da'\xBFV[\x81Q\x81\x10a\"\xB0Wa\"\xB0a(\x99V[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81_\x1A\x90SP`\x01\x01a\"`V[P\x91\x9B\x9APPPPPPPPPPPV[_\x80\x80[\x83Q\x81\x10\x15a#?W\x83\x81\x81Q\x81\x10a\"\xFEWa\"\xFEa(\x99V[` \x02` \x01\x01Q`\xFF\x16\x81`\x08a#\x16\x91\x90a)uV[a#!\x90`\x02a*oV[a#+\x91\x90a)uV[a#5\x90\x83a'\xBFV[\x91P`\x01\x01a\"\xE3V[P\x92\x91PPV[``\x82a#[Wa#V\x82a#\xA5V[a#\x9EV[\x81Q\x15\x80\x15a#rWP`\x01`\x01`\xA0\x1B\x03\x84\x16;\x15[\x15a#\x9BW`@Qc\x99\x96\xB3\x15`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x85\x16`\x04\x82\x01R`$\x01a\x05\xF9V[P\x80[\x93\x92PPPV[\x80Q\x15a#\xB5W\x80Q\x80\x82` \x01\xFD[`@Qc\n\x12\xF5!`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x805`\x01`\x01`\xA0\x1B\x03\x81\x16\x81\x14a#\xE4W__\xFD[\x91\x90PV[__`@\x83\x85\x03\x12\x15a#\xFAW__\xFD[a$\x03\x83a#\xCEV[\x94` \x93\x90\x93\x015\x93PPPV[cNH{q`\xE0\x1B_R`A`\x04R`$_\xFD[`@\x80Q\x90\x81\x01g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x82\x82\x10\x17\x15a$HWa$Ha$\x11V[`@R\x90V[`@Q`\x1F\x82\x01`\x1F\x19\x16\x81\x01g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x82\x82\x10\x17\x15a$wWa$wa$\x11V[`@R\x91\x90PV[_`\x80\x82\x84\x03\x12\x15a$\x8FW__\xFD[`@Q`\x80\x81\x01g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x82\x82\x10\x17\x15a$\xB2Wa$\xB2a$\x11V[`@\x90\x81R\x835\x82R` \x80\x85\x015\x90\x83\x01R\x83\x81\x015\x90\x82\x01R``\x92\x83\x015\x92\x81\x01\x92\x90\x92RP\x91\x90PV[_`@\x82\x84\x03\x12\x15a$\xF0W__\xFD[a$\xF8a$%V[\x825\x81R` \x92\x83\x015\x92\x81\x01\x92\x90\x92RP\x91\x90PV[____a\x01 \x85\x87\x03\x12\x15a%#W__\xFD[a%-\x86\x86a$\x7FV[\x93Pa%<\x86`\x80\x87\x01a$\xE0V[\x92Pa%K\x86`\xC0\x87\x01a$\xE0V[\x91Pa\x01\0\x85\x015a\xFF\xFF\x81\x16\x81\x14a%bW__\xFD[\x93\x96\x92\x95P\x90\x93PPV[_` \x82\x84\x03\x12\x15a%}W__\xFD[a\x17K\x82a#\xCEV[__`@\x83\x85\x03\x12\x15a%\x97W__\xFD[a%\xA0\x83a#\xCEV[\x91P` \x83\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a%\xBBW__\xFD[\x83\x01`\x1F\x81\x01\x85\x13a%\xCBW__\xFD[\x805g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a%\xE5Wa%\xE5a$\x11V[a%\xF8`\x1F\x82\x01`\x1F\x19\x16` \x01a$NV[\x81\x81R\x86` \x83\x85\x01\x01\x11\x15a&\x0CW__\xFD[\x81` \x84\x01` \x83\x017_` \x83\x83\x01\x01R\x80\x93PPPP\x92P\x92\x90PV[___a\x01\0\x84\x86\x03\x12\x15a&>W__\xFD[a&H\x85\x85a$\x7FV[\x92Pa&W\x85`\x80\x86\x01a$\xE0V[\x91Pa&f\x85`\xC0\x86\x01a$\xE0V[\x90P\x92P\x92P\x92V[_`\x80\x82\x84\x03\x12\x15a&\x7FW__\xFD[a\x17K\x83\x83a$\x7FV[__`@\x83\x85\x03\x12\x15a&\x9AW__\xFD[a&\xA3\x83a#\xCEV[\x91Pa&\xB1` \x84\x01a#\xCEV[\x90P\x92P\x92\x90PV[` \x81R_\x82Q\x80` \x84\x01R\x80` \x85\x01`@\x85\x01^_`@\x82\x85\x01\x01R`@`\x1F\x19`\x1F\x83\x01\x16\x84\x01\x01\x91PP\x92\x91PPV[_` \x82\x84\x03\x12\x15a&\xFFW__\xFD[P5\x91\x90PV[____`\x80\x85\x87\x03\x12\x15a'\x19W__\xFD[a'\"\x85a#\xCEV[\x93Pa'0` \x86\x01a#\xCEV[\x92P`@\x85\x015\x91Pa'E``\x86\x01a#\xCEV[\x90P\x92\x95\x91\x94P\x92PV[cNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[\x82\x81R`@\x81\x01`\x03\x83\x10a'\x87WcNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[\x82` \x83\x01R\x93\x92PPPV[_` \x82\x84\x03\x12\x15a'\xA4W__\xFD[PQ\x91\x90PV[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[\x80\x82\x01\x80\x82\x11\x15a\x17NWa\x17Na'\xABV[\x81\x81\x03\x81\x81\x11\x15a\x17NWa\x17Na'\xABV[\x82Q\x81R` \x80\x84\x01Q\x81\x83\x01R`@\x80\x85\x01Q\x90\x83\x01R``\x80\x85\x01Q\x90\x83\x01R\x82Q`\x80\x83\x01R\x82\x01Q`\xA0\x82\x01R`\xC0\x81\x01a#\x9EV[_\x81Q\x80` \x84\x01\x85^_\x93\x01\x92\x83RP\x90\x91\x90PV[_a(Ja(D\x83\x86a(\x1FV[\x84a(\x1FV[\x94\x93PPPPV[cNH{q`\xE0\x1B_R`\x12`\x04R`$_\xFD[_\x82a(\x80WcNH{q`\xE0\x1B_R`\x12`\x04R`$_\xFD[P\x06\x90V[cNH{q`\xE0\x1B_R`\x01`\x04R`$_\xFD[cNH{q`\xE0\x1B_R`2`\x04R`$_\xFD[_a\x17K\x82\x84a(\x1FV[_a(\xC3\x82\x85a(\x1FV[_\x81R`\x01`\x01`\xF8\x1B\x03\x19\x93\x90\x93\x16`\x01\x84\x01RPP`\x02\x01\x91\x90PV[_a(\xED\x82\x84a(\x1FV[_\x81R`\x01\x01\x93\x92PPPV[_a)\x05\x82\x85a(\x1FV[`\x01`\x01`\xF0\x1B\x03\x19\x93\x90\x93\x16\x83RPP`\x02\x01\x91\x90PV[_a))\x82\x85a(\x1FV[`\x01`\x01`\xF8\x1B\x03\x19\x93\x90\x93\x16\x83RPP`\x01\x01\x91\x90PV[_a)M\x82\x86a(\x1FV[`\x01`\x01`\xF8\x1B\x03\x19\x94\x90\x94\x16\x84RPP`\x01`\x01`\xF0\x1B\x03\x19\x16`\x01\x82\x01R`\x03\x01\x91\x90PV[\x80\x82\x02\x81\x15\x82\x82\x04\x84\x14\x17a\x17NWa\x17Na'\xABV[`\x01\x81[`\x01\x84\x11\x15a)\xC7W\x80\x85\x04\x81\x11\x15a)\xABWa)\xABa'\xABV[`\x01\x84\x16\x15a)\xB9W\x90\x81\x02\x90[`\x01\x93\x90\x93\x1C\x92\x80\x02a)\x90V[\x93P\x93\x91PPV[_\x82a)\xDDWP`\x01a\x17NV[\x81a)\xE9WP_a\x17NV[\x81`\x01\x81\x14a)\xFFW`\x02\x81\x14a*\tWa*%V[`\x01\x91PPa\x17NV[`\xFF\x84\x11\x15a*\x1AWa*\x1Aa'\xABV[PP`\x01\x82\x1Ba\x17NV[P` \x83\x10a\x013\x83\x10\x16`N\x84\x10`\x0B\x84\x10\x16\x17\x15a*HWP\x81\x81\na\x17NV[a*T_\x19\x84\x84a)\x8CV[\x80_\x19\x04\x82\x11\x15a*gWa*ga'\xABV[\x02\x93\x92PPPV[_a\x17K\x83\x83a)\xCFV\xFEBLS_SIG_BN254G1_XMD:KECCAK_NCTH_NUL_0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X]\x97\x81j\x91hq\xCA\x8D< \x8C\x16\xD8|\xFDG6\x08\x94\xA1;\xA1\xA3!\x06g\xC8(I-\xB9\x8D\xCA> v\xCC75\xA9 \xA3\xCAP]8+\xBC\xA1dsolcC\0\x08\x1C\0\n",
2081 );
2082 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2083 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2084 #[derive(Clone)]
2085 pub struct ValidatorStatus(u8);
2086 const _: () = {
2087 use alloy::sol_types as alloy_sol_types;
2088 #[automatically_derived]
2089 impl alloy_sol_types::private::SolTypeValue<ValidatorStatus> for u8 {
2090 #[inline]
2091 fn stv_to_tokens(
2092 &self,
2093 ) -> <alloy::sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::Token<'_>
2094 {
2095 alloy_sol_types::private::SolTypeValue::<
2096 alloy::sol_types::sol_data::Uint<8>,
2097 >::stv_to_tokens(self)
2098 }
2099 #[inline]
2100 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
2101 <alloy::sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::tokenize(self).0
2102 }
2103 #[inline]
2104 fn stv_abi_encode_packed_to(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
2105 <alloy::sol_types::sol_data::Uint<
2106 8,
2107 > as alloy_sol_types::SolType>::abi_encode_packed_to(self, out)
2108 }
2109 #[inline]
2110 fn stv_abi_packed_encoded_size(&self) -> usize {
2111 <alloy::sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::abi_encoded_size(
2112 self,
2113 )
2114 }
2115 }
2116 #[automatically_derived]
2117 impl ValidatorStatus {
2118 pub const NAME: &'static str = stringify!(@ name);
2120 #[inline]
2122 pub const fn from(value: u8) -> Self {
2123 Self(value)
2124 }
2125 #[inline]
2127 pub const fn into(self) -> u8 {
2128 self.0
2129 }
2130 #[inline]
2133 pub fn abi_encode(&self) -> alloy_sol_types::private::Vec<u8> {
2134 <Self as alloy_sol_types::SolType>::abi_encode(&self.0)
2135 }
2136 #[inline]
2139 pub fn abi_encode_packed(&self) -> alloy_sol_types::private::Vec<u8> {
2140 <Self as alloy_sol_types::SolType>::abi_encode_packed(&self.0)
2141 }
2142 }
2143 #[automatically_derived]
2144 impl alloy_sol_types::SolType for ValidatorStatus {
2145 type RustType = u8;
2146 type Token<'a> =
2147 <alloy::sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::Token<'a>;
2148 const SOL_NAME: &'static str = Self::NAME;
2149 const ENCODED_SIZE: Option<usize> =
2150 <alloy::sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::ENCODED_SIZE;
2151 const PACKED_ENCODED_SIZE: Option<usize> = <alloy::sol_types::sol_data::Uint<
2152 8,
2153 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
2154 #[inline]
2155 fn valid_token(token: &Self::Token<'_>) -> bool {
2156 Self::type_check(token).is_ok()
2157 }
2158 #[inline]
2159 fn type_check(token: &Self::Token<'_>) -> alloy_sol_types::Result<()> {
2160 <alloy::sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::type_check(token)
2161 }
2162 #[inline]
2163 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
2164 <alloy::sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::detokenize(token)
2165 }
2166 }
2167 #[automatically_derived]
2168 impl alloy_sol_types::EventTopic for ValidatorStatus {
2169 #[inline]
2170 fn topic_preimage_length(rust: &Self::RustType) -> usize {
2171 <alloy::sol_types::sol_data::Uint<
2172 8,
2173 > as alloy_sol_types::EventTopic>::topic_preimage_length(rust)
2174 }
2175 #[inline]
2176 fn encode_topic_preimage(
2177 rust: &Self::RustType,
2178 out: &mut alloy_sol_types::private::Vec<u8>,
2179 ) {
2180 <alloy::sol_types::sol_data::Uint<
2181 8,
2182 > as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, out)
2183 }
2184 #[inline]
2185 fn encode_topic(rust: &Self::RustType) -> alloy_sol_types::abi::token::WordToken {
2186 <alloy::sol_types::sol_data::Uint<8> as alloy_sol_types::EventTopic>::encode_topic(
2187 rust,
2188 )
2189 }
2190 }
2191 };
2192 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2193 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2198 #[derive(Clone)]
2199 pub struct AddressEmptyCode {
2200 #[allow(missing_docs)]
2201 pub target: alloy::sol_types::private::Address,
2202 }
2203 #[allow(
2204 non_camel_case_types,
2205 non_snake_case,
2206 clippy::pub_underscore_fields,
2207 clippy::style
2208 )]
2209 const _: () = {
2210 use alloy::sol_types as alloy_sol_types;
2211 #[doc(hidden)]
2212 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
2213 #[doc(hidden)]
2214 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
2215 #[cfg(test)]
2216 #[allow(dead_code, unreachable_patterns)]
2217 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2218 match _t {
2219 alloy_sol_types::private::AssertTypeEq::<
2220 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2221 >(_) => {},
2222 }
2223 }
2224 #[automatically_derived]
2225 #[doc(hidden)]
2226 impl ::core::convert::From<AddressEmptyCode> for UnderlyingRustTuple<'_> {
2227 fn from(value: AddressEmptyCode) -> Self {
2228 (value.target,)
2229 }
2230 }
2231 #[automatically_derived]
2232 #[doc(hidden)]
2233 impl ::core::convert::From<UnderlyingRustTuple<'_>> for AddressEmptyCode {
2234 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2235 Self { target: tuple.0 }
2236 }
2237 }
2238 #[automatically_derived]
2239 impl alloy_sol_types::SolError for AddressEmptyCode {
2240 type Parameters<'a> = UnderlyingSolTuple<'a>;
2241 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2242 const SIGNATURE: &'static str = "AddressEmptyCode(address)";
2243 const SELECTOR: [u8; 4] = [153u8, 150u8, 179u8, 21u8];
2244 #[inline]
2245 fn new<'a>(
2246 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2247 ) -> Self {
2248 tuple.into()
2249 }
2250 #[inline]
2251 fn tokenize(&self) -> Self::Token<'_> {
2252 (
2253 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
2254 &self.target,
2255 ),
2256 )
2257 }
2258 }
2259 };
2260 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2261 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2266 #[derive(Clone)]
2267 pub struct BLSSigVerificationFailed {}
2268 #[allow(
2269 non_camel_case_types,
2270 non_snake_case,
2271 clippy::pub_underscore_fields,
2272 clippy::style
2273 )]
2274 const _: () = {
2275 use alloy::sol_types as alloy_sol_types;
2276 #[doc(hidden)]
2277 type UnderlyingSolTuple<'a> = ();
2278 #[doc(hidden)]
2279 type UnderlyingRustTuple<'a> = ();
2280 #[cfg(test)]
2281 #[allow(dead_code, unreachable_patterns)]
2282 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2283 match _t {
2284 alloy_sol_types::private::AssertTypeEq::<
2285 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2286 >(_) => {},
2287 }
2288 }
2289 #[automatically_derived]
2290 #[doc(hidden)]
2291 impl ::core::convert::From<BLSSigVerificationFailed> for UnderlyingRustTuple<'_> {
2292 fn from(value: BLSSigVerificationFailed) -> Self {
2293 ()
2294 }
2295 }
2296 #[automatically_derived]
2297 #[doc(hidden)]
2298 impl ::core::convert::From<UnderlyingRustTuple<'_>> for BLSSigVerificationFailed {
2299 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2300 Self {}
2301 }
2302 }
2303 #[automatically_derived]
2304 impl alloy_sol_types::SolError for BLSSigVerificationFailed {
2305 type Parameters<'a> = UnderlyingSolTuple<'a>;
2306 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2307 const SIGNATURE: &'static str = "BLSSigVerificationFailed()";
2308 const SELECTOR: [u8; 4] = [12u8, 237u8, 62u8, 80u8];
2309 #[inline]
2310 fn new<'a>(
2311 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2312 ) -> Self {
2313 tuple.into()
2314 }
2315 #[inline]
2316 fn tokenize(&self) -> Self::Token<'_> {
2317 ()
2318 }
2319 }
2320 };
2321 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2322 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2327 #[derive(Clone)]
2328 pub struct BlsKeyAlreadyUsed {}
2329 #[allow(
2330 non_camel_case_types,
2331 non_snake_case,
2332 clippy::pub_underscore_fields,
2333 clippy::style
2334 )]
2335 const _: () = {
2336 use alloy::sol_types as alloy_sol_types;
2337 #[doc(hidden)]
2338 type UnderlyingSolTuple<'a> = ();
2339 #[doc(hidden)]
2340 type UnderlyingRustTuple<'a> = ();
2341 #[cfg(test)]
2342 #[allow(dead_code, unreachable_patterns)]
2343 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2344 match _t {
2345 alloy_sol_types::private::AssertTypeEq::<
2346 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2347 >(_) => {},
2348 }
2349 }
2350 #[automatically_derived]
2351 #[doc(hidden)]
2352 impl ::core::convert::From<BlsKeyAlreadyUsed> for UnderlyingRustTuple<'_> {
2353 fn from(value: BlsKeyAlreadyUsed) -> Self {
2354 ()
2355 }
2356 }
2357 #[automatically_derived]
2358 #[doc(hidden)]
2359 impl ::core::convert::From<UnderlyingRustTuple<'_>> for BlsKeyAlreadyUsed {
2360 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2361 Self {}
2362 }
2363 }
2364 #[automatically_derived]
2365 impl alloy_sol_types::SolError for BlsKeyAlreadyUsed {
2366 type Parameters<'a> = UnderlyingSolTuple<'a>;
2367 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2368 const SIGNATURE: &'static str = "BlsKeyAlreadyUsed()";
2369 const SELECTOR: [u8; 4] = [1u8, 181u8, 20u8, 174u8];
2370 #[inline]
2371 fn new<'a>(
2372 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2373 ) -> Self {
2374 tuple.into()
2375 }
2376 #[inline]
2377 fn tokenize(&self) -> Self::Token<'_> {
2378 ()
2379 }
2380 }
2381 };
2382 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2383 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2388 #[derive(Clone)]
2389 pub struct ERC1967InvalidImplementation {
2390 #[allow(missing_docs)]
2391 pub implementation: alloy::sol_types::private::Address,
2392 }
2393 #[allow(
2394 non_camel_case_types,
2395 non_snake_case,
2396 clippy::pub_underscore_fields,
2397 clippy::style
2398 )]
2399 const _: () = {
2400 use alloy::sol_types as alloy_sol_types;
2401 #[doc(hidden)]
2402 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
2403 #[doc(hidden)]
2404 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
2405 #[cfg(test)]
2406 #[allow(dead_code, unreachable_patterns)]
2407 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2408 match _t {
2409 alloy_sol_types::private::AssertTypeEq::<
2410 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2411 >(_) => {},
2412 }
2413 }
2414 #[automatically_derived]
2415 #[doc(hidden)]
2416 impl ::core::convert::From<ERC1967InvalidImplementation> for UnderlyingRustTuple<'_> {
2417 fn from(value: ERC1967InvalidImplementation) -> Self {
2418 (value.implementation,)
2419 }
2420 }
2421 #[automatically_derived]
2422 #[doc(hidden)]
2423 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ERC1967InvalidImplementation {
2424 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2425 Self {
2426 implementation: tuple.0,
2427 }
2428 }
2429 }
2430 #[automatically_derived]
2431 impl alloy_sol_types::SolError for ERC1967InvalidImplementation {
2432 type Parameters<'a> = UnderlyingSolTuple<'a>;
2433 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2434 const SIGNATURE: &'static str = "ERC1967InvalidImplementation(address)";
2435 const SELECTOR: [u8; 4] = [76u8, 156u8, 140u8, 227u8];
2436 #[inline]
2437 fn new<'a>(
2438 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2439 ) -> Self {
2440 tuple.into()
2441 }
2442 #[inline]
2443 fn tokenize(&self) -> Self::Token<'_> {
2444 (
2445 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
2446 &self.implementation,
2447 ),
2448 )
2449 }
2450 }
2451 };
2452 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2453 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2458 #[derive(Clone)]
2459 pub struct ERC1967NonPayable {}
2460 #[allow(
2461 non_camel_case_types,
2462 non_snake_case,
2463 clippy::pub_underscore_fields,
2464 clippy::style
2465 )]
2466 const _: () = {
2467 use alloy::sol_types as alloy_sol_types;
2468 #[doc(hidden)]
2469 type UnderlyingSolTuple<'a> = ();
2470 #[doc(hidden)]
2471 type UnderlyingRustTuple<'a> = ();
2472 #[cfg(test)]
2473 #[allow(dead_code, unreachable_patterns)]
2474 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2475 match _t {
2476 alloy_sol_types::private::AssertTypeEq::<
2477 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2478 >(_) => {},
2479 }
2480 }
2481 #[automatically_derived]
2482 #[doc(hidden)]
2483 impl ::core::convert::From<ERC1967NonPayable> for UnderlyingRustTuple<'_> {
2484 fn from(value: ERC1967NonPayable) -> Self {
2485 ()
2486 }
2487 }
2488 #[automatically_derived]
2489 #[doc(hidden)]
2490 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ERC1967NonPayable {
2491 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2492 Self {}
2493 }
2494 }
2495 #[automatically_derived]
2496 impl alloy_sol_types::SolError for ERC1967NonPayable {
2497 type Parameters<'a> = UnderlyingSolTuple<'a>;
2498 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2499 const SIGNATURE: &'static str = "ERC1967NonPayable()";
2500 const SELECTOR: [u8; 4] = [179u8, 152u8, 151u8, 159u8];
2501 #[inline]
2502 fn new<'a>(
2503 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2504 ) -> Self {
2505 tuple.into()
2506 }
2507 #[inline]
2508 fn tokenize(&self) -> Self::Token<'_> {
2509 ()
2510 }
2511 }
2512 };
2513 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2514 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2519 #[derive(Clone)]
2520 pub struct FailedInnerCall {}
2521 #[allow(
2522 non_camel_case_types,
2523 non_snake_case,
2524 clippy::pub_underscore_fields,
2525 clippy::style
2526 )]
2527 const _: () = {
2528 use alloy::sol_types as alloy_sol_types;
2529 #[doc(hidden)]
2530 type UnderlyingSolTuple<'a> = ();
2531 #[doc(hidden)]
2532 type UnderlyingRustTuple<'a> = ();
2533 #[cfg(test)]
2534 #[allow(dead_code, unreachable_patterns)]
2535 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2536 match _t {
2537 alloy_sol_types::private::AssertTypeEq::<
2538 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2539 >(_) => {},
2540 }
2541 }
2542 #[automatically_derived]
2543 #[doc(hidden)]
2544 impl ::core::convert::From<FailedInnerCall> for UnderlyingRustTuple<'_> {
2545 fn from(value: FailedInnerCall) -> Self {
2546 ()
2547 }
2548 }
2549 #[automatically_derived]
2550 #[doc(hidden)]
2551 impl ::core::convert::From<UnderlyingRustTuple<'_>> for FailedInnerCall {
2552 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2553 Self {}
2554 }
2555 }
2556 #[automatically_derived]
2557 impl alloy_sol_types::SolError for FailedInnerCall {
2558 type Parameters<'a> = UnderlyingSolTuple<'a>;
2559 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2560 const SIGNATURE: &'static str = "FailedInnerCall()";
2561 const SELECTOR: [u8; 4] = [20u8, 37u8, 234u8, 66u8];
2562 #[inline]
2563 fn new<'a>(
2564 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2565 ) -> Self {
2566 tuple.into()
2567 }
2568 #[inline]
2569 fn tokenize(&self) -> Self::Token<'_> {
2570 ()
2571 }
2572 }
2573 };
2574 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2575 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2580 #[derive(Clone)]
2581 pub struct InsufficientAllowance {
2582 #[allow(missing_docs)]
2583 pub _0: alloy::sol_types::private::primitives::aliases::U256,
2584 #[allow(missing_docs)]
2585 pub _1: alloy::sol_types::private::primitives::aliases::U256,
2586 }
2587 #[allow(
2588 non_camel_case_types,
2589 non_snake_case,
2590 clippy::pub_underscore_fields,
2591 clippy::style
2592 )]
2593 const _: () = {
2594 use alloy::sol_types as alloy_sol_types;
2595 #[doc(hidden)]
2596 type UnderlyingSolTuple<'a> = (
2597 alloy::sol_types::sol_data::Uint<256>,
2598 alloy::sol_types::sol_data::Uint<256>,
2599 );
2600 #[doc(hidden)]
2601 type UnderlyingRustTuple<'a> = (
2602 alloy::sol_types::private::primitives::aliases::U256,
2603 alloy::sol_types::private::primitives::aliases::U256,
2604 );
2605 #[cfg(test)]
2606 #[allow(dead_code, unreachable_patterns)]
2607 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2608 match _t {
2609 alloy_sol_types::private::AssertTypeEq::<
2610 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2611 >(_) => {},
2612 }
2613 }
2614 #[automatically_derived]
2615 #[doc(hidden)]
2616 impl ::core::convert::From<InsufficientAllowance> for UnderlyingRustTuple<'_> {
2617 fn from(value: InsufficientAllowance) -> Self {
2618 (value._0, value._1)
2619 }
2620 }
2621 #[automatically_derived]
2622 #[doc(hidden)]
2623 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InsufficientAllowance {
2624 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2625 Self {
2626 _0: tuple.0,
2627 _1: tuple.1,
2628 }
2629 }
2630 }
2631 #[automatically_derived]
2632 impl alloy_sol_types::SolError for InsufficientAllowance {
2633 type Parameters<'a> = UnderlyingSolTuple<'a>;
2634 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2635 const SIGNATURE: &'static str = "InsufficientAllowance(uint256,uint256)";
2636 const SELECTOR: [u8; 4] = [42u8, 27u8, 45u8, 216u8];
2637 #[inline]
2638 fn new<'a>(
2639 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2640 ) -> Self {
2641 tuple.into()
2642 }
2643 #[inline]
2644 fn tokenize(&self) -> Self::Token<'_> {
2645 (
2646 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
2647 &self._0,
2648 ),
2649 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
2650 &self._1,
2651 ),
2652 )
2653 }
2654 }
2655 };
2656 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2657 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2662 #[derive(Clone)]
2663 pub struct InsufficientBalance {
2664 #[allow(missing_docs)]
2665 pub _0: alloy::sol_types::private::primitives::aliases::U256,
2666 }
2667 #[allow(
2668 non_camel_case_types,
2669 non_snake_case,
2670 clippy::pub_underscore_fields,
2671 clippy::style
2672 )]
2673 const _: () = {
2674 use alloy::sol_types as alloy_sol_types;
2675 #[doc(hidden)]
2676 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
2677 #[doc(hidden)]
2678 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
2679 #[cfg(test)]
2680 #[allow(dead_code, unreachable_patterns)]
2681 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2682 match _t {
2683 alloy_sol_types::private::AssertTypeEq::<
2684 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2685 >(_) => {},
2686 }
2687 }
2688 #[automatically_derived]
2689 #[doc(hidden)]
2690 impl ::core::convert::From<InsufficientBalance> for UnderlyingRustTuple<'_> {
2691 fn from(value: InsufficientBalance) -> Self {
2692 (value._0,)
2693 }
2694 }
2695 #[automatically_derived]
2696 #[doc(hidden)]
2697 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InsufficientBalance {
2698 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2699 Self { _0: tuple.0 }
2700 }
2701 }
2702 #[automatically_derived]
2703 impl alloy_sol_types::SolError for InsufficientBalance {
2704 type Parameters<'a> = UnderlyingSolTuple<'a>;
2705 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2706 const SIGNATURE: &'static str = "InsufficientBalance(uint256)";
2707 const SELECTOR: [u8; 4] = [146u8, 102u8, 83u8, 81u8];
2708 #[inline]
2709 fn new<'a>(
2710 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2711 ) -> Self {
2712 tuple.into()
2713 }
2714 #[inline]
2715 fn tokenize(&self) -> Self::Token<'_> {
2716 (
2717 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
2718 &self._0,
2719 ),
2720 )
2721 }
2722 }
2723 };
2724 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2725 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2730 #[derive(Clone)]
2731 pub struct InvalidCommission {}
2732 #[allow(
2733 non_camel_case_types,
2734 non_snake_case,
2735 clippy::pub_underscore_fields,
2736 clippy::style
2737 )]
2738 const _: () = {
2739 use alloy::sol_types as alloy_sol_types;
2740 #[doc(hidden)]
2741 type UnderlyingSolTuple<'a> = ();
2742 #[doc(hidden)]
2743 type UnderlyingRustTuple<'a> = ();
2744 #[cfg(test)]
2745 #[allow(dead_code, unreachable_patterns)]
2746 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2747 match _t {
2748 alloy_sol_types::private::AssertTypeEq::<
2749 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2750 >(_) => {},
2751 }
2752 }
2753 #[automatically_derived]
2754 #[doc(hidden)]
2755 impl ::core::convert::From<InvalidCommission> for UnderlyingRustTuple<'_> {
2756 fn from(value: InvalidCommission) -> Self {
2757 ()
2758 }
2759 }
2760 #[automatically_derived]
2761 #[doc(hidden)]
2762 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidCommission {
2763 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2764 Self {}
2765 }
2766 }
2767 #[automatically_derived]
2768 impl alloy_sol_types::SolError for InvalidCommission {
2769 type Parameters<'a> = UnderlyingSolTuple<'a>;
2770 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2771 const SIGNATURE: &'static str = "InvalidCommission()";
2772 const SELECTOR: [u8; 4] = [220u8, 129u8, 219u8, 133u8];
2773 #[inline]
2774 fn new<'a>(
2775 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2776 ) -> Self {
2777 tuple.into()
2778 }
2779 #[inline]
2780 fn tokenize(&self) -> Self::Token<'_> {
2781 ()
2782 }
2783 }
2784 };
2785 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2786 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2791 #[derive(Clone)]
2792 pub struct InvalidInitialization {}
2793 #[allow(
2794 non_camel_case_types,
2795 non_snake_case,
2796 clippy::pub_underscore_fields,
2797 clippy::style
2798 )]
2799 const _: () = {
2800 use alloy::sol_types as alloy_sol_types;
2801 #[doc(hidden)]
2802 type UnderlyingSolTuple<'a> = ();
2803 #[doc(hidden)]
2804 type UnderlyingRustTuple<'a> = ();
2805 #[cfg(test)]
2806 #[allow(dead_code, unreachable_patterns)]
2807 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2808 match _t {
2809 alloy_sol_types::private::AssertTypeEq::<
2810 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2811 >(_) => {},
2812 }
2813 }
2814 #[automatically_derived]
2815 #[doc(hidden)]
2816 impl ::core::convert::From<InvalidInitialization> for UnderlyingRustTuple<'_> {
2817 fn from(value: InvalidInitialization) -> Self {
2818 ()
2819 }
2820 }
2821 #[automatically_derived]
2822 #[doc(hidden)]
2823 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidInitialization {
2824 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2825 Self {}
2826 }
2827 }
2828 #[automatically_derived]
2829 impl alloy_sol_types::SolError for InvalidInitialization {
2830 type Parameters<'a> = UnderlyingSolTuple<'a>;
2831 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2832 const SIGNATURE: &'static str = "InvalidInitialization()";
2833 const SELECTOR: [u8; 4] = [249u8, 46u8, 232u8, 169u8];
2834 #[inline]
2835 fn new<'a>(
2836 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2837 ) -> Self {
2838 tuple.into()
2839 }
2840 #[inline]
2841 fn tokenize(&self) -> Self::Token<'_> {
2842 ()
2843 }
2844 }
2845 };
2846 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2847 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2852 #[derive(Clone)]
2853 pub struct InvalidSchnorrVK {}
2854 #[allow(
2855 non_camel_case_types,
2856 non_snake_case,
2857 clippy::pub_underscore_fields,
2858 clippy::style
2859 )]
2860 const _: () = {
2861 use alloy::sol_types as alloy_sol_types;
2862 #[doc(hidden)]
2863 type UnderlyingSolTuple<'a> = ();
2864 #[doc(hidden)]
2865 type UnderlyingRustTuple<'a> = ();
2866 #[cfg(test)]
2867 #[allow(dead_code, unreachable_patterns)]
2868 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2869 match _t {
2870 alloy_sol_types::private::AssertTypeEq::<
2871 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2872 >(_) => {},
2873 }
2874 }
2875 #[automatically_derived]
2876 #[doc(hidden)]
2877 impl ::core::convert::From<InvalidSchnorrVK> for UnderlyingRustTuple<'_> {
2878 fn from(value: InvalidSchnorrVK) -> Self {
2879 ()
2880 }
2881 }
2882 #[automatically_derived]
2883 #[doc(hidden)]
2884 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidSchnorrVK {
2885 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2886 Self {}
2887 }
2888 }
2889 #[automatically_derived]
2890 impl alloy_sol_types::SolError for InvalidSchnorrVK {
2891 type Parameters<'a> = UnderlyingSolTuple<'a>;
2892 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2893 const SIGNATURE: &'static str = "InvalidSchnorrVK()";
2894 const SELECTOR: [u8; 4] = [6u8, 207u8, 67u8, 143u8];
2895 #[inline]
2896 fn new<'a>(
2897 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2898 ) -> Self {
2899 tuple.into()
2900 }
2901 #[inline]
2902 fn tokenize(&self) -> Self::Token<'_> {
2903 ()
2904 }
2905 }
2906 };
2907 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2908 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2913 #[derive(Clone)]
2914 pub struct NotInitializing {}
2915 #[allow(
2916 non_camel_case_types,
2917 non_snake_case,
2918 clippy::pub_underscore_fields,
2919 clippy::style
2920 )]
2921 const _: () = {
2922 use alloy::sol_types as alloy_sol_types;
2923 #[doc(hidden)]
2924 type UnderlyingSolTuple<'a> = ();
2925 #[doc(hidden)]
2926 type UnderlyingRustTuple<'a> = ();
2927 #[cfg(test)]
2928 #[allow(dead_code, unreachable_patterns)]
2929 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2930 match _t {
2931 alloy_sol_types::private::AssertTypeEq::<
2932 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2933 >(_) => {},
2934 }
2935 }
2936 #[automatically_derived]
2937 #[doc(hidden)]
2938 impl ::core::convert::From<NotInitializing> for UnderlyingRustTuple<'_> {
2939 fn from(value: NotInitializing) -> Self {
2940 ()
2941 }
2942 }
2943 #[automatically_derived]
2944 #[doc(hidden)]
2945 impl ::core::convert::From<UnderlyingRustTuple<'_>> for NotInitializing {
2946 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2947 Self {}
2948 }
2949 }
2950 #[automatically_derived]
2951 impl alloy_sol_types::SolError for NotInitializing {
2952 type Parameters<'a> = UnderlyingSolTuple<'a>;
2953 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
2954 const SIGNATURE: &'static str = "NotInitializing()";
2955 const SELECTOR: [u8; 4] = [215u8, 230u8, 188u8, 248u8];
2956 #[inline]
2957 fn new<'a>(
2958 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2959 ) -> Self {
2960 tuple.into()
2961 }
2962 #[inline]
2963 fn tokenize(&self) -> Self::Token<'_> {
2964 ()
2965 }
2966 }
2967 };
2968 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2969 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2974 #[derive(Clone)]
2975 pub struct NothingToWithdraw {}
2976 #[allow(
2977 non_camel_case_types,
2978 non_snake_case,
2979 clippy::pub_underscore_fields,
2980 clippy::style
2981 )]
2982 const _: () = {
2983 use alloy::sol_types as alloy_sol_types;
2984 #[doc(hidden)]
2985 type UnderlyingSolTuple<'a> = ();
2986 #[doc(hidden)]
2987 type UnderlyingRustTuple<'a> = ();
2988 #[cfg(test)]
2989 #[allow(dead_code, unreachable_patterns)]
2990 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
2991 match _t {
2992 alloy_sol_types::private::AssertTypeEq::<
2993 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2994 >(_) => {},
2995 }
2996 }
2997 #[automatically_derived]
2998 #[doc(hidden)]
2999 impl ::core::convert::From<NothingToWithdraw> for UnderlyingRustTuple<'_> {
3000 fn from(value: NothingToWithdraw) -> Self {
3001 ()
3002 }
3003 }
3004 #[automatically_derived]
3005 #[doc(hidden)]
3006 impl ::core::convert::From<UnderlyingRustTuple<'_>> for NothingToWithdraw {
3007 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3008 Self {}
3009 }
3010 }
3011 #[automatically_derived]
3012 impl alloy_sol_types::SolError for NothingToWithdraw {
3013 type Parameters<'a> = UnderlyingSolTuple<'a>;
3014 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3015 const SIGNATURE: &'static str = "NothingToWithdraw()";
3016 const SELECTOR: [u8; 4] = [208u8, 208u8, 79u8, 96u8];
3017 #[inline]
3018 fn new<'a>(
3019 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3020 ) -> Self {
3021 tuple.into()
3022 }
3023 #[inline]
3024 fn tokenize(&self) -> Self::Token<'_> {
3025 ()
3026 }
3027 }
3028 };
3029 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3030 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3035 #[derive(Clone)]
3036 pub struct OwnableInvalidOwner {
3037 #[allow(missing_docs)]
3038 pub owner: alloy::sol_types::private::Address,
3039 }
3040 #[allow(
3041 non_camel_case_types,
3042 non_snake_case,
3043 clippy::pub_underscore_fields,
3044 clippy::style
3045 )]
3046 const _: () = {
3047 use alloy::sol_types as alloy_sol_types;
3048 #[doc(hidden)]
3049 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
3050 #[doc(hidden)]
3051 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
3052 #[cfg(test)]
3053 #[allow(dead_code, unreachable_patterns)]
3054 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3055 match _t {
3056 alloy_sol_types::private::AssertTypeEq::<
3057 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3058 >(_) => {},
3059 }
3060 }
3061 #[automatically_derived]
3062 #[doc(hidden)]
3063 impl ::core::convert::From<OwnableInvalidOwner> for UnderlyingRustTuple<'_> {
3064 fn from(value: OwnableInvalidOwner) -> Self {
3065 (value.owner,)
3066 }
3067 }
3068 #[automatically_derived]
3069 #[doc(hidden)]
3070 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OwnableInvalidOwner {
3071 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3072 Self { owner: tuple.0 }
3073 }
3074 }
3075 #[automatically_derived]
3076 impl alloy_sol_types::SolError for OwnableInvalidOwner {
3077 type Parameters<'a> = UnderlyingSolTuple<'a>;
3078 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3079 const SIGNATURE: &'static str = "OwnableInvalidOwner(address)";
3080 const SELECTOR: [u8; 4] = [30u8, 79u8, 189u8, 247u8];
3081 #[inline]
3082 fn new<'a>(
3083 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3084 ) -> Self {
3085 tuple.into()
3086 }
3087 #[inline]
3088 fn tokenize(&self) -> Self::Token<'_> {
3089 (
3090 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3091 &self.owner,
3092 ),
3093 )
3094 }
3095 }
3096 };
3097 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3098 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3103 #[derive(Clone)]
3104 pub struct OwnableUnauthorizedAccount {
3105 #[allow(missing_docs)]
3106 pub account: alloy::sol_types::private::Address,
3107 }
3108 #[allow(
3109 non_camel_case_types,
3110 non_snake_case,
3111 clippy::pub_underscore_fields,
3112 clippy::style
3113 )]
3114 const _: () = {
3115 use alloy::sol_types as alloy_sol_types;
3116 #[doc(hidden)]
3117 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
3118 #[doc(hidden)]
3119 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
3120 #[cfg(test)]
3121 #[allow(dead_code, unreachable_patterns)]
3122 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3123 match _t {
3124 alloy_sol_types::private::AssertTypeEq::<
3125 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3126 >(_) => {},
3127 }
3128 }
3129 #[automatically_derived]
3130 #[doc(hidden)]
3131 impl ::core::convert::From<OwnableUnauthorizedAccount> for UnderlyingRustTuple<'_> {
3132 fn from(value: OwnableUnauthorizedAccount) -> Self {
3133 (value.account,)
3134 }
3135 }
3136 #[automatically_derived]
3137 #[doc(hidden)]
3138 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OwnableUnauthorizedAccount {
3139 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3140 Self { account: tuple.0 }
3141 }
3142 }
3143 #[automatically_derived]
3144 impl alloy_sol_types::SolError for OwnableUnauthorizedAccount {
3145 type Parameters<'a> = UnderlyingSolTuple<'a>;
3146 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3147 const SIGNATURE: &'static str = "OwnableUnauthorizedAccount(address)";
3148 const SELECTOR: [u8; 4] = [17u8, 140u8, 218u8, 167u8];
3149 #[inline]
3150 fn new<'a>(
3151 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3152 ) -> Self {
3153 tuple.into()
3154 }
3155 #[inline]
3156 fn tokenize(&self) -> Self::Token<'_> {
3157 (
3158 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3159 &self.account,
3160 ),
3161 )
3162 }
3163 }
3164 };
3165 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3166 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3171 #[derive(Clone)]
3172 pub struct PrematureWithdrawal {}
3173 #[allow(
3174 non_camel_case_types,
3175 non_snake_case,
3176 clippy::pub_underscore_fields,
3177 clippy::style
3178 )]
3179 const _: () = {
3180 use alloy::sol_types as alloy_sol_types;
3181 #[doc(hidden)]
3182 type UnderlyingSolTuple<'a> = ();
3183 #[doc(hidden)]
3184 type UnderlyingRustTuple<'a> = ();
3185 #[cfg(test)]
3186 #[allow(dead_code, unreachable_patterns)]
3187 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3188 match _t {
3189 alloy_sol_types::private::AssertTypeEq::<
3190 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3191 >(_) => {},
3192 }
3193 }
3194 #[automatically_derived]
3195 #[doc(hidden)]
3196 impl ::core::convert::From<PrematureWithdrawal> for UnderlyingRustTuple<'_> {
3197 fn from(value: PrematureWithdrawal) -> Self {
3198 ()
3199 }
3200 }
3201 #[automatically_derived]
3202 #[doc(hidden)]
3203 impl ::core::convert::From<UnderlyingRustTuple<'_>> for PrematureWithdrawal {
3204 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3205 Self {}
3206 }
3207 }
3208 #[automatically_derived]
3209 impl alloy_sol_types::SolError for PrematureWithdrawal {
3210 type Parameters<'a> = UnderlyingSolTuple<'a>;
3211 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3212 const SIGNATURE: &'static str = "PrematureWithdrawal()";
3213 const SELECTOR: [u8; 4] = [90u8, 119u8, 67u8, 87u8];
3214 #[inline]
3215 fn new<'a>(
3216 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3217 ) -> Self {
3218 tuple.into()
3219 }
3220 #[inline]
3221 fn tokenize(&self) -> Self::Token<'_> {
3222 ()
3223 }
3224 }
3225 };
3226 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3227 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3232 #[derive(Clone)]
3233 pub struct UUPSUnauthorizedCallContext {}
3234 #[allow(
3235 non_camel_case_types,
3236 non_snake_case,
3237 clippy::pub_underscore_fields,
3238 clippy::style
3239 )]
3240 const _: () = {
3241 use alloy::sol_types as alloy_sol_types;
3242 #[doc(hidden)]
3243 type UnderlyingSolTuple<'a> = ();
3244 #[doc(hidden)]
3245 type UnderlyingRustTuple<'a> = ();
3246 #[cfg(test)]
3247 #[allow(dead_code, unreachable_patterns)]
3248 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3249 match _t {
3250 alloy_sol_types::private::AssertTypeEq::<
3251 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3252 >(_) => {},
3253 }
3254 }
3255 #[automatically_derived]
3256 #[doc(hidden)]
3257 impl ::core::convert::From<UUPSUnauthorizedCallContext> for UnderlyingRustTuple<'_> {
3258 fn from(value: UUPSUnauthorizedCallContext) -> Self {
3259 ()
3260 }
3261 }
3262 #[automatically_derived]
3263 #[doc(hidden)]
3264 impl ::core::convert::From<UnderlyingRustTuple<'_>> for UUPSUnauthorizedCallContext {
3265 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3266 Self {}
3267 }
3268 }
3269 #[automatically_derived]
3270 impl alloy_sol_types::SolError for UUPSUnauthorizedCallContext {
3271 type Parameters<'a> = UnderlyingSolTuple<'a>;
3272 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3273 const SIGNATURE: &'static str = "UUPSUnauthorizedCallContext()";
3274 const SELECTOR: [u8; 4] = [224u8, 124u8, 141u8, 186u8];
3275 #[inline]
3276 fn new<'a>(
3277 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3278 ) -> Self {
3279 tuple.into()
3280 }
3281 #[inline]
3282 fn tokenize(&self) -> Self::Token<'_> {
3283 ()
3284 }
3285 }
3286 };
3287 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3288 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3293 #[derive(Clone)]
3294 pub struct UUPSUnsupportedProxiableUUID {
3295 #[allow(missing_docs)]
3296 pub slot: alloy::sol_types::private::FixedBytes<32>,
3297 }
3298 #[allow(
3299 non_camel_case_types,
3300 non_snake_case,
3301 clippy::pub_underscore_fields,
3302 clippy::style
3303 )]
3304 const _: () = {
3305 use alloy::sol_types as alloy_sol_types;
3306 #[doc(hidden)]
3307 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
3308 #[doc(hidden)]
3309 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
3310 #[cfg(test)]
3311 #[allow(dead_code, unreachable_patterns)]
3312 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3313 match _t {
3314 alloy_sol_types::private::AssertTypeEq::<
3315 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3316 >(_) => {},
3317 }
3318 }
3319 #[automatically_derived]
3320 #[doc(hidden)]
3321 impl ::core::convert::From<UUPSUnsupportedProxiableUUID> for UnderlyingRustTuple<'_> {
3322 fn from(value: UUPSUnsupportedProxiableUUID) -> Self {
3323 (value.slot,)
3324 }
3325 }
3326 #[automatically_derived]
3327 #[doc(hidden)]
3328 impl ::core::convert::From<UnderlyingRustTuple<'_>> for UUPSUnsupportedProxiableUUID {
3329 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3330 Self { slot: tuple.0 }
3331 }
3332 }
3333 #[automatically_derived]
3334 impl alloy_sol_types::SolError for UUPSUnsupportedProxiableUUID {
3335 type Parameters<'a> = UnderlyingSolTuple<'a>;
3336 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3337 const SIGNATURE: &'static str = "UUPSUnsupportedProxiableUUID(bytes32)";
3338 const SELECTOR: [u8; 4] = [170u8, 29u8, 73u8, 164u8];
3339 #[inline]
3340 fn new<'a>(
3341 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3342 ) -> Self {
3343 tuple.into()
3344 }
3345 #[inline]
3346 fn tokenize(&self) -> Self::Token<'_> {
3347 (
3348 <alloy::sol_types::sol_data::FixedBytes<
3349 32,
3350 > as alloy_sol_types::SolType>::tokenize(&self.slot),
3351 )
3352 }
3353 }
3354 };
3355 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3356 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3361 #[derive(Clone)]
3362 pub struct UndelegationAlreadyExists {}
3363 #[allow(
3364 non_camel_case_types,
3365 non_snake_case,
3366 clippy::pub_underscore_fields,
3367 clippy::style
3368 )]
3369 const _: () = {
3370 use alloy::sol_types as alloy_sol_types;
3371 #[doc(hidden)]
3372 type UnderlyingSolTuple<'a> = ();
3373 #[doc(hidden)]
3374 type UnderlyingRustTuple<'a> = ();
3375 #[cfg(test)]
3376 #[allow(dead_code, unreachable_patterns)]
3377 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3378 match _t {
3379 alloy_sol_types::private::AssertTypeEq::<
3380 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3381 >(_) => {},
3382 }
3383 }
3384 #[automatically_derived]
3385 #[doc(hidden)]
3386 impl ::core::convert::From<UndelegationAlreadyExists> for UnderlyingRustTuple<'_> {
3387 fn from(value: UndelegationAlreadyExists) -> Self {
3388 ()
3389 }
3390 }
3391 #[automatically_derived]
3392 #[doc(hidden)]
3393 impl ::core::convert::From<UnderlyingRustTuple<'_>> for UndelegationAlreadyExists {
3394 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3395 Self {}
3396 }
3397 }
3398 #[automatically_derived]
3399 impl alloy_sol_types::SolError for UndelegationAlreadyExists {
3400 type Parameters<'a> = UnderlyingSolTuple<'a>;
3401 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3402 const SIGNATURE: &'static str = "UndelegationAlreadyExists()";
3403 const SELECTOR: [u8; 4] = [212u8, 35u8, 164u8, 241u8];
3404 #[inline]
3405 fn new<'a>(
3406 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3407 ) -> Self {
3408 tuple.into()
3409 }
3410 #[inline]
3411 fn tokenize(&self) -> Self::Token<'_> {
3412 ()
3413 }
3414 }
3415 };
3416 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3417 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3422 #[derive(Clone)]
3423 pub struct ValidatorAlreadyExited {}
3424 #[allow(
3425 non_camel_case_types,
3426 non_snake_case,
3427 clippy::pub_underscore_fields,
3428 clippy::style
3429 )]
3430 const _: () = {
3431 use alloy::sol_types as alloy_sol_types;
3432 #[doc(hidden)]
3433 type UnderlyingSolTuple<'a> = ();
3434 #[doc(hidden)]
3435 type UnderlyingRustTuple<'a> = ();
3436 #[cfg(test)]
3437 #[allow(dead_code, unreachable_patterns)]
3438 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3439 match _t {
3440 alloy_sol_types::private::AssertTypeEq::<
3441 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3442 >(_) => {},
3443 }
3444 }
3445 #[automatically_derived]
3446 #[doc(hidden)]
3447 impl ::core::convert::From<ValidatorAlreadyExited> for UnderlyingRustTuple<'_> {
3448 fn from(value: ValidatorAlreadyExited) -> Self {
3449 ()
3450 }
3451 }
3452 #[automatically_derived]
3453 #[doc(hidden)]
3454 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ValidatorAlreadyExited {
3455 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3456 Self {}
3457 }
3458 }
3459 #[automatically_derived]
3460 impl alloy_sol_types::SolError for ValidatorAlreadyExited {
3461 type Parameters<'a> = UnderlyingSolTuple<'a>;
3462 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3463 const SIGNATURE: &'static str = "ValidatorAlreadyExited()";
3464 const SELECTOR: [u8; 4] = [234u8, 180u8, 169u8, 99u8];
3465 #[inline]
3466 fn new<'a>(
3467 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3468 ) -> Self {
3469 tuple.into()
3470 }
3471 #[inline]
3472 fn tokenize(&self) -> Self::Token<'_> {
3473 ()
3474 }
3475 }
3476 };
3477 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3478 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3483 #[derive(Clone)]
3484 pub struct ValidatorAlreadyRegistered {}
3485 #[allow(
3486 non_camel_case_types,
3487 non_snake_case,
3488 clippy::pub_underscore_fields,
3489 clippy::style
3490 )]
3491 const _: () = {
3492 use alloy::sol_types as alloy_sol_types;
3493 #[doc(hidden)]
3494 type UnderlyingSolTuple<'a> = ();
3495 #[doc(hidden)]
3496 type UnderlyingRustTuple<'a> = ();
3497 #[cfg(test)]
3498 #[allow(dead_code, unreachable_patterns)]
3499 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3500 match _t {
3501 alloy_sol_types::private::AssertTypeEq::<
3502 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3503 >(_) => {},
3504 }
3505 }
3506 #[automatically_derived]
3507 #[doc(hidden)]
3508 impl ::core::convert::From<ValidatorAlreadyRegistered> for UnderlyingRustTuple<'_> {
3509 fn from(value: ValidatorAlreadyRegistered) -> Self {
3510 ()
3511 }
3512 }
3513 #[automatically_derived]
3514 #[doc(hidden)]
3515 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ValidatorAlreadyRegistered {
3516 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3517 Self {}
3518 }
3519 }
3520 #[automatically_derived]
3521 impl alloy_sol_types::SolError for ValidatorAlreadyRegistered {
3522 type Parameters<'a> = UnderlyingSolTuple<'a>;
3523 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3524 const SIGNATURE: &'static str = "ValidatorAlreadyRegistered()";
3525 const SELECTOR: [u8; 4] = [153u8, 115u8, 247u8, 216u8];
3526 #[inline]
3527 fn new<'a>(
3528 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3529 ) -> Self {
3530 tuple.into()
3531 }
3532 #[inline]
3533 fn tokenize(&self) -> Self::Token<'_> {
3534 ()
3535 }
3536 }
3537 };
3538 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3539 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3544 #[derive(Clone)]
3545 pub struct ValidatorInactive {}
3546 #[allow(
3547 non_camel_case_types,
3548 non_snake_case,
3549 clippy::pub_underscore_fields,
3550 clippy::style
3551 )]
3552 const _: () = {
3553 use alloy::sol_types as alloy_sol_types;
3554 #[doc(hidden)]
3555 type UnderlyingSolTuple<'a> = ();
3556 #[doc(hidden)]
3557 type UnderlyingRustTuple<'a> = ();
3558 #[cfg(test)]
3559 #[allow(dead_code, unreachable_patterns)]
3560 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3561 match _t {
3562 alloy_sol_types::private::AssertTypeEq::<
3563 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3564 >(_) => {},
3565 }
3566 }
3567 #[automatically_derived]
3568 #[doc(hidden)]
3569 impl ::core::convert::From<ValidatorInactive> for UnderlyingRustTuple<'_> {
3570 fn from(value: ValidatorInactive) -> Self {
3571 ()
3572 }
3573 }
3574 #[automatically_derived]
3575 #[doc(hidden)]
3576 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ValidatorInactive {
3577 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3578 Self {}
3579 }
3580 }
3581 #[automatically_derived]
3582 impl alloy_sol_types::SolError for ValidatorInactive {
3583 type Parameters<'a> = UnderlyingSolTuple<'a>;
3584 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3585 const SIGNATURE: &'static str = "ValidatorInactive()";
3586 const SELECTOR: [u8; 4] = [80u8, 138u8, 121u8, 63u8];
3587 #[inline]
3588 fn new<'a>(
3589 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3590 ) -> Self {
3591 tuple.into()
3592 }
3593 #[inline]
3594 fn tokenize(&self) -> Self::Token<'_> {
3595 ()
3596 }
3597 }
3598 };
3599 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3600 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3605 #[derive(Clone)]
3606 pub struct ValidatorNotExited {}
3607 #[allow(
3608 non_camel_case_types,
3609 non_snake_case,
3610 clippy::pub_underscore_fields,
3611 clippy::style
3612 )]
3613 const _: () = {
3614 use alloy::sol_types as alloy_sol_types;
3615 #[doc(hidden)]
3616 type UnderlyingSolTuple<'a> = ();
3617 #[doc(hidden)]
3618 type UnderlyingRustTuple<'a> = ();
3619 #[cfg(test)]
3620 #[allow(dead_code, unreachable_patterns)]
3621 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3622 match _t {
3623 alloy_sol_types::private::AssertTypeEq::<
3624 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3625 >(_) => {},
3626 }
3627 }
3628 #[automatically_derived]
3629 #[doc(hidden)]
3630 impl ::core::convert::From<ValidatorNotExited> for UnderlyingRustTuple<'_> {
3631 fn from(value: ValidatorNotExited) -> Self {
3632 ()
3633 }
3634 }
3635 #[automatically_derived]
3636 #[doc(hidden)]
3637 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ValidatorNotExited {
3638 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3639 Self {}
3640 }
3641 }
3642 #[automatically_derived]
3643 impl alloy_sol_types::SolError for ValidatorNotExited {
3644 type Parameters<'a> = UnderlyingSolTuple<'a>;
3645 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3646 const SIGNATURE: &'static str = "ValidatorNotExited()";
3647 const SELECTOR: [u8; 4] = [242u8, 83u8, 20u8, 166u8];
3648 #[inline]
3649 fn new<'a>(
3650 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3651 ) -> Self {
3652 tuple.into()
3653 }
3654 #[inline]
3655 fn tokenize(&self) -> Self::Token<'_> {
3656 ()
3657 }
3658 }
3659 };
3660 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3661 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3666 #[derive(Clone)]
3667 pub struct ZeroAddress {}
3668 #[allow(
3669 non_camel_case_types,
3670 non_snake_case,
3671 clippy::pub_underscore_fields,
3672 clippy::style
3673 )]
3674 const _: () = {
3675 use alloy::sol_types as alloy_sol_types;
3676 #[doc(hidden)]
3677 type UnderlyingSolTuple<'a> = ();
3678 #[doc(hidden)]
3679 type UnderlyingRustTuple<'a> = ();
3680 #[cfg(test)]
3681 #[allow(dead_code, unreachable_patterns)]
3682 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3683 match _t {
3684 alloy_sol_types::private::AssertTypeEq::<
3685 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3686 >(_) => {},
3687 }
3688 }
3689 #[automatically_derived]
3690 #[doc(hidden)]
3691 impl ::core::convert::From<ZeroAddress> for UnderlyingRustTuple<'_> {
3692 fn from(value: ZeroAddress) -> Self {
3693 ()
3694 }
3695 }
3696 #[automatically_derived]
3697 #[doc(hidden)]
3698 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ZeroAddress {
3699 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3700 Self {}
3701 }
3702 }
3703 #[automatically_derived]
3704 impl alloy_sol_types::SolError for ZeroAddress {
3705 type Parameters<'a> = UnderlyingSolTuple<'a>;
3706 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3707 const SIGNATURE: &'static str = "ZeroAddress()";
3708 const SELECTOR: [u8; 4] = [217u8, 46u8, 35u8, 61u8];
3709 #[inline]
3710 fn new<'a>(
3711 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3712 ) -> Self {
3713 tuple.into()
3714 }
3715 #[inline]
3716 fn tokenize(&self) -> Self::Token<'_> {
3717 ()
3718 }
3719 }
3720 };
3721 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3722 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3727 #[derive(Clone)]
3728 pub struct ZeroAmount {}
3729 #[allow(
3730 non_camel_case_types,
3731 non_snake_case,
3732 clippy::pub_underscore_fields,
3733 clippy::style
3734 )]
3735 const _: () = {
3736 use alloy::sol_types as alloy_sol_types;
3737 #[doc(hidden)]
3738 type UnderlyingSolTuple<'a> = ();
3739 #[doc(hidden)]
3740 type UnderlyingRustTuple<'a> = ();
3741 #[cfg(test)]
3742 #[allow(dead_code, unreachable_patterns)]
3743 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
3744 match _t {
3745 alloy_sol_types::private::AssertTypeEq::<
3746 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3747 >(_) => {},
3748 }
3749 }
3750 #[automatically_derived]
3751 #[doc(hidden)]
3752 impl ::core::convert::From<ZeroAmount> for UnderlyingRustTuple<'_> {
3753 fn from(value: ZeroAmount) -> Self {
3754 ()
3755 }
3756 }
3757 #[automatically_derived]
3758 #[doc(hidden)]
3759 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ZeroAmount {
3760 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3761 Self {}
3762 }
3763 }
3764 #[automatically_derived]
3765 impl alloy_sol_types::SolError for ZeroAmount {
3766 type Parameters<'a> = UnderlyingSolTuple<'a>;
3767 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
3768 const SIGNATURE: &'static str = "ZeroAmount()";
3769 const SELECTOR: [u8; 4] = [31u8, 42u8, 32u8, 5u8];
3770 #[inline]
3771 fn new<'a>(
3772 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3773 ) -> Self {
3774 tuple.into()
3775 }
3776 #[inline]
3777 fn tokenize(&self) -> Self::Token<'_> {
3778 ()
3779 }
3780 }
3781 };
3782 #[derive()]
3783 #[allow(
3788 non_camel_case_types,
3789 non_snake_case,
3790 clippy::pub_underscore_fields,
3791 clippy::style
3792 )]
3793 #[derive(Clone)]
3794 pub struct ConsensusKeysUpdated {
3795 #[allow(missing_docs)]
3796 pub account: alloy::sol_types::private::Address,
3797 #[allow(missing_docs)]
3798 pub blsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
3799 #[allow(missing_docs)]
3800 pub schnorrVK: <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
3801 }
3802 #[allow(
3803 non_camel_case_types,
3804 non_snake_case,
3805 clippy::pub_underscore_fields,
3806 clippy::style
3807 )]
3808 const _: () = {
3809 use alloy::sol_types as alloy_sol_types;
3810 #[automatically_derived]
3811 impl alloy_sol_types::SolEvent for ConsensusKeysUpdated {
3812 type DataTuple<'a> = (BN254::G2Point, EdOnBN254::EdOnBN254Point);
3813 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
3814 type TopicList = (
3815 alloy_sol_types::sol_data::FixedBytes<32>,
3816 alloy::sol_types::sol_data::Address,
3817 );
3818 const SIGNATURE: &'static str =
3819 "ConsensusKeysUpdated(address,(uint256,uint256,uint256,uint256),(uint256,uint256))";
3820 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
3821 alloy_sol_types::private::B256::new([
3822 128u8, 216u8, 164u8, 161u8, 102u8, 51u8, 40u8, 169u8, 152u8, 212u8, 85u8, 91u8,
3823 162u8, 29u8, 139u8, 186u8, 110u8, 241u8, 87u8, 106u8, 140u8, 94u8, 157u8, 39u8,
3824 249u8, 197u8, 69u8, 241u8, 163u8, 213u8, 43u8, 29u8,
3825 ]);
3826 const ANONYMOUS: bool = false;
3827 #[allow(unused_variables)]
3828 #[inline]
3829 fn new(
3830 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
3831 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
3832 ) -> Self {
3833 Self {
3834 account: topics.1,
3835 blsVK: data.0,
3836 schnorrVK: data.1,
3837 }
3838 }
3839 #[inline]
3840 fn check_signature(
3841 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
3842 ) -> alloy_sol_types::Result<()> {
3843 if topics.0 != Self::SIGNATURE_HASH {
3844 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
3845 Self::SIGNATURE,
3846 topics.0,
3847 Self::SIGNATURE_HASH,
3848 ));
3849 }
3850 Ok(())
3851 }
3852 #[inline]
3853 fn tokenize_body(&self) -> Self::DataToken<'_> {
3854 (
3855 <BN254::G2Point as alloy_sol_types::SolType>::tokenize(&self.blsVK),
3856 <EdOnBN254::EdOnBN254Point as alloy_sol_types::SolType>::tokenize(
3857 &self.schnorrVK,
3858 ),
3859 )
3860 }
3861 #[inline]
3862 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
3863 (Self::SIGNATURE_HASH.into(), self.account.clone())
3864 }
3865 #[inline]
3866 fn encode_topics_raw(
3867 &self,
3868 out: &mut [alloy_sol_types::abi::token::WordToken],
3869 ) -> alloy_sol_types::Result<()> {
3870 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
3871 return Err(alloy_sol_types::Error::Overrun);
3872 }
3873 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
3874 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
3875 &self.account,
3876 );
3877 Ok(())
3878 }
3879 }
3880 #[automatically_derived]
3881 impl alloy_sol_types::private::IntoLogData for ConsensusKeysUpdated {
3882 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
3883 From::from(self)
3884 }
3885 fn into_log_data(self) -> alloy_sol_types::private::LogData {
3886 From::from(&self)
3887 }
3888 }
3889 #[automatically_derived]
3890 impl From<&ConsensusKeysUpdated> for alloy_sol_types::private::LogData {
3891 #[inline]
3892 fn from(this: &ConsensusKeysUpdated) -> alloy_sol_types::private::LogData {
3893 alloy_sol_types::SolEvent::encode_log_data(this)
3894 }
3895 }
3896 };
3897 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3898 #[allow(
3903 non_camel_case_types,
3904 non_snake_case,
3905 clippy::pub_underscore_fields,
3906 clippy::style
3907 )]
3908 #[derive(Clone)]
3909 pub struct Delegated {
3910 #[allow(missing_docs)]
3911 pub delegator: alloy::sol_types::private::Address,
3912 #[allow(missing_docs)]
3913 pub validator: alloy::sol_types::private::Address,
3914 #[allow(missing_docs)]
3915 pub amount: alloy::sol_types::private::primitives::aliases::U256,
3916 }
3917 #[allow(
3918 non_camel_case_types,
3919 non_snake_case,
3920 clippy::pub_underscore_fields,
3921 clippy::style
3922 )]
3923 const _: () = {
3924 use alloy::sol_types as alloy_sol_types;
3925 #[automatically_derived]
3926 impl alloy_sol_types::SolEvent for Delegated {
3927 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
3928 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
3929 type TopicList = (
3930 alloy_sol_types::sol_data::FixedBytes<32>,
3931 alloy::sol_types::sol_data::Address,
3932 alloy::sol_types::sol_data::Address,
3933 );
3934 const SIGNATURE: &'static str = "Delegated(address,address,uint256)";
3935 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
3936 alloy_sol_types::private::B256::new([
3937 229u8, 84u8, 26u8, 107u8, 97u8, 3u8, 212u8, 250u8, 126u8, 2u8, 30u8, 213u8,
3938 79u8, 173u8, 57u8, 198u8, 111u8, 39u8, 167u8, 107u8, 209u8, 61u8, 55u8, 76u8,
3939 246u8, 36u8, 10u8, 230u8, 189u8, 11u8, 183u8, 43u8,
3940 ]);
3941 const ANONYMOUS: bool = false;
3942 #[allow(unused_variables)]
3943 #[inline]
3944 fn new(
3945 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
3946 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
3947 ) -> Self {
3948 Self {
3949 delegator: topics.1,
3950 validator: topics.2,
3951 amount: data.0,
3952 }
3953 }
3954 #[inline]
3955 fn check_signature(
3956 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
3957 ) -> alloy_sol_types::Result<()> {
3958 if topics.0 != Self::SIGNATURE_HASH {
3959 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
3960 Self::SIGNATURE,
3961 topics.0,
3962 Self::SIGNATURE_HASH,
3963 ));
3964 }
3965 Ok(())
3966 }
3967 #[inline]
3968 fn tokenize_body(&self) -> Self::DataToken<'_> {
3969 (
3970 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
3971 &self.amount,
3972 ),
3973 )
3974 }
3975 #[inline]
3976 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
3977 (
3978 Self::SIGNATURE_HASH.into(),
3979 self.delegator.clone(),
3980 self.validator.clone(),
3981 )
3982 }
3983 #[inline]
3984 fn encode_topics_raw(
3985 &self,
3986 out: &mut [alloy_sol_types::abi::token::WordToken],
3987 ) -> alloy_sol_types::Result<()> {
3988 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
3989 return Err(alloy_sol_types::Error::Overrun);
3990 }
3991 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
3992 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
3993 &self.delegator,
3994 );
3995 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
3996 &self.validator,
3997 );
3998 Ok(())
3999 }
4000 }
4001 #[automatically_derived]
4002 impl alloy_sol_types::private::IntoLogData for Delegated {
4003 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
4004 From::from(self)
4005 }
4006 fn into_log_data(self) -> alloy_sol_types::private::LogData {
4007 From::from(&self)
4008 }
4009 }
4010 #[automatically_derived]
4011 impl From<&Delegated> for alloy_sol_types::private::LogData {
4012 #[inline]
4013 fn from(this: &Delegated) -> alloy_sol_types::private::LogData {
4014 alloy_sol_types::SolEvent::encode_log_data(this)
4015 }
4016 }
4017 };
4018 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4019 #[allow(
4024 non_camel_case_types,
4025 non_snake_case,
4026 clippy::pub_underscore_fields,
4027 clippy::style
4028 )]
4029 #[derive(Clone)]
4030 pub struct Initialized {
4031 #[allow(missing_docs)]
4032 pub version: u64,
4033 }
4034 #[allow(
4035 non_camel_case_types,
4036 non_snake_case,
4037 clippy::pub_underscore_fields,
4038 clippy::style
4039 )]
4040 const _: () = {
4041 use alloy::sol_types as alloy_sol_types;
4042 #[automatically_derived]
4043 impl alloy_sol_types::SolEvent for Initialized {
4044 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
4045 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4046 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
4047 const SIGNATURE: &'static str = "Initialized(uint64)";
4048 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
4049 alloy_sol_types::private::B256::new([
4050 199u8, 245u8, 5u8, 178u8, 243u8, 113u8, 174u8, 33u8, 117u8, 238u8, 73u8, 19u8,
4051 244u8, 73u8, 158u8, 31u8, 38u8, 51u8, 167u8, 181u8, 147u8, 99u8, 33u8, 238u8,
4052 209u8, 205u8, 174u8, 182u8, 17u8, 81u8, 129u8, 210u8,
4053 ]);
4054 const ANONYMOUS: bool = false;
4055 #[allow(unused_variables)]
4056 #[inline]
4057 fn new(
4058 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
4059 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
4060 ) -> Self {
4061 Self { version: data.0 }
4062 }
4063 #[inline]
4064 fn check_signature(
4065 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
4066 ) -> alloy_sol_types::Result<()> {
4067 if topics.0 != Self::SIGNATURE_HASH {
4068 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
4069 Self::SIGNATURE,
4070 topics.0,
4071 Self::SIGNATURE_HASH,
4072 ));
4073 }
4074 Ok(())
4075 }
4076 #[inline]
4077 fn tokenize_body(&self) -> Self::DataToken<'_> {
4078 (
4079 <alloy::sol_types::sol_data::Uint<64> as alloy_sol_types::SolType>::tokenize(
4080 &self.version,
4081 ),
4082 )
4083 }
4084 #[inline]
4085 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
4086 (Self::SIGNATURE_HASH.into(),)
4087 }
4088 #[inline]
4089 fn encode_topics_raw(
4090 &self,
4091 out: &mut [alloy_sol_types::abi::token::WordToken],
4092 ) -> alloy_sol_types::Result<()> {
4093 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
4094 return Err(alloy_sol_types::Error::Overrun);
4095 }
4096 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
4097 Ok(())
4098 }
4099 }
4100 #[automatically_derived]
4101 impl alloy_sol_types::private::IntoLogData for Initialized {
4102 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
4103 From::from(self)
4104 }
4105 fn into_log_data(self) -> alloy_sol_types::private::LogData {
4106 From::from(&self)
4107 }
4108 }
4109 #[automatically_derived]
4110 impl From<&Initialized> for alloy_sol_types::private::LogData {
4111 #[inline]
4112 fn from(this: &Initialized) -> alloy_sol_types::private::LogData {
4113 alloy_sol_types::SolEvent::encode_log_data(this)
4114 }
4115 }
4116 };
4117 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4118 #[allow(
4123 non_camel_case_types,
4124 non_snake_case,
4125 clippy::pub_underscore_fields,
4126 clippy::style
4127 )]
4128 #[derive(Clone)]
4129 pub struct OwnershipTransferred {
4130 #[allow(missing_docs)]
4131 pub previousOwner: alloy::sol_types::private::Address,
4132 #[allow(missing_docs)]
4133 pub newOwner: alloy::sol_types::private::Address,
4134 }
4135 #[allow(
4136 non_camel_case_types,
4137 non_snake_case,
4138 clippy::pub_underscore_fields,
4139 clippy::style
4140 )]
4141 const _: () = {
4142 use alloy::sol_types as alloy_sol_types;
4143 #[automatically_derived]
4144 impl alloy_sol_types::SolEvent for OwnershipTransferred {
4145 type DataTuple<'a> = ();
4146 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4147 type TopicList = (
4148 alloy_sol_types::sol_data::FixedBytes<32>,
4149 alloy::sol_types::sol_data::Address,
4150 alloy::sol_types::sol_data::Address,
4151 );
4152 const SIGNATURE: &'static str = "OwnershipTransferred(address,address)";
4153 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
4154 alloy_sol_types::private::B256::new([
4155 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8, 31u8,
4156 208u8, 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8, 218u8,
4157 175u8, 227u8, 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8,
4158 ]);
4159 const ANONYMOUS: bool = false;
4160 #[allow(unused_variables)]
4161 #[inline]
4162 fn new(
4163 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
4164 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
4165 ) -> Self {
4166 Self {
4167 previousOwner: topics.1,
4168 newOwner: topics.2,
4169 }
4170 }
4171 #[inline]
4172 fn check_signature(
4173 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
4174 ) -> alloy_sol_types::Result<()> {
4175 if topics.0 != Self::SIGNATURE_HASH {
4176 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
4177 Self::SIGNATURE,
4178 topics.0,
4179 Self::SIGNATURE_HASH,
4180 ));
4181 }
4182 Ok(())
4183 }
4184 #[inline]
4185 fn tokenize_body(&self) -> Self::DataToken<'_> {
4186 ()
4187 }
4188 #[inline]
4189 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
4190 (
4191 Self::SIGNATURE_HASH.into(),
4192 self.previousOwner.clone(),
4193 self.newOwner.clone(),
4194 )
4195 }
4196 #[inline]
4197 fn encode_topics_raw(
4198 &self,
4199 out: &mut [alloy_sol_types::abi::token::WordToken],
4200 ) -> alloy_sol_types::Result<()> {
4201 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
4202 return Err(alloy_sol_types::Error::Overrun);
4203 }
4204 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
4205 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
4206 &self.previousOwner,
4207 );
4208 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
4209 &self.newOwner,
4210 );
4211 Ok(())
4212 }
4213 }
4214 #[automatically_derived]
4215 impl alloy_sol_types::private::IntoLogData for OwnershipTransferred {
4216 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
4217 From::from(self)
4218 }
4219 fn into_log_data(self) -> alloy_sol_types::private::LogData {
4220 From::from(&self)
4221 }
4222 }
4223 #[automatically_derived]
4224 impl From<&OwnershipTransferred> for alloy_sol_types::private::LogData {
4225 #[inline]
4226 fn from(this: &OwnershipTransferred) -> alloy_sol_types::private::LogData {
4227 alloy_sol_types::SolEvent::encode_log_data(this)
4228 }
4229 }
4230 };
4231 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4232 #[allow(
4237 non_camel_case_types,
4238 non_snake_case,
4239 clippy::pub_underscore_fields,
4240 clippy::style
4241 )]
4242 #[derive(Clone)]
4243 pub struct Undelegated {
4244 #[allow(missing_docs)]
4245 pub delegator: alloy::sol_types::private::Address,
4246 #[allow(missing_docs)]
4247 pub validator: alloy::sol_types::private::Address,
4248 #[allow(missing_docs)]
4249 pub amount: alloy::sol_types::private::primitives::aliases::U256,
4250 }
4251 #[allow(
4252 non_camel_case_types,
4253 non_snake_case,
4254 clippy::pub_underscore_fields,
4255 clippy::style
4256 )]
4257 const _: () = {
4258 use alloy::sol_types as alloy_sol_types;
4259 #[automatically_derived]
4260 impl alloy_sol_types::SolEvent for Undelegated {
4261 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
4262 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4263 type TopicList = (
4264 alloy_sol_types::sol_data::FixedBytes<32>,
4265 alloy::sol_types::sol_data::Address,
4266 alloy::sol_types::sol_data::Address,
4267 );
4268 const SIGNATURE: &'static str = "Undelegated(address,address,uint256)";
4269 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
4270 alloy_sol_types::private::B256::new([
4271 77u8, 16u8, 189u8, 4u8, 151u8, 117u8, 199u8, 123u8, 215u8, 242u8, 85u8, 25u8,
4272 90u8, 251u8, 165u8, 8u8, 128u8, 40u8, 236u8, 179u8, 199u8, 194u8, 119u8, 211u8,
4273 147u8, 204u8, 255u8, 121u8, 52u8, 242u8, 249u8, 44u8,
4274 ]);
4275 const ANONYMOUS: bool = false;
4276 #[allow(unused_variables)]
4277 #[inline]
4278 fn new(
4279 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
4280 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
4281 ) -> Self {
4282 Self {
4283 delegator: topics.1,
4284 validator: topics.2,
4285 amount: data.0,
4286 }
4287 }
4288 #[inline]
4289 fn check_signature(
4290 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
4291 ) -> alloy_sol_types::Result<()> {
4292 if topics.0 != Self::SIGNATURE_HASH {
4293 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
4294 Self::SIGNATURE,
4295 topics.0,
4296 Self::SIGNATURE_HASH,
4297 ));
4298 }
4299 Ok(())
4300 }
4301 #[inline]
4302 fn tokenize_body(&self) -> Self::DataToken<'_> {
4303 (
4304 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
4305 &self.amount,
4306 ),
4307 )
4308 }
4309 #[inline]
4310 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
4311 (
4312 Self::SIGNATURE_HASH.into(),
4313 self.delegator.clone(),
4314 self.validator.clone(),
4315 )
4316 }
4317 #[inline]
4318 fn encode_topics_raw(
4319 &self,
4320 out: &mut [alloy_sol_types::abi::token::WordToken],
4321 ) -> alloy_sol_types::Result<()> {
4322 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
4323 return Err(alloy_sol_types::Error::Overrun);
4324 }
4325 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
4326 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
4327 &self.delegator,
4328 );
4329 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
4330 &self.validator,
4331 );
4332 Ok(())
4333 }
4334 }
4335 #[automatically_derived]
4336 impl alloy_sol_types::private::IntoLogData for Undelegated {
4337 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
4338 From::from(self)
4339 }
4340 fn into_log_data(self) -> alloy_sol_types::private::LogData {
4341 From::from(&self)
4342 }
4343 }
4344 #[automatically_derived]
4345 impl From<&Undelegated> for alloy_sol_types::private::LogData {
4346 #[inline]
4347 fn from(this: &Undelegated) -> alloy_sol_types::private::LogData {
4348 alloy_sol_types::SolEvent::encode_log_data(this)
4349 }
4350 }
4351 };
4352 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4353 #[allow(
4358 non_camel_case_types,
4359 non_snake_case,
4360 clippy::pub_underscore_fields,
4361 clippy::style
4362 )]
4363 #[derive(Clone)]
4364 pub struct Upgrade {
4365 #[allow(missing_docs)]
4366 pub implementation: alloy::sol_types::private::Address,
4367 }
4368 #[allow(
4369 non_camel_case_types,
4370 non_snake_case,
4371 clippy::pub_underscore_fields,
4372 clippy::style
4373 )]
4374 const _: () = {
4375 use alloy::sol_types as alloy_sol_types;
4376 #[automatically_derived]
4377 impl alloy_sol_types::SolEvent for Upgrade {
4378 type DataTuple<'a> = (alloy::sol_types::sol_data::Address,);
4379 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4380 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
4381 const SIGNATURE: &'static str = "Upgrade(address)";
4382 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
4383 alloy_sol_types::private::B256::new([
4384 247u8, 135u8, 33u8, 34u8, 110u8, 254u8, 154u8, 27u8, 182u8, 120u8, 24u8, 154u8,
4385 22u8, 209u8, 85u8, 73u8, 40u8, 185u8, 242u8, 25u8, 46u8, 44u8, 185u8, 62u8,
4386 237u8, 168u8, 59u8, 121u8, 250u8, 64u8, 0u8, 125u8,
4387 ]);
4388 const ANONYMOUS: bool = false;
4389 #[allow(unused_variables)]
4390 #[inline]
4391 fn new(
4392 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
4393 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
4394 ) -> Self {
4395 Self {
4396 implementation: data.0,
4397 }
4398 }
4399 #[inline]
4400 fn check_signature(
4401 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
4402 ) -> alloy_sol_types::Result<()> {
4403 if topics.0 != Self::SIGNATURE_HASH {
4404 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
4405 Self::SIGNATURE,
4406 topics.0,
4407 Self::SIGNATURE_HASH,
4408 ));
4409 }
4410 Ok(())
4411 }
4412 #[inline]
4413 fn tokenize_body(&self) -> Self::DataToken<'_> {
4414 (
4415 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
4416 &self.implementation,
4417 ),
4418 )
4419 }
4420 #[inline]
4421 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
4422 (Self::SIGNATURE_HASH.into(),)
4423 }
4424 #[inline]
4425 fn encode_topics_raw(
4426 &self,
4427 out: &mut [alloy_sol_types::abi::token::WordToken],
4428 ) -> alloy_sol_types::Result<()> {
4429 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
4430 return Err(alloy_sol_types::Error::Overrun);
4431 }
4432 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
4433 Ok(())
4434 }
4435 }
4436 #[automatically_derived]
4437 impl alloy_sol_types::private::IntoLogData for Upgrade {
4438 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
4439 From::from(self)
4440 }
4441 fn into_log_data(self) -> alloy_sol_types::private::LogData {
4442 From::from(&self)
4443 }
4444 }
4445 #[automatically_derived]
4446 impl From<&Upgrade> for alloy_sol_types::private::LogData {
4447 #[inline]
4448 fn from(this: &Upgrade) -> alloy_sol_types::private::LogData {
4449 alloy_sol_types::SolEvent::encode_log_data(this)
4450 }
4451 }
4452 };
4453 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4454 #[allow(
4459 non_camel_case_types,
4460 non_snake_case,
4461 clippy::pub_underscore_fields,
4462 clippy::style
4463 )]
4464 #[derive(Clone)]
4465 pub struct Upgraded {
4466 #[allow(missing_docs)]
4467 pub implementation: alloy::sol_types::private::Address,
4468 }
4469 #[allow(
4470 non_camel_case_types,
4471 non_snake_case,
4472 clippy::pub_underscore_fields,
4473 clippy::style
4474 )]
4475 const _: () = {
4476 use alloy::sol_types as alloy_sol_types;
4477 #[automatically_derived]
4478 impl alloy_sol_types::SolEvent for Upgraded {
4479 type DataTuple<'a> = ();
4480 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4481 type TopicList = (
4482 alloy_sol_types::sol_data::FixedBytes<32>,
4483 alloy::sol_types::sol_data::Address,
4484 );
4485 const SIGNATURE: &'static str = "Upgraded(address)";
4486 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
4487 alloy_sol_types::private::B256::new([
4488 188u8, 124u8, 215u8, 90u8, 32u8, 238u8, 39u8, 253u8, 154u8, 222u8, 186u8,
4489 179u8, 32u8, 65u8, 247u8, 85u8, 33u8, 77u8, 188u8, 107u8, 255u8, 169u8, 12u8,
4490 192u8, 34u8, 91u8, 57u8, 218u8, 46u8, 92u8, 45u8, 59u8,
4491 ]);
4492 const ANONYMOUS: bool = false;
4493 #[allow(unused_variables)]
4494 #[inline]
4495 fn new(
4496 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
4497 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
4498 ) -> Self {
4499 Self {
4500 implementation: topics.1,
4501 }
4502 }
4503 #[inline]
4504 fn check_signature(
4505 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
4506 ) -> alloy_sol_types::Result<()> {
4507 if topics.0 != Self::SIGNATURE_HASH {
4508 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
4509 Self::SIGNATURE,
4510 topics.0,
4511 Self::SIGNATURE_HASH,
4512 ));
4513 }
4514 Ok(())
4515 }
4516 #[inline]
4517 fn tokenize_body(&self) -> Self::DataToken<'_> {
4518 ()
4519 }
4520 #[inline]
4521 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
4522 (Self::SIGNATURE_HASH.into(), self.implementation.clone())
4523 }
4524 #[inline]
4525 fn encode_topics_raw(
4526 &self,
4527 out: &mut [alloy_sol_types::abi::token::WordToken],
4528 ) -> alloy_sol_types::Result<()> {
4529 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
4530 return Err(alloy_sol_types::Error::Overrun);
4531 }
4532 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
4533 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
4534 &self.implementation,
4535 );
4536 Ok(())
4537 }
4538 }
4539 #[automatically_derived]
4540 impl alloy_sol_types::private::IntoLogData for Upgraded {
4541 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
4542 From::from(self)
4543 }
4544 fn into_log_data(self) -> alloy_sol_types::private::LogData {
4545 From::from(&self)
4546 }
4547 }
4548 #[automatically_derived]
4549 impl From<&Upgraded> for alloy_sol_types::private::LogData {
4550 #[inline]
4551 fn from(this: &Upgraded) -> alloy_sol_types::private::LogData {
4552 alloy_sol_types::SolEvent::encode_log_data(this)
4553 }
4554 }
4555 };
4556 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4557 #[allow(
4562 non_camel_case_types,
4563 non_snake_case,
4564 clippy::pub_underscore_fields,
4565 clippy::style
4566 )]
4567 #[derive(Clone)]
4568 pub struct ValidatorExit {
4569 #[allow(missing_docs)]
4570 pub validator: alloy::sol_types::private::Address,
4571 }
4572 #[allow(
4573 non_camel_case_types,
4574 non_snake_case,
4575 clippy::pub_underscore_fields,
4576 clippy::style
4577 )]
4578 const _: () = {
4579 use alloy::sol_types as alloy_sol_types;
4580 #[automatically_derived]
4581 impl alloy_sol_types::SolEvent for ValidatorExit {
4582 type DataTuple<'a> = ();
4583 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4584 type TopicList = (
4585 alloy_sol_types::sol_data::FixedBytes<32>,
4586 alloy::sol_types::sol_data::Address,
4587 );
4588 const SIGNATURE: &'static str = "ValidatorExit(address)";
4589 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
4590 alloy_sol_types::private::B256::new([
4591 251u8, 36u8, 48u8, 83u8, 84u8, 200u8, 119u8, 98u8, 213u8, 87u8, 72u8, 122u8,
4592 228u8, 165u8, 100u8, 232u8, 208u8, 62u8, 203u8, 185u8, 169u8, 125u8, 216u8,
4593 175u8, 255u8, 142u8, 31u8, 111u8, 202u8, 240u8, 221u8, 22u8,
4594 ]);
4595 const ANONYMOUS: bool = false;
4596 #[allow(unused_variables)]
4597 #[inline]
4598 fn new(
4599 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
4600 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
4601 ) -> Self {
4602 Self {
4603 validator: topics.1,
4604 }
4605 }
4606 #[inline]
4607 fn check_signature(
4608 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
4609 ) -> alloy_sol_types::Result<()> {
4610 if topics.0 != Self::SIGNATURE_HASH {
4611 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
4612 Self::SIGNATURE,
4613 topics.0,
4614 Self::SIGNATURE_HASH,
4615 ));
4616 }
4617 Ok(())
4618 }
4619 #[inline]
4620 fn tokenize_body(&self) -> Self::DataToken<'_> {
4621 ()
4622 }
4623 #[inline]
4624 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
4625 (Self::SIGNATURE_HASH.into(), self.validator.clone())
4626 }
4627 #[inline]
4628 fn encode_topics_raw(
4629 &self,
4630 out: &mut [alloy_sol_types::abi::token::WordToken],
4631 ) -> alloy_sol_types::Result<()> {
4632 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
4633 return Err(alloy_sol_types::Error::Overrun);
4634 }
4635 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
4636 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
4637 &self.validator,
4638 );
4639 Ok(())
4640 }
4641 }
4642 #[automatically_derived]
4643 impl alloy_sol_types::private::IntoLogData for ValidatorExit {
4644 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
4645 From::from(self)
4646 }
4647 fn into_log_data(self) -> alloy_sol_types::private::LogData {
4648 From::from(&self)
4649 }
4650 }
4651 #[automatically_derived]
4652 impl From<&ValidatorExit> for alloy_sol_types::private::LogData {
4653 #[inline]
4654 fn from(this: &ValidatorExit) -> alloy_sol_types::private::LogData {
4655 alloy_sol_types::SolEvent::encode_log_data(this)
4656 }
4657 }
4658 };
4659 #[derive()]
4660 #[allow(
4665 non_camel_case_types,
4666 non_snake_case,
4667 clippy::pub_underscore_fields,
4668 clippy::style
4669 )]
4670 #[derive(Clone)]
4671 pub struct ValidatorRegistered {
4672 #[allow(missing_docs)]
4673 pub account: alloy::sol_types::private::Address,
4674 #[allow(missing_docs)]
4675 pub blsVk: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
4676 #[allow(missing_docs)]
4677 pub schnorrVk: <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
4678 #[allow(missing_docs)]
4679 pub commission: u16,
4680 }
4681 #[allow(
4682 non_camel_case_types,
4683 non_snake_case,
4684 clippy::pub_underscore_fields,
4685 clippy::style
4686 )]
4687 const _: () = {
4688 use alloy::sol_types as alloy_sol_types;
4689 #[automatically_derived]
4690 impl alloy_sol_types::SolEvent for ValidatorRegistered {
4691 type DataTuple<'a> = (
4692 BN254::G2Point,
4693 EdOnBN254::EdOnBN254Point,
4694 alloy::sol_types::sol_data::Uint<16>,
4695 );
4696 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4697 type TopicList = (
4698 alloy_sol_types::sol_data::FixedBytes<32>,
4699 alloy::sol_types::sol_data::Address,
4700 );
4701 const SIGNATURE: &'static str = "ValidatorRegistered(address,(uint256,uint256,uint256,uint256),(uint256,uint256),uint16)";
4702 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
4703 alloy_sol_types::private::B256::new([
4704 246u8, 232u8, 53u8, 156u8, 87u8, 82u8, 11u8, 70u8, 150u8, 52u8, 115u8, 107u8,
4705 252u8, 59u8, 183u8, 236u8, 92u8, 189u8, 26u8, 11u8, 210u8, 139u8, 16u8, 168u8,
4706 39u8, 87u8, 147u8, 187u8, 115u8, 11u8, 121u8, 127u8,
4707 ]);
4708 const ANONYMOUS: bool = false;
4709 #[allow(unused_variables)]
4710 #[inline]
4711 fn new(
4712 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
4713 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
4714 ) -> Self {
4715 Self {
4716 account: topics.1,
4717 blsVk: data.0,
4718 schnorrVk: data.1,
4719 commission: data.2,
4720 }
4721 }
4722 #[inline]
4723 fn check_signature(
4724 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
4725 ) -> alloy_sol_types::Result<()> {
4726 if topics.0 != Self::SIGNATURE_HASH {
4727 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
4728 Self::SIGNATURE,
4729 topics.0,
4730 Self::SIGNATURE_HASH,
4731 ));
4732 }
4733 Ok(())
4734 }
4735 #[inline]
4736 fn tokenize_body(&self) -> Self::DataToken<'_> {
4737 (
4738 <BN254::G2Point as alloy_sol_types::SolType>::tokenize(&self.blsVk),
4739 <EdOnBN254::EdOnBN254Point as alloy_sol_types::SolType>::tokenize(
4740 &self.schnorrVk,
4741 ),
4742 <alloy::sol_types::sol_data::Uint<16> as alloy_sol_types::SolType>::tokenize(
4743 &self.commission,
4744 ),
4745 )
4746 }
4747 #[inline]
4748 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
4749 (Self::SIGNATURE_HASH.into(), self.account.clone())
4750 }
4751 #[inline]
4752 fn encode_topics_raw(
4753 &self,
4754 out: &mut [alloy_sol_types::abi::token::WordToken],
4755 ) -> alloy_sol_types::Result<()> {
4756 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
4757 return Err(alloy_sol_types::Error::Overrun);
4758 }
4759 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
4760 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
4761 &self.account,
4762 );
4763 Ok(())
4764 }
4765 }
4766 #[automatically_derived]
4767 impl alloy_sol_types::private::IntoLogData for ValidatorRegistered {
4768 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
4769 From::from(self)
4770 }
4771 fn into_log_data(self) -> alloy_sol_types::private::LogData {
4772 From::from(&self)
4773 }
4774 }
4775 #[automatically_derived]
4776 impl From<&ValidatorRegistered> for alloy_sol_types::private::LogData {
4777 #[inline]
4778 fn from(this: &ValidatorRegistered) -> alloy_sol_types::private::LogData {
4779 alloy_sol_types::SolEvent::encode_log_data(this)
4780 }
4781 }
4782 };
4783 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4784 #[allow(
4789 non_camel_case_types,
4790 non_snake_case,
4791 clippy::pub_underscore_fields,
4792 clippy::style
4793 )]
4794 #[derive(Clone)]
4795 pub struct Withdrawal {
4796 #[allow(missing_docs)]
4797 pub account: alloy::sol_types::private::Address,
4798 #[allow(missing_docs)]
4799 pub amount: alloy::sol_types::private::primitives::aliases::U256,
4800 }
4801 #[allow(
4802 non_camel_case_types,
4803 non_snake_case,
4804 clippy::pub_underscore_fields,
4805 clippy::style
4806 )]
4807 const _: () = {
4808 use alloy::sol_types as alloy_sol_types;
4809 #[automatically_derived]
4810 impl alloy_sol_types::SolEvent for Withdrawal {
4811 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
4812 type DataToken<'a> = <Self::DataTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
4813 type TopicList = (
4814 alloy_sol_types::sol_data::FixedBytes<32>,
4815 alloy::sol_types::sol_data::Address,
4816 );
4817 const SIGNATURE: &'static str = "Withdrawal(address,uint256)";
4818 const SIGNATURE_HASH: alloy_sol_types::private::B256 =
4819 alloy_sol_types::private::B256::new([
4820 127u8, 207u8, 83u8, 44u8, 21u8, 240u8, 166u8, 219u8, 11u8, 214u8, 208u8, 224u8,
4821 56u8, 190u8, 167u8, 29u8, 48u8, 216u8, 8u8, 199u8, 217u8, 140u8, 179u8, 191u8,
4822 114u8, 104u8, 169u8, 91u8, 245u8, 8u8, 27u8, 101u8,
4823 ]);
4824 const ANONYMOUS: bool = false;
4825 #[allow(unused_variables)]
4826 #[inline]
4827 fn new(
4828 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
4829 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
4830 ) -> Self {
4831 Self {
4832 account: topics.1,
4833 amount: data.0,
4834 }
4835 }
4836 #[inline]
4837 fn check_signature(
4838 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
4839 ) -> alloy_sol_types::Result<()> {
4840 if topics.0 != Self::SIGNATURE_HASH {
4841 return Err(alloy_sol_types::Error::invalid_event_signature_hash(
4842 Self::SIGNATURE,
4843 topics.0,
4844 Self::SIGNATURE_HASH,
4845 ));
4846 }
4847 Ok(())
4848 }
4849 #[inline]
4850 fn tokenize_body(&self) -> Self::DataToken<'_> {
4851 (
4852 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
4853 &self.amount,
4854 ),
4855 )
4856 }
4857 #[inline]
4858 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
4859 (Self::SIGNATURE_HASH.into(), self.account.clone())
4860 }
4861 #[inline]
4862 fn encode_topics_raw(
4863 &self,
4864 out: &mut [alloy_sol_types::abi::token::WordToken],
4865 ) -> alloy_sol_types::Result<()> {
4866 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
4867 return Err(alloy_sol_types::Error::Overrun);
4868 }
4869 out[0usize] = alloy_sol_types::abi::token::WordToken(Self::SIGNATURE_HASH);
4870 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
4871 &self.account,
4872 );
4873 Ok(())
4874 }
4875 }
4876 #[automatically_derived]
4877 impl alloy_sol_types::private::IntoLogData for Withdrawal {
4878 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
4879 From::from(self)
4880 }
4881 fn into_log_data(self) -> alloy_sol_types::private::LogData {
4882 From::from(&self)
4883 }
4884 }
4885 #[automatically_derived]
4886 impl From<&Withdrawal> for alloy_sol_types::private::LogData {
4887 #[inline]
4888 fn from(this: &Withdrawal) -> alloy_sol_types::private::LogData {
4889 alloy_sol_types::SolEvent::encode_log_data(this)
4890 }
4891 }
4892 };
4893 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4898 #[derive(Clone)]
4899 pub struct constructorCall {}
4900 const _: () = {
4901 use alloy::sol_types as alloy_sol_types;
4902 {
4903 #[doc(hidden)]
4904 type UnderlyingSolTuple<'a> = ();
4905 #[doc(hidden)]
4906 type UnderlyingRustTuple<'a> = ();
4907 #[cfg(test)]
4908 #[allow(dead_code, unreachable_patterns)]
4909 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4910 match _t {
4911 alloy_sol_types::private::AssertTypeEq::<
4912 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4913 >(_) => {},
4914 }
4915 }
4916 #[automatically_derived]
4917 #[doc(hidden)]
4918 impl ::core::convert::From<constructorCall> for UnderlyingRustTuple<'_> {
4919 fn from(value: constructorCall) -> Self {
4920 ()
4921 }
4922 }
4923 #[automatically_derived]
4924 #[doc(hidden)]
4925 impl ::core::convert::From<UnderlyingRustTuple<'_>> for constructorCall {
4926 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4927 Self {}
4928 }
4929 }
4930 }
4931 #[automatically_derived]
4932 impl alloy_sol_types::SolConstructor for constructorCall {
4933 type Parameters<'a> = ();
4934 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
4935 #[inline]
4936 fn new<'a>(
4937 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4938 ) -> Self {
4939 tuple.into()
4940 }
4941 #[inline]
4942 fn tokenize(&self) -> Self::Token<'_> {
4943 ()
4944 }
4945 }
4946 };
4947 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4948 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4953 #[derive(Clone)]
4954 pub struct UPGRADE_INTERFACE_VERSIONCall {}
4955 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4956 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4958 #[derive(Clone)]
4959 pub struct UPGRADE_INTERFACE_VERSIONReturn {
4960 #[allow(missing_docs)]
4961 pub _0: alloy::sol_types::private::String,
4962 }
4963 #[allow(
4964 non_camel_case_types,
4965 non_snake_case,
4966 clippy::pub_underscore_fields,
4967 clippy::style
4968 )]
4969 const _: () = {
4970 use alloy::sol_types as alloy_sol_types;
4971 {
4972 #[doc(hidden)]
4973 type UnderlyingSolTuple<'a> = ();
4974 #[doc(hidden)]
4975 type UnderlyingRustTuple<'a> = ();
4976 #[cfg(test)]
4977 #[allow(dead_code, unreachable_patterns)]
4978 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
4979 match _t {
4980 alloy_sol_types::private::AssertTypeEq::<
4981 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4982 >(_) => {},
4983 }
4984 }
4985 #[automatically_derived]
4986 #[doc(hidden)]
4987 impl ::core::convert::From<UPGRADE_INTERFACE_VERSIONCall> for UnderlyingRustTuple<'_> {
4988 fn from(value: UPGRADE_INTERFACE_VERSIONCall) -> Self {
4989 ()
4990 }
4991 }
4992 #[automatically_derived]
4993 #[doc(hidden)]
4994 impl ::core::convert::From<UnderlyingRustTuple<'_>> for UPGRADE_INTERFACE_VERSIONCall {
4995 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4996 Self {}
4997 }
4998 }
4999 }
5000 {
5001 #[doc(hidden)]
5002 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,);
5003 #[doc(hidden)]
5004 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,);
5005 #[cfg(test)]
5006 #[allow(dead_code, unreachable_patterns)]
5007 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5008 match _t {
5009 alloy_sol_types::private::AssertTypeEq::<
5010 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5011 >(_) => {},
5012 }
5013 }
5014 #[automatically_derived]
5015 #[doc(hidden)]
5016 impl ::core::convert::From<UPGRADE_INTERFACE_VERSIONReturn> for UnderlyingRustTuple<'_> {
5017 fn from(value: UPGRADE_INTERFACE_VERSIONReturn) -> Self {
5018 (value._0,)
5019 }
5020 }
5021 #[automatically_derived]
5022 #[doc(hidden)]
5023 impl ::core::convert::From<UnderlyingRustTuple<'_>> for UPGRADE_INTERFACE_VERSIONReturn {
5024 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5025 Self { _0: tuple.0 }
5026 }
5027 }
5028 }
5029 #[automatically_derived]
5030 impl alloy_sol_types::SolCall for UPGRADE_INTERFACE_VERSIONCall {
5031 type Parameters<'a> = ();
5032 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5033 type Return = UPGRADE_INTERFACE_VERSIONReturn;
5034 type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,);
5035 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5036 const SIGNATURE: &'static str = "UPGRADE_INTERFACE_VERSION()";
5037 const SELECTOR: [u8; 4] = [173u8, 60u8, 177u8, 204u8];
5038 #[inline]
5039 fn new<'a>(
5040 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5041 ) -> Self {
5042 tuple.into()
5043 }
5044 #[inline]
5045 fn tokenize(&self) -> Self::Token<'_> {
5046 ()
5047 }
5048 #[inline]
5049 fn abi_decode_returns(
5050 data: &[u8],
5051 validate: bool,
5052 ) -> alloy_sol_types::Result<Self::Return> {
5053 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
5054 data, validate,
5055 )
5056 .map(Into::into)
5057 }
5058 }
5059 };
5060 #[derive()]
5061 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5066 #[derive(Clone)]
5067 pub struct _hashBlsKeyCall {
5068 #[allow(missing_docs)]
5069 pub blsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
5070 }
5071 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5072 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5074 #[derive(Clone)]
5075 pub struct _hashBlsKeyReturn {
5076 #[allow(missing_docs)]
5077 pub _0: alloy::sol_types::private::FixedBytes<32>,
5078 }
5079 #[allow(
5080 non_camel_case_types,
5081 non_snake_case,
5082 clippy::pub_underscore_fields,
5083 clippy::style
5084 )]
5085 const _: () = {
5086 use alloy::sol_types as alloy_sol_types;
5087 {
5088 #[doc(hidden)]
5089 type UnderlyingSolTuple<'a> = (BN254::G2Point,);
5090 #[doc(hidden)]
5091 type UnderlyingRustTuple<'a> =
5092 (<BN254::G2Point as alloy::sol_types::SolType>::RustType,);
5093 #[cfg(test)]
5094 #[allow(dead_code, unreachable_patterns)]
5095 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5096 match _t {
5097 alloy_sol_types::private::AssertTypeEq::<
5098 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5099 >(_) => {},
5100 }
5101 }
5102 #[automatically_derived]
5103 #[doc(hidden)]
5104 impl ::core::convert::From<_hashBlsKeyCall> for UnderlyingRustTuple<'_> {
5105 fn from(value: _hashBlsKeyCall) -> Self {
5106 (value.blsVK,)
5107 }
5108 }
5109 #[automatically_derived]
5110 #[doc(hidden)]
5111 impl ::core::convert::From<UnderlyingRustTuple<'_>> for _hashBlsKeyCall {
5112 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5113 Self { blsVK: tuple.0 }
5114 }
5115 }
5116 }
5117 {
5118 #[doc(hidden)]
5119 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
5120 #[doc(hidden)]
5121 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
5122 #[cfg(test)]
5123 #[allow(dead_code, unreachable_patterns)]
5124 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5125 match _t {
5126 alloy_sol_types::private::AssertTypeEq::<
5127 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5128 >(_) => {},
5129 }
5130 }
5131 #[automatically_derived]
5132 #[doc(hidden)]
5133 impl ::core::convert::From<_hashBlsKeyReturn> for UnderlyingRustTuple<'_> {
5134 fn from(value: _hashBlsKeyReturn) -> Self {
5135 (value._0,)
5136 }
5137 }
5138 #[automatically_derived]
5139 #[doc(hidden)]
5140 impl ::core::convert::From<UnderlyingRustTuple<'_>> for _hashBlsKeyReturn {
5141 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5142 Self { _0: tuple.0 }
5143 }
5144 }
5145 }
5146 #[automatically_derived]
5147 impl alloy_sol_types::SolCall for _hashBlsKeyCall {
5148 type Parameters<'a> = (BN254::G2Point,);
5149 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5150 type Return = _hashBlsKeyReturn;
5151 type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
5152 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5153 const SIGNATURE: &'static str = "_hashBlsKey((uint256,uint256,uint256,uint256))";
5154 const SELECTOR: [u8; 4] = [155u8, 48u8, 165u8, 230u8];
5155 #[inline]
5156 fn new<'a>(
5157 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5158 ) -> Self {
5159 tuple.into()
5160 }
5161 #[inline]
5162 fn tokenize(&self) -> Self::Token<'_> {
5163 (<BN254::G2Point as alloy_sol_types::SolType>::tokenize(
5164 &self.blsVK,
5165 ),)
5166 }
5167 #[inline]
5168 fn abi_decode_returns(
5169 data: &[u8],
5170 validate: bool,
5171 ) -> alloy_sol_types::Result<Self::Return> {
5172 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
5173 data, validate,
5174 )
5175 .map(Into::into)
5176 }
5177 }
5178 };
5179 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5180 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5185 #[derive(Clone)]
5186 pub struct blsKeysCall {
5187 #[allow(missing_docs)]
5188 pub blsKeyHash: alloy::sol_types::private::FixedBytes<32>,
5189 }
5190 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5191 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5193 #[derive(Clone)]
5194 pub struct blsKeysReturn {
5195 #[allow(missing_docs)]
5196 pub used: bool,
5197 }
5198 #[allow(
5199 non_camel_case_types,
5200 non_snake_case,
5201 clippy::pub_underscore_fields,
5202 clippy::style
5203 )]
5204 const _: () = {
5205 use alloy::sol_types as alloy_sol_types;
5206 {
5207 #[doc(hidden)]
5208 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
5209 #[doc(hidden)]
5210 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
5211 #[cfg(test)]
5212 #[allow(dead_code, unreachable_patterns)]
5213 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5214 match _t {
5215 alloy_sol_types::private::AssertTypeEq::<
5216 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5217 >(_) => {},
5218 }
5219 }
5220 #[automatically_derived]
5221 #[doc(hidden)]
5222 impl ::core::convert::From<blsKeysCall> for UnderlyingRustTuple<'_> {
5223 fn from(value: blsKeysCall) -> Self {
5224 (value.blsKeyHash,)
5225 }
5226 }
5227 #[automatically_derived]
5228 #[doc(hidden)]
5229 impl ::core::convert::From<UnderlyingRustTuple<'_>> for blsKeysCall {
5230 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5231 Self {
5232 blsKeyHash: tuple.0,
5233 }
5234 }
5235 }
5236 }
5237 {
5238 #[doc(hidden)]
5239 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
5240 #[doc(hidden)]
5241 type UnderlyingRustTuple<'a> = (bool,);
5242 #[cfg(test)]
5243 #[allow(dead_code, unreachable_patterns)]
5244 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5245 match _t {
5246 alloy_sol_types::private::AssertTypeEq::<
5247 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5248 >(_) => {},
5249 }
5250 }
5251 #[automatically_derived]
5252 #[doc(hidden)]
5253 impl ::core::convert::From<blsKeysReturn> for UnderlyingRustTuple<'_> {
5254 fn from(value: blsKeysReturn) -> Self {
5255 (value.used,)
5256 }
5257 }
5258 #[automatically_derived]
5259 #[doc(hidden)]
5260 impl ::core::convert::From<UnderlyingRustTuple<'_>> for blsKeysReturn {
5261 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5262 Self { used: tuple.0 }
5263 }
5264 }
5265 }
5266 #[automatically_derived]
5267 impl alloy_sol_types::SolCall for blsKeysCall {
5268 type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
5269 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5270 type Return = blsKeysReturn;
5271 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
5272 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5273 const SIGNATURE: &'static str = "blsKeys(bytes32)";
5274 const SELECTOR: [u8; 4] = [179u8, 230u8, 235u8, 213u8];
5275 #[inline]
5276 fn new<'a>(
5277 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5278 ) -> Self {
5279 tuple.into()
5280 }
5281 #[inline]
5282 fn tokenize(&self) -> Self::Token<'_> {
5283 (
5284 <alloy::sol_types::sol_data::FixedBytes<
5285 32,
5286 > as alloy_sol_types::SolType>::tokenize(&self.blsKeyHash),
5287 )
5288 }
5289 #[inline]
5290 fn abi_decode_returns(
5291 data: &[u8],
5292 validate: bool,
5293 ) -> alloy_sol_types::Result<Self::Return> {
5294 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
5295 data, validate,
5296 )
5297 .map(Into::into)
5298 }
5299 }
5300 };
5301 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5302 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5307 #[derive(Clone)]
5308 pub struct claimValidatorExitCall {
5309 #[allow(missing_docs)]
5310 pub validator: alloy::sol_types::private::Address,
5311 }
5312 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5314 #[derive(Clone)]
5315 pub struct claimValidatorExitReturn {}
5316 #[allow(
5317 non_camel_case_types,
5318 non_snake_case,
5319 clippy::pub_underscore_fields,
5320 clippy::style
5321 )]
5322 const _: () = {
5323 use alloy::sol_types as alloy_sol_types;
5324 {
5325 #[doc(hidden)]
5326 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
5327 #[doc(hidden)]
5328 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
5329 #[cfg(test)]
5330 #[allow(dead_code, unreachable_patterns)]
5331 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5332 match _t {
5333 alloy_sol_types::private::AssertTypeEq::<
5334 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5335 >(_) => {},
5336 }
5337 }
5338 #[automatically_derived]
5339 #[doc(hidden)]
5340 impl ::core::convert::From<claimValidatorExitCall> for UnderlyingRustTuple<'_> {
5341 fn from(value: claimValidatorExitCall) -> Self {
5342 (value.validator,)
5343 }
5344 }
5345 #[automatically_derived]
5346 #[doc(hidden)]
5347 impl ::core::convert::From<UnderlyingRustTuple<'_>> for claimValidatorExitCall {
5348 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5349 Self { validator: tuple.0 }
5350 }
5351 }
5352 }
5353 {
5354 #[doc(hidden)]
5355 type UnderlyingSolTuple<'a> = ();
5356 #[doc(hidden)]
5357 type UnderlyingRustTuple<'a> = ();
5358 #[cfg(test)]
5359 #[allow(dead_code, unreachable_patterns)]
5360 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5361 match _t {
5362 alloy_sol_types::private::AssertTypeEq::<
5363 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5364 >(_) => {},
5365 }
5366 }
5367 #[automatically_derived]
5368 #[doc(hidden)]
5369 impl ::core::convert::From<claimValidatorExitReturn> for UnderlyingRustTuple<'_> {
5370 fn from(value: claimValidatorExitReturn) -> Self {
5371 ()
5372 }
5373 }
5374 #[automatically_derived]
5375 #[doc(hidden)]
5376 impl ::core::convert::From<UnderlyingRustTuple<'_>> for claimValidatorExitReturn {
5377 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5378 Self {}
5379 }
5380 }
5381 }
5382 #[automatically_derived]
5383 impl alloy_sol_types::SolCall for claimValidatorExitCall {
5384 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
5385 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5386 type Return = claimValidatorExitReturn;
5387 type ReturnTuple<'a> = ();
5388 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5389 const SIGNATURE: &'static str = "claimValidatorExit(address)";
5390 const SELECTOR: [u8; 4] = [33u8, 64u8, 254u8, 205u8];
5391 #[inline]
5392 fn new<'a>(
5393 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5394 ) -> Self {
5395 tuple.into()
5396 }
5397 #[inline]
5398 fn tokenize(&self) -> Self::Token<'_> {
5399 (
5400 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5401 &self.validator,
5402 ),
5403 )
5404 }
5405 #[inline]
5406 fn abi_decode_returns(
5407 data: &[u8],
5408 validate: bool,
5409 ) -> alloy_sol_types::Result<Self::Return> {
5410 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
5411 data, validate,
5412 )
5413 .map(Into::into)
5414 }
5415 }
5416 };
5417 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5418 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5423 #[derive(Clone)]
5424 pub struct claimWithdrawalCall {
5425 #[allow(missing_docs)]
5426 pub validator: alloy::sol_types::private::Address,
5427 }
5428 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5430 #[derive(Clone)]
5431 pub struct claimWithdrawalReturn {}
5432 #[allow(
5433 non_camel_case_types,
5434 non_snake_case,
5435 clippy::pub_underscore_fields,
5436 clippy::style
5437 )]
5438 const _: () = {
5439 use alloy::sol_types as alloy_sol_types;
5440 {
5441 #[doc(hidden)]
5442 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
5443 #[doc(hidden)]
5444 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
5445 #[cfg(test)]
5446 #[allow(dead_code, unreachable_patterns)]
5447 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5448 match _t {
5449 alloy_sol_types::private::AssertTypeEq::<
5450 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5451 >(_) => {},
5452 }
5453 }
5454 #[automatically_derived]
5455 #[doc(hidden)]
5456 impl ::core::convert::From<claimWithdrawalCall> for UnderlyingRustTuple<'_> {
5457 fn from(value: claimWithdrawalCall) -> Self {
5458 (value.validator,)
5459 }
5460 }
5461 #[automatically_derived]
5462 #[doc(hidden)]
5463 impl ::core::convert::From<UnderlyingRustTuple<'_>> for claimWithdrawalCall {
5464 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5465 Self { validator: tuple.0 }
5466 }
5467 }
5468 }
5469 {
5470 #[doc(hidden)]
5471 type UnderlyingSolTuple<'a> = ();
5472 #[doc(hidden)]
5473 type UnderlyingRustTuple<'a> = ();
5474 #[cfg(test)]
5475 #[allow(dead_code, unreachable_patterns)]
5476 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5477 match _t {
5478 alloy_sol_types::private::AssertTypeEq::<
5479 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5480 >(_) => {},
5481 }
5482 }
5483 #[automatically_derived]
5484 #[doc(hidden)]
5485 impl ::core::convert::From<claimWithdrawalReturn> for UnderlyingRustTuple<'_> {
5486 fn from(value: claimWithdrawalReturn) -> Self {
5487 ()
5488 }
5489 }
5490 #[automatically_derived]
5491 #[doc(hidden)]
5492 impl ::core::convert::From<UnderlyingRustTuple<'_>> for claimWithdrawalReturn {
5493 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5494 Self {}
5495 }
5496 }
5497 }
5498 #[automatically_derived]
5499 impl alloy_sol_types::SolCall for claimWithdrawalCall {
5500 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
5501 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5502 type Return = claimWithdrawalReturn;
5503 type ReturnTuple<'a> = ();
5504 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5505 const SIGNATURE: &'static str = "claimWithdrawal(address)";
5506 const SELECTOR: [u8; 4] = [163u8, 6u8, 106u8, 171u8];
5507 #[inline]
5508 fn new<'a>(
5509 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5510 ) -> Self {
5511 tuple.into()
5512 }
5513 #[inline]
5514 fn tokenize(&self) -> Self::Token<'_> {
5515 (
5516 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5517 &self.validator,
5518 ),
5519 )
5520 }
5521 #[inline]
5522 fn abi_decode_returns(
5523 data: &[u8],
5524 validate: bool,
5525 ) -> alloy_sol_types::Result<Self::Return> {
5526 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
5527 data, validate,
5528 )
5529 .map(Into::into)
5530 }
5531 }
5532 };
5533 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5534 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5539 #[derive(Clone)]
5540 pub struct delegateCall {
5541 #[allow(missing_docs)]
5542 pub validator: alloy::sol_types::private::Address,
5543 #[allow(missing_docs)]
5544 pub amount: alloy::sol_types::private::primitives::aliases::U256,
5545 }
5546 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5548 #[derive(Clone)]
5549 pub struct delegateReturn {}
5550 #[allow(
5551 non_camel_case_types,
5552 non_snake_case,
5553 clippy::pub_underscore_fields,
5554 clippy::style
5555 )]
5556 const _: () = {
5557 use alloy::sol_types as alloy_sol_types;
5558 {
5559 #[doc(hidden)]
5560 type UnderlyingSolTuple<'a> = (
5561 alloy::sol_types::sol_data::Address,
5562 alloy::sol_types::sol_data::Uint<256>,
5563 );
5564 #[doc(hidden)]
5565 type UnderlyingRustTuple<'a> = (
5566 alloy::sol_types::private::Address,
5567 alloy::sol_types::private::primitives::aliases::U256,
5568 );
5569 #[cfg(test)]
5570 #[allow(dead_code, unreachable_patterns)]
5571 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5572 match _t {
5573 alloy_sol_types::private::AssertTypeEq::<
5574 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5575 >(_) => {},
5576 }
5577 }
5578 #[automatically_derived]
5579 #[doc(hidden)]
5580 impl ::core::convert::From<delegateCall> for UnderlyingRustTuple<'_> {
5581 fn from(value: delegateCall) -> Self {
5582 (value.validator, value.amount)
5583 }
5584 }
5585 #[automatically_derived]
5586 #[doc(hidden)]
5587 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegateCall {
5588 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5589 Self {
5590 validator: tuple.0,
5591 amount: tuple.1,
5592 }
5593 }
5594 }
5595 }
5596 {
5597 #[doc(hidden)]
5598 type UnderlyingSolTuple<'a> = ();
5599 #[doc(hidden)]
5600 type UnderlyingRustTuple<'a> = ();
5601 #[cfg(test)]
5602 #[allow(dead_code, unreachable_patterns)]
5603 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5604 match _t {
5605 alloy_sol_types::private::AssertTypeEq::<
5606 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5607 >(_) => {},
5608 }
5609 }
5610 #[automatically_derived]
5611 #[doc(hidden)]
5612 impl ::core::convert::From<delegateReturn> for UnderlyingRustTuple<'_> {
5613 fn from(value: delegateReturn) -> Self {
5614 ()
5615 }
5616 }
5617 #[automatically_derived]
5618 #[doc(hidden)]
5619 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegateReturn {
5620 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5621 Self {}
5622 }
5623 }
5624 }
5625 #[automatically_derived]
5626 impl alloy_sol_types::SolCall for delegateCall {
5627 type Parameters<'a> = (
5628 alloy::sol_types::sol_data::Address,
5629 alloy::sol_types::sol_data::Uint<256>,
5630 );
5631 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5632 type Return = delegateReturn;
5633 type ReturnTuple<'a> = ();
5634 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5635 const SIGNATURE: &'static str = "delegate(address,uint256)";
5636 const SELECTOR: [u8; 4] = [2u8, 110u8, 64u8, 43u8];
5637 #[inline]
5638 fn new<'a>(
5639 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5640 ) -> Self {
5641 tuple.into()
5642 }
5643 #[inline]
5644 fn tokenize(&self) -> Self::Token<'_> {
5645 (
5646 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5647 &self.validator,
5648 ),
5649 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
5650 &self.amount,
5651 ),
5652 )
5653 }
5654 #[inline]
5655 fn abi_decode_returns(
5656 data: &[u8],
5657 validate: bool,
5658 ) -> alloy_sol_types::Result<Self::Return> {
5659 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
5660 data, validate,
5661 )
5662 .map(Into::into)
5663 }
5664 }
5665 };
5666 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5667 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5672 #[derive(Clone)]
5673 pub struct delegationsCall {
5674 #[allow(missing_docs)]
5675 pub validator: alloy::sol_types::private::Address,
5676 #[allow(missing_docs)]
5677 pub delegator: alloy::sol_types::private::Address,
5678 }
5679 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5680 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5682 #[derive(Clone)]
5683 pub struct delegationsReturn {
5684 #[allow(missing_docs)]
5685 pub amount: alloy::sol_types::private::primitives::aliases::U256,
5686 }
5687 #[allow(
5688 non_camel_case_types,
5689 non_snake_case,
5690 clippy::pub_underscore_fields,
5691 clippy::style
5692 )]
5693 const _: () = {
5694 use alloy::sol_types as alloy_sol_types;
5695 {
5696 #[doc(hidden)]
5697 type UnderlyingSolTuple<'a> = (
5698 alloy::sol_types::sol_data::Address,
5699 alloy::sol_types::sol_data::Address,
5700 );
5701 #[doc(hidden)]
5702 type UnderlyingRustTuple<'a> = (
5703 alloy::sol_types::private::Address,
5704 alloy::sol_types::private::Address,
5705 );
5706 #[cfg(test)]
5707 #[allow(dead_code, unreachable_patterns)]
5708 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5709 match _t {
5710 alloy_sol_types::private::AssertTypeEq::<
5711 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5712 >(_) => {},
5713 }
5714 }
5715 #[automatically_derived]
5716 #[doc(hidden)]
5717 impl ::core::convert::From<delegationsCall> for UnderlyingRustTuple<'_> {
5718 fn from(value: delegationsCall) -> Self {
5719 (value.validator, value.delegator)
5720 }
5721 }
5722 #[automatically_derived]
5723 #[doc(hidden)]
5724 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegationsCall {
5725 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5726 Self {
5727 validator: tuple.0,
5728 delegator: tuple.1,
5729 }
5730 }
5731 }
5732 }
5733 {
5734 #[doc(hidden)]
5735 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
5736 #[doc(hidden)]
5737 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
5738 #[cfg(test)]
5739 #[allow(dead_code, unreachable_patterns)]
5740 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5741 match _t {
5742 alloy_sol_types::private::AssertTypeEq::<
5743 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5744 >(_) => {},
5745 }
5746 }
5747 #[automatically_derived]
5748 #[doc(hidden)]
5749 impl ::core::convert::From<delegationsReturn> for UnderlyingRustTuple<'_> {
5750 fn from(value: delegationsReturn) -> Self {
5751 (value.amount,)
5752 }
5753 }
5754 #[automatically_derived]
5755 #[doc(hidden)]
5756 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegationsReturn {
5757 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5758 Self { amount: tuple.0 }
5759 }
5760 }
5761 }
5762 #[automatically_derived]
5763 impl alloy_sol_types::SolCall for delegationsCall {
5764 type Parameters<'a> = (
5765 alloy::sol_types::sol_data::Address,
5766 alloy::sol_types::sol_data::Address,
5767 );
5768 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5769 type Return = delegationsReturn;
5770 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
5771 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5772 const SIGNATURE: &'static str = "delegations(address,address)";
5773 const SELECTOR: [u8; 4] = [198u8, 72u8, 20u8, 221u8];
5774 #[inline]
5775 fn new<'a>(
5776 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5777 ) -> Self {
5778 tuple.into()
5779 }
5780 #[inline]
5781 fn tokenize(&self) -> Self::Token<'_> {
5782 (
5783 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5784 &self.validator,
5785 ),
5786 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
5787 &self.delegator,
5788 ),
5789 )
5790 }
5791 #[inline]
5792 fn abi_decode_returns(
5793 data: &[u8],
5794 validate: bool,
5795 ) -> alloy_sol_types::Result<Self::Return> {
5796 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
5797 data, validate,
5798 )
5799 .map(Into::into)
5800 }
5801 }
5802 };
5803 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5804 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5809 #[derive(Clone)]
5810 pub struct deregisterValidatorCall {}
5811 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5813 #[derive(Clone)]
5814 pub struct deregisterValidatorReturn {}
5815 #[allow(
5816 non_camel_case_types,
5817 non_snake_case,
5818 clippy::pub_underscore_fields,
5819 clippy::style
5820 )]
5821 const _: () = {
5822 use alloy::sol_types as alloy_sol_types;
5823 {
5824 #[doc(hidden)]
5825 type UnderlyingSolTuple<'a> = ();
5826 #[doc(hidden)]
5827 type UnderlyingRustTuple<'a> = ();
5828 #[cfg(test)]
5829 #[allow(dead_code, unreachable_patterns)]
5830 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5831 match _t {
5832 alloy_sol_types::private::AssertTypeEq::<
5833 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5834 >(_) => {},
5835 }
5836 }
5837 #[automatically_derived]
5838 #[doc(hidden)]
5839 impl ::core::convert::From<deregisterValidatorCall> for UnderlyingRustTuple<'_> {
5840 fn from(value: deregisterValidatorCall) -> Self {
5841 ()
5842 }
5843 }
5844 #[automatically_derived]
5845 #[doc(hidden)]
5846 impl ::core::convert::From<UnderlyingRustTuple<'_>> for deregisterValidatorCall {
5847 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5848 Self {}
5849 }
5850 }
5851 }
5852 {
5853 #[doc(hidden)]
5854 type UnderlyingSolTuple<'a> = ();
5855 #[doc(hidden)]
5856 type UnderlyingRustTuple<'a> = ();
5857 #[cfg(test)]
5858 #[allow(dead_code, unreachable_patterns)]
5859 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5860 match _t {
5861 alloy_sol_types::private::AssertTypeEq::<
5862 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5863 >(_) => {},
5864 }
5865 }
5866 #[automatically_derived]
5867 #[doc(hidden)]
5868 impl ::core::convert::From<deregisterValidatorReturn> for UnderlyingRustTuple<'_> {
5869 fn from(value: deregisterValidatorReturn) -> Self {
5870 ()
5871 }
5872 }
5873 #[automatically_derived]
5874 #[doc(hidden)]
5875 impl ::core::convert::From<UnderlyingRustTuple<'_>> for deregisterValidatorReturn {
5876 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5877 Self {}
5878 }
5879 }
5880 }
5881 #[automatically_derived]
5882 impl alloy_sol_types::SolCall for deregisterValidatorCall {
5883 type Parameters<'a> = ();
5884 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5885 type Return = deregisterValidatorReturn;
5886 type ReturnTuple<'a> = ();
5887 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
5888 const SIGNATURE: &'static str = "deregisterValidator()";
5889 const SELECTOR: [u8; 4] = [106u8, 145u8, 28u8, 207u8];
5890 #[inline]
5891 fn new<'a>(
5892 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5893 ) -> Self {
5894 tuple.into()
5895 }
5896 #[inline]
5897 fn tokenize(&self) -> Self::Token<'_> {
5898 ()
5899 }
5900 #[inline]
5901 fn abi_decode_returns(
5902 data: &[u8],
5903 validate: bool,
5904 ) -> alloy_sol_types::Result<Self::Return> {
5905 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
5906 data, validate,
5907 )
5908 .map(Into::into)
5909 }
5910 }
5911 };
5912 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5913 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5918 #[derive(Clone)]
5919 pub struct exitEscrowPeriodCall {}
5920 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5921 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5923 #[derive(Clone)]
5924 pub struct exitEscrowPeriodReturn {
5925 #[allow(missing_docs)]
5926 pub _0: alloy::sol_types::private::primitives::aliases::U256,
5927 }
5928 #[allow(
5929 non_camel_case_types,
5930 non_snake_case,
5931 clippy::pub_underscore_fields,
5932 clippy::style
5933 )]
5934 const _: () = {
5935 use alloy::sol_types as alloy_sol_types;
5936 {
5937 #[doc(hidden)]
5938 type UnderlyingSolTuple<'a> = ();
5939 #[doc(hidden)]
5940 type UnderlyingRustTuple<'a> = ();
5941 #[cfg(test)]
5942 #[allow(dead_code, unreachable_patterns)]
5943 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5944 match _t {
5945 alloy_sol_types::private::AssertTypeEq::<
5946 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5947 >(_) => {},
5948 }
5949 }
5950 #[automatically_derived]
5951 #[doc(hidden)]
5952 impl ::core::convert::From<exitEscrowPeriodCall> for UnderlyingRustTuple<'_> {
5953 fn from(value: exitEscrowPeriodCall) -> Self {
5954 ()
5955 }
5956 }
5957 #[automatically_derived]
5958 #[doc(hidden)]
5959 impl ::core::convert::From<UnderlyingRustTuple<'_>> for exitEscrowPeriodCall {
5960 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5961 Self {}
5962 }
5963 }
5964 }
5965 {
5966 #[doc(hidden)]
5967 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
5968 #[doc(hidden)]
5969 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
5970 #[cfg(test)]
5971 #[allow(dead_code, unreachable_patterns)]
5972 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
5973 match _t {
5974 alloy_sol_types::private::AssertTypeEq::<
5975 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5976 >(_) => {},
5977 }
5978 }
5979 #[automatically_derived]
5980 #[doc(hidden)]
5981 impl ::core::convert::From<exitEscrowPeriodReturn> for UnderlyingRustTuple<'_> {
5982 fn from(value: exitEscrowPeriodReturn) -> Self {
5983 (value._0,)
5984 }
5985 }
5986 #[automatically_derived]
5987 #[doc(hidden)]
5988 impl ::core::convert::From<UnderlyingRustTuple<'_>> for exitEscrowPeriodReturn {
5989 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5990 Self { _0: tuple.0 }
5991 }
5992 }
5993 }
5994 #[automatically_derived]
5995 impl alloy_sol_types::SolCall for exitEscrowPeriodCall {
5996 type Parameters<'a> = ();
5997 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
5998 type Return = exitEscrowPeriodReturn;
5999 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6000 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6001 const SIGNATURE: &'static str = "exitEscrowPeriod()";
6002 const SELECTOR: [u8; 4] = [158u8, 154u8, 143u8, 49u8];
6003 #[inline]
6004 fn new<'a>(
6005 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6006 ) -> Self {
6007 tuple.into()
6008 }
6009 #[inline]
6010 fn tokenize(&self) -> Self::Token<'_> {
6011 ()
6012 }
6013 #[inline]
6014 fn abi_decode_returns(
6015 data: &[u8],
6016 validate: bool,
6017 ) -> alloy_sol_types::Result<Self::Return> {
6018 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6019 data, validate,
6020 )
6021 .map(Into::into)
6022 }
6023 }
6024 };
6025 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6026 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6031 #[derive(Clone)]
6032 pub struct getVersionCall {}
6033 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6034 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6036 #[derive(Clone)]
6037 pub struct getVersionReturn {
6038 #[allow(missing_docs)]
6039 pub majorVersion: u8,
6040 #[allow(missing_docs)]
6041 pub minorVersion: u8,
6042 #[allow(missing_docs)]
6043 pub patchVersion: u8,
6044 }
6045 #[allow(
6046 non_camel_case_types,
6047 non_snake_case,
6048 clippy::pub_underscore_fields,
6049 clippy::style
6050 )]
6051 const _: () = {
6052 use alloy::sol_types as alloy_sol_types;
6053 {
6054 #[doc(hidden)]
6055 type UnderlyingSolTuple<'a> = ();
6056 #[doc(hidden)]
6057 type UnderlyingRustTuple<'a> = ();
6058 #[cfg(test)]
6059 #[allow(dead_code, unreachable_patterns)]
6060 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6061 match _t {
6062 alloy_sol_types::private::AssertTypeEq::<
6063 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6064 >(_) => {},
6065 }
6066 }
6067 #[automatically_derived]
6068 #[doc(hidden)]
6069 impl ::core::convert::From<getVersionCall> for UnderlyingRustTuple<'_> {
6070 fn from(value: getVersionCall) -> Self {
6071 ()
6072 }
6073 }
6074 #[automatically_derived]
6075 #[doc(hidden)]
6076 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getVersionCall {
6077 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6078 Self {}
6079 }
6080 }
6081 }
6082 {
6083 #[doc(hidden)]
6084 type UnderlyingSolTuple<'a> = (
6085 alloy::sol_types::sol_data::Uint<8>,
6086 alloy::sol_types::sol_data::Uint<8>,
6087 alloy::sol_types::sol_data::Uint<8>,
6088 );
6089 #[doc(hidden)]
6090 type UnderlyingRustTuple<'a> = (u8, u8, u8);
6091 #[cfg(test)]
6092 #[allow(dead_code, unreachable_patterns)]
6093 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6094 match _t {
6095 alloy_sol_types::private::AssertTypeEq::<
6096 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6097 >(_) => {},
6098 }
6099 }
6100 #[automatically_derived]
6101 #[doc(hidden)]
6102 impl ::core::convert::From<getVersionReturn> for UnderlyingRustTuple<'_> {
6103 fn from(value: getVersionReturn) -> Self {
6104 (value.majorVersion, value.minorVersion, value.patchVersion)
6105 }
6106 }
6107 #[automatically_derived]
6108 #[doc(hidden)]
6109 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getVersionReturn {
6110 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6111 Self {
6112 majorVersion: tuple.0,
6113 minorVersion: tuple.1,
6114 patchVersion: tuple.2,
6115 }
6116 }
6117 }
6118 }
6119 #[automatically_derived]
6120 impl alloy_sol_types::SolCall for getVersionCall {
6121 type Parameters<'a> = ();
6122 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6123 type Return = getVersionReturn;
6124 type ReturnTuple<'a> = (
6125 alloy::sol_types::sol_data::Uint<8>,
6126 alloy::sol_types::sol_data::Uint<8>,
6127 alloy::sol_types::sol_data::Uint<8>,
6128 );
6129 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6130 const SIGNATURE: &'static str = "getVersion()";
6131 const SELECTOR: [u8; 4] = [13u8, 142u8, 110u8, 44u8];
6132 #[inline]
6133 fn new<'a>(
6134 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6135 ) -> Self {
6136 tuple.into()
6137 }
6138 #[inline]
6139 fn tokenize(&self) -> Self::Token<'_> {
6140 ()
6141 }
6142 #[inline]
6143 fn abi_decode_returns(
6144 data: &[u8],
6145 validate: bool,
6146 ) -> alloy_sol_types::Result<Self::Return> {
6147 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6148 data, validate,
6149 )
6150 .map(Into::into)
6151 }
6152 }
6153 };
6154 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6155 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6160 #[derive(Clone)]
6161 pub struct initializeCall {
6162 #[allow(missing_docs)]
6163 pub _tokenAddress: alloy::sol_types::private::Address,
6164 #[allow(missing_docs)]
6165 pub _lightClientAddress: alloy::sol_types::private::Address,
6166 #[allow(missing_docs)]
6167 pub _exitEscrowPeriod: alloy::sol_types::private::primitives::aliases::U256,
6168 #[allow(missing_docs)]
6169 pub _timelock: alloy::sol_types::private::Address,
6170 }
6171 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6173 #[derive(Clone)]
6174 pub struct initializeReturn {}
6175 #[allow(
6176 non_camel_case_types,
6177 non_snake_case,
6178 clippy::pub_underscore_fields,
6179 clippy::style
6180 )]
6181 const _: () = {
6182 use alloy::sol_types as alloy_sol_types;
6183 {
6184 #[doc(hidden)]
6185 type UnderlyingSolTuple<'a> = (
6186 alloy::sol_types::sol_data::Address,
6187 alloy::sol_types::sol_data::Address,
6188 alloy::sol_types::sol_data::Uint<256>,
6189 alloy::sol_types::sol_data::Address,
6190 );
6191 #[doc(hidden)]
6192 type UnderlyingRustTuple<'a> = (
6193 alloy::sol_types::private::Address,
6194 alloy::sol_types::private::Address,
6195 alloy::sol_types::private::primitives::aliases::U256,
6196 alloy::sol_types::private::Address,
6197 );
6198 #[cfg(test)]
6199 #[allow(dead_code, unreachable_patterns)]
6200 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6201 match _t {
6202 alloy_sol_types::private::AssertTypeEq::<
6203 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6204 >(_) => {},
6205 }
6206 }
6207 #[automatically_derived]
6208 #[doc(hidden)]
6209 impl ::core::convert::From<initializeCall> for UnderlyingRustTuple<'_> {
6210 fn from(value: initializeCall) -> Self {
6211 (
6212 value._tokenAddress,
6213 value._lightClientAddress,
6214 value._exitEscrowPeriod,
6215 value._timelock,
6216 )
6217 }
6218 }
6219 #[automatically_derived]
6220 #[doc(hidden)]
6221 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeCall {
6222 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6223 Self {
6224 _tokenAddress: tuple.0,
6225 _lightClientAddress: tuple.1,
6226 _exitEscrowPeriod: tuple.2,
6227 _timelock: tuple.3,
6228 }
6229 }
6230 }
6231 }
6232 {
6233 #[doc(hidden)]
6234 type UnderlyingSolTuple<'a> = ();
6235 #[doc(hidden)]
6236 type UnderlyingRustTuple<'a> = ();
6237 #[cfg(test)]
6238 #[allow(dead_code, unreachable_patterns)]
6239 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6240 match _t {
6241 alloy_sol_types::private::AssertTypeEq::<
6242 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6243 >(_) => {},
6244 }
6245 }
6246 #[automatically_derived]
6247 #[doc(hidden)]
6248 impl ::core::convert::From<initializeReturn> for UnderlyingRustTuple<'_> {
6249 fn from(value: initializeReturn) -> Self {
6250 ()
6251 }
6252 }
6253 #[automatically_derived]
6254 #[doc(hidden)]
6255 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeReturn {
6256 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6257 Self {}
6258 }
6259 }
6260 }
6261 #[automatically_derived]
6262 impl alloy_sol_types::SolCall for initializeCall {
6263 type Parameters<'a> = (
6264 alloy::sol_types::sol_data::Address,
6265 alloy::sol_types::sol_data::Address,
6266 alloy::sol_types::sol_data::Uint<256>,
6267 alloy::sol_types::sol_data::Address,
6268 );
6269 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6270 type Return = initializeReturn;
6271 type ReturnTuple<'a> = ();
6272 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6273 const SIGNATURE: &'static str = "initialize(address,address,uint256,address)";
6274 const SELECTOR: [u8; 4] = [190u8, 32u8, 48u8, 148u8];
6275 #[inline]
6276 fn new<'a>(
6277 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6278 ) -> Self {
6279 tuple.into()
6280 }
6281 #[inline]
6282 fn tokenize(&self) -> Self::Token<'_> {
6283 (
6284 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6285 &self._tokenAddress,
6286 ),
6287 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6288 &self._lightClientAddress,
6289 ),
6290 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
6291 &self._exitEscrowPeriod,
6292 ),
6293 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6294 &self._timelock,
6295 ),
6296 )
6297 }
6298 #[inline]
6299 fn abi_decode_returns(
6300 data: &[u8],
6301 validate: bool,
6302 ) -> alloy_sol_types::Result<Self::Return> {
6303 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6304 data, validate,
6305 )
6306 .map(Into::into)
6307 }
6308 }
6309 };
6310 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6311 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6316 #[derive(Clone)]
6317 pub struct initializedAtBlockCall {}
6318 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6319 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6321 #[derive(Clone)]
6322 pub struct initializedAtBlockReturn {
6323 #[allow(missing_docs)]
6324 pub _0: alloy::sol_types::private::primitives::aliases::U256,
6325 }
6326 #[allow(
6327 non_camel_case_types,
6328 non_snake_case,
6329 clippy::pub_underscore_fields,
6330 clippy::style
6331 )]
6332 const _: () = {
6333 use alloy::sol_types as alloy_sol_types;
6334 {
6335 #[doc(hidden)]
6336 type UnderlyingSolTuple<'a> = ();
6337 #[doc(hidden)]
6338 type UnderlyingRustTuple<'a> = ();
6339 #[cfg(test)]
6340 #[allow(dead_code, unreachable_patterns)]
6341 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6342 match _t {
6343 alloy_sol_types::private::AssertTypeEq::<
6344 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6345 >(_) => {},
6346 }
6347 }
6348 #[automatically_derived]
6349 #[doc(hidden)]
6350 impl ::core::convert::From<initializedAtBlockCall> for UnderlyingRustTuple<'_> {
6351 fn from(value: initializedAtBlockCall) -> Self {
6352 ()
6353 }
6354 }
6355 #[automatically_derived]
6356 #[doc(hidden)]
6357 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializedAtBlockCall {
6358 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6359 Self {}
6360 }
6361 }
6362 }
6363 {
6364 #[doc(hidden)]
6365 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6366 #[doc(hidden)]
6367 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
6368 #[cfg(test)]
6369 #[allow(dead_code, unreachable_patterns)]
6370 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6371 match _t {
6372 alloy_sol_types::private::AssertTypeEq::<
6373 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6374 >(_) => {},
6375 }
6376 }
6377 #[automatically_derived]
6378 #[doc(hidden)]
6379 impl ::core::convert::From<initializedAtBlockReturn> for UnderlyingRustTuple<'_> {
6380 fn from(value: initializedAtBlockReturn) -> Self {
6381 (value._0,)
6382 }
6383 }
6384 #[automatically_derived]
6385 #[doc(hidden)]
6386 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializedAtBlockReturn {
6387 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6388 Self { _0: tuple.0 }
6389 }
6390 }
6391 }
6392 #[automatically_derived]
6393 impl alloy_sol_types::SolCall for initializedAtBlockCall {
6394 type Parameters<'a> = ();
6395 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6396 type Return = initializedAtBlockReturn;
6397 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6398 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6399 const SIGNATURE: &'static str = "initializedAtBlock()";
6400 const SELECTOR: [u8; 4] = [62u8, 157u8, 249u8, 181u8];
6401 #[inline]
6402 fn new<'a>(
6403 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6404 ) -> Self {
6405 tuple.into()
6406 }
6407 #[inline]
6408 fn tokenize(&self) -> Self::Token<'_> {
6409 ()
6410 }
6411 #[inline]
6412 fn abi_decode_returns(
6413 data: &[u8],
6414 validate: bool,
6415 ) -> alloy_sol_types::Result<Self::Return> {
6416 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6417 data, validate,
6418 )
6419 .map(Into::into)
6420 }
6421 }
6422 };
6423 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6424 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6429 #[derive(Clone)]
6430 pub struct lightClientCall {}
6431 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6432 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6434 #[derive(Clone)]
6435 pub struct lightClientReturn {
6436 #[allow(missing_docs)]
6437 pub _0: alloy::sol_types::private::Address,
6438 }
6439 #[allow(
6440 non_camel_case_types,
6441 non_snake_case,
6442 clippy::pub_underscore_fields,
6443 clippy::style
6444 )]
6445 const _: () = {
6446 use alloy::sol_types as alloy_sol_types;
6447 {
6448 #[doc(hidden)]
6449 type UnderlyingSolTuple<'a> = ();
6450 #[doc(hidden)]
6451 type UnderlyingRustTuple<'a> = ();
6452 #[cfg(test)]
6453 #[allow(dead_code, unreachable_patterns)]
6454 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6455 match _t {
6456 alloy_sol_types::private::AssertTypeEq::<
6457 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6458 >(_) => {},
6459 }
6460 }
6461 #[automatically_derived]
6462 #[doc(hidden)]
6463 impl ::core::convert::From<lightClientCall> for UnderlyingRustTuple<'_> {
6464 fn from(value: lightClientCall) -> Self {
6465 ()
6466 }
6467 }
6468 #[automatically_derived]
6469 #[doc(hidden)]
6470 impl ::core::convert::From<UnderlyingRustTuple<'_>> for lightClientCall {
6471 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6472 Self {}
6473 }
6474 }
6475 }
6476 {
6477 #[doc(hidden)]
6478 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
6479 #[doc(hidden)]
6480 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
6481 #[cfg(test)]
6482 #[allow(dead_code, unreachable_patterns)]
6483 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6484 match _t {
6485 alloy_sol_types::private::AssertTypeEq::<
6486 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6487 >(_) => {},
6488 }
6489 }
6490 #[automatically_derived]
6491 #[doc(hidden)]
6492 impl ::core::convert::From<lightClientReturn> for UnderlyingRustTuple<'_> {
6493 fn from(value: lightClientReturn) -> Self {
6494 (value._0,)
6495 }
6496 }
6497 #[automatically_derived]
6498 #[doc(hidden)]
6499 impl ::core::convert::From<UnderlyingRustTuple<'_>> for lightClientReturn {
6500 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6501 Self { _0: tuple.0 }
6502 }
6503 }
6504 }
6505 #[automatically_derived]
6506 impl alloy_sol_types::SolCall for lightClientCall {
6507 type Parameters<'a> = ();
6508 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6509 type Return = lightClientReturn;
6510 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
6511 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6512 const SIGNATURE: &'static str = "lightClient()";
6513 const SELECTOR: [u8; 4] = [181u8, 112u8, 14u8, 104u8];
6514 #[inline]
6515 fn new<'a>(
6516 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6517 ) -> Self {
6518 tuple.into()
6519 }
6520 #[inline]
6521 fn tokenize(&self) -> Self::Token<'_> {
6522 ()
6523 }
6524 #[inline]
6525 fn abi_decode_returns(
6526 data: &[u8],
6527 validate: bool,
6528 ) -> alloy_sol_types::Result<Self::Return> {
6529 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6530 data, validate,
6531 )
6532 .map(Into::into)
6533 }
6534 }
6535 };
6536 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6537 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6542 #[derive(Clone)]
6543 pub struct ownerCall {}
6544 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6545 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6547 #[derive(Clone)]
6548 pub struct ownerReturn {
6549 #[allow(missing_docs)]
6550 pub _0: alloy::sol_types::private::Address,
6551 }
6552 #[allow(
6553 non_camel_case_types,
6554 non_snake_case,
6555 clippy::pub_underscore_fields,
6556 clippy::style
6557 )]
6558 const _: () = {
6559 use alloy::sol_types as alloy_sol_types;
6560 {
6561 #[doc(hidden)]
6562 type UnderlyingSolTuple<'a> = ();
6563 #[doc(hidden)]
6564 type UnderlyingRustTuple<'a> = ();
6565 #[cfg(test)]
6566 #[allow(dead_code, unreachable_patterns)]
6567 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6568 match _t {
6569 alloy_sol_types::private::AssertTypeEq::<
6570 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6571 >(_) => {},
6572 }
6573 }
6574 #[automatically_derived]
6575 #[doc(hidden)]
6576 impl ::core::convert::From<ownerCall> for UnderlyingRustTuple<'_> {
6577 fn from(value: ownerCall) -> Self {
6578 ()
6579 }
6580 }
6581 #[automatically_derived]
6582 #[doc(hidden)]
6583 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ownerCall {
6584 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6585 Self {}
6586 }
6587 }
6588 }
6589 {
6590 #[doc(hidden)]
6591 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
6592 #[doc(hidden)]
6593 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
6594 #[cfg(test)]
6595 #[allow(dead_code, unreachable_patterns)]
6596 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6597 match _t {
6598 alloy_sol_types::private::AssertTypeEq::<
6599 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6600 >(_) => {},
6601 }
6602 }
6603 #[automatically_derived]
6604 #[doc(hidden)]
6605 impl ::core::convert::From<ownerReturn> for UnderlyingRustTuple<'_> {
6606 fn from(value: ownerReturn) -> Self {
6607 (value._0,)
6608 }
6609 }
6610 #[automatically_derived]
6611 #[doc(hidden)]
6612 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ownerReturn {
6613 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6614 Self { _0: tuple.0 }
6615 }
6616 }
6617 }
6618 #[automatically_derived]
6619 impl alloy_sol_types::SolCall for ownerCall {
6620 type Parameters<'a> = ();
6621 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6622 type Return = ownerReturn;
6623 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
6624 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6625 const SIGNATURE: &'static str = "owner()";
6626 const SELECTOR: [u8; 4] = [141u8, 165u8, 203u8, 91u8];
6627 #[inline]
6628 fn new<'a>(
6629 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6630 ) -> Self {
6631 tuple.into()
6632 }
6633 #[inline]
6634 fn tokenize(&self) -> Self::Token<'_> {
6635 ()
6636 }
6637 #[inline]
6638 fn abi_decode_returns(
6639 data: &[u8],
6640 validate: bool,
6641 ) -> alloy_sol_types::Result<Self::Return> {
6642 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6643 data, validate,
6644 )
6645 .map(Into::into)
6646 }
6647 }
6648 };
6649 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6650 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6655 #[derive(Clone)]
6656 pub struct proxiableUUIDCall {}
6657 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6658 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6660 #[derive(Clone)]
6661 pub struct proxiableUUIDReturn {
6662 #[allow(missing_docs)]
6663 pub _0: alloy::sol_types::private::FixedBytes<32>,
6664 }
6665 #[allow(
6666 non_camel_case_types,
6667 non_snake_case,
6668 clippy::pub_underscore_fields,
6669 clippy::style
6670 )]
6671 const _: () = {
6672 use alloy::sol_types as alloy_sol_types;
6673 {
6674 #[doc(hidden)]
6675 type UnderlyingSolTuple<'a> = ();
6676 #[doc(hidden)]
6677 type UnderlyingRustTuple<'a> = ();
6678 #[cfg(test)]
6679 #[allow(dead_code, unreachable_patterns)]
6680 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6681 match _t {
6682 alloy_sol_types::private::AssertTypeEq::<
6683 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6684 >(_) => {},
6685 }
6686 }
6687 #[automatically_derived]
6688 #[doc(hidden)]
6689 impl ::core::convert::From<proxiableUUIDCall> for UnderlyingRustTuple<'_> {
6690 fn from(value: proxiableUUIDCall) -> Self {
6691 ()
6692 }
6693 }
6694 #[automatically_derived]
6695 #[doc(hidden)]
6696 impl ::core::convert::From<UnderlyingRustTuple<'_>> for proxiableUUIDCall {
6697 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6698 Self {}
6699 }
6700 }
6701 }
6702 {
6703 #[doc(hidden)]
6704 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
6705 #[doc(hidden)]
6706 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
6707 #[cfg(test)]
6708 #[allow(dead_code, unreachable_patterns)]
6709 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6710 match _t {
6711 alloy_sol_types::private::AssertTypeEq::<
6712 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6713 >(_) => {},
6714 }
6715 }
6716 #[automatically_derived]
6717 #[doc(hidden)]
6718 impl ::core::convert::From<proxiableUUIDReturn> for UnderlyingRustTuple<'_> {
6719 fn from(value: proxiableUUIDReturn) -> Self {
6720 (value._0,)
6721 }
6722 }
6723 #[automatically_derived]
6724 #[doc(hidden)]
6725 impl ::core::convert::From<UnderlyingRustTuple<'_>> for proxiableUUIDReturn {
6726 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6727 Self { _0: tuple.0 }
6728 }
6729 }
6730 }
6731 #[automatically_derived]
6732 impl alloy_sol_types::SolCall for proxiableUUIDCall {
6733 type Parameters<'a> = ();
6734 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6735 type Return = proxiableUUIDReturn;
6736 type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
6737 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6738 const SIGNATURE: &'static str = "proxiableUUID()";
6739 const SELECTOR: [u8; 4] = [82u8, 209u8, 144u8, 45u8];
6740 #[inline]
6741 fn new<'a>(
6742 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6743 ) -> Self {
6744 tuple.into()
6745 }
6746 #[inline]
6747 fn tokenize(&self) -> Self::Token<'_> {
6748 ()
6749 }
6750 #[inline]
6751 fn abi_decode_returns(
6752 data: &[u8],
6753 validate: bool,
6754 ) -> alloy_sol_types::Result<Self::Return> {
6755 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6756 data, validate,
6757 )
6758 .map(Into::into)
6759 }
6760 }
6761 };
6762 #[derive()]
6763 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6768 #[derive(Clone)]
6769 pub struct registerValidatorCall {
6770 #[allow(missing_docs)]
6771 pub blsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
6772 #[allow(missing_docs)]
6773 pub schnorrVK: <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
6774 #[allow(missing_docs)]
6775 pub blsSig: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
6776 #[allow(missing_docs)]
6777 pub commission: u16,
6778 }
6779 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6781 #[derive(Clone)]
6782 pub struct registerValidatorReturn {}
6783 #[allow(
6784 non_camel_case_types,
6785 non_snake_case,
6786 clippy::pub_underscore_fields,
6787 clippy::style
6788 )]
6789 const _: () = {
6790 use alloy::sol_types as alloy_sol_types;
6791 {
6792 #[doc(hidden)]
6793 type UnderlyingSolTuple<'a> = (
6794 BN254::G2Point,
6795 EdOnBN254::EdOnBN254Point,
6796 BN254::G1Point,
6797 alloy::sol_types::sol_data::Uint<16>,
6798 );
6799 #[doc(hidden)]
6800 type UnderlyingRustTuple<'a> = (
6801 <BN254::G2Point as alloy::sol_types::SolType>::RustType,
6802 <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
6803 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
6804 u16,
6805 );
6806 #[cfg(test)]
6807 #[allow(dead_code, unreachable_patterns)]
6808 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6809 match _t {
6810 alloy_sol_types::private::AssertTypeEq::<
6811 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6812 >(_) => {},
6813 }
6814 }
6815 #[automatically_derived]
6816 #[doc(hidden)]
6817 impl ::core::convert::From<registerValidatorCall> for UnderlyingRustTuple<'_> {
6818 fn from(value: registerValidatorCall) -> Self {
6819 (value.blsVK, value.schnorrVK, value.blsSig, value.commission)
6820 }
6821 }
6822 #[automatically_derived]
6823 #[doc(hidden)]
6824 impl ::core::convert::From<UnderlyingRustTuple<'_>> for registerValidatorCall {
6825 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6826 Self {
6827 blsVK: tuple.0,
6828 schnorrVK: tuple.1,
6829 blsSig: tuple.2,
6830 commission: tuple.3,
6831 }
6832 }
6833 }
6834 }
6835 {
6836 #[doc(hidden)]
6837 type UnderlyingSolTuple<'a> = ();
6838 #[doc(hidden)]
6839 type UnderlyingRustTuple<'a> = ();
6840 #[cfg(test)]
6841 #[allow(dead_code, unreachable_patterns)]
6842 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6843 match _t {
6844 alloy_sol_types::private::AssertTypeEq::<
6845 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6846 >(_) => {},
6847 }
6848 }
6849 #[automatically_derived]
6850 #[doc(hidden)]
6851 impl ::core::convert::From<registerValidatorReturn> for UnderlyingRustTuple<'_> {
6852 fn from(value: registerValidatorReturn) -> Self {
6853 ()
6854 }
6855 }
6856 #[automatically_derived]
6857 #[doc(hidden)]
6858 impl ::core::convert::From<UnderlyingRustTuple<'_>> for registerValidatorReturn {
6859 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6860 Self {}
6861 }
6862 }
6863 }
6864 #[automatically_derived]
6865 impl alloy_sol_types::SolCall for registerValidatorCall {
6866 type Parameters<'a> = (
6867 BN254::G2Point,
6868 EdOnBN254::EdOnBN254Point,
6869 BN254::G1Point,
6870 alloy::sol_types::sol_data::Uint<16>,
6871 );
6872 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6873 type Return = registerValidatorReturn;
6874 type ReturnTuple<'a> = ();
6875 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6876 const SIGNATURE: &'static str = "registerValidator((uint256,uint256,uint256,uint256),(uint256,uint256),(uint256,uint256),uint16)";
6877 const SELECTOR: [u8; 4] = [19u8, 185u8, 5u8, 122u8];
6878 #[inline]
6879 fn new<'a>(
6880 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6881 ) -> Self {
6882 tuple.into()
6883 }
6884 #[inline]
6885 fn tokenize(&self) -> Self::Token<'_> {
6886 (
6887 <BN254::G2Point as alloy_sol_types::SolType>::tokenize(&self.blsVK),
6888 <EdOnBN254::EdOnBN254Point as alloy_sol_types::SolType>::tokenize(
6889 &self.schnorrVK,
6890 ),
6891 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.blsSig),
6892 <alloy::sol_types::sol_data::Uint<16> as alloy_sol_types::SolType>::tokenize(
6893 &self.commission,
6894 ),
6895 )
6896 }
6897 #[inline]
6898 fn abi_decode_returns(
6899 data: &[u8],
6900 validate: bool,
6901 ) -> alloy_sol_types::Result<Self::Return> {
6902 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
6903 data, validate,
6904 )
6905 .map(Into::into)
6906 }
6907 }
6908 };
6909 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6910 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6915 #[derive(Clone)]
6916 pub struct renounceOwnershipCall {}
6917 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6919 #[derive(Clone)]
6920 pub struct renounceOwnershipReturn {}
6921 #[allow(
6922 non_camel_case_types,
6923 non_snake_case,
6924 clippy::pub_underscore_fields,
6925 clippy::style
6926 )]
6927 const _: () = {
6928 use alloy::sol_types as alloy_sol_types;
6929 {
6930 #[doc(hidden)]
6931 type UnderlyingSolTuple<'a> = ();
6932 #[doc(hidden)]
6933 type UnderlyingRustTuple<'a> = ();
6934 #[cfg(test)]
6935 #[allow(dead_code, unreachable_patterns)]
6936 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6937 match _t {
6938 alloy_sol_types::private::AssertTypeEq::<
6939 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6940 >(_) => {},
6941 }
6942 }
6943 #[automatically_derived]
6944 #[doc(hidden)]
6945 impl ::core::convert::From<renounceOwnershipCall> for UnderlyingRustTuple<'_> {
6946 fn from(value: renounceOwnershipCall) -> Self {
6947 ()
6948 }
6949 }
6950 #[automatically_derived]
6951 #[doc(hidden)]
6952 impl ::core::convert::From<UnderlyingRustTuple<'_>> for renounceOwnershipCall {
6953 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6954 Self {}
6955 }
6956 }
6957 }
6958 {
6959 #[doc(hidden)]
6960 type UnderlyingSolTuple<'a> = ();
6961 #[doc(hidden)]
6962 type UnderlyingRustTuple<'a> = ();
6963 #[cfg(test)]
6964 #[allow(dead_code, unreachable_patterns)]
6965 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
6966 match _t {
6967 alloy_sol_types::private::AssertTypeEq::<
6968 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6969 >(_) => {},
6970 }
6971 }
6972 #[automatically_derived]
6973 #[doc(hidden)]
6974 impl ::core::convert::From<renounceOwnershipReturn> for UnderlyingRustTuple<'_> {
6975 fn from(value: renounceOwnershipReturn) -> Self {
6976 ()
6977 }
6978 }
6979 #[automatically_derived]
6980 #[doc(hidden)]
6981 impl ::core::convert::From<UnderlyingRustTuple<'_>> for renounceOwnershipReturn {
6982 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6983 Self {}
6984 }
6985 }
6986 }
6987 #[automatically_derived]
6988 impl alloy_sol_types::SolCall for renounceOwnershipCall {
6989 type Parameters<'a> = ();
6990 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
6991 type Return = renounceOwnershipReturn;
6992 type ReturnTuple<'a> = ();
6993 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
6994 const SIGNATURE: &'static str = "renounceOwnership()";
6995 const SELECTOR: [u8; 4] = [113u8, 80u8, 24u8, 166u8];
6996 #[inline]
6997 fn new<'a>(
6998 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6999 ) -> Self {
7000 tuple.into()
7001 }
7002 #[inline]
7003 fn tokenize(&self) -> Self::Token<'_> {
7004 ()
7005 }
7006 #[inline]
7007 fn abi_decode_returns(
7008 data: &[u8],
7009 validate: bool,
7010 ) -> alloy_sol_types::Result<Self::Return> {
7011 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7012 data, validate,
7013 )
7014 .map(Into::into)
7015 }
7016 }
7017 };
7018 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7019 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7024 #[derive(Clone)]
7025 pub struct tokenCall {}
7026 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7027 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7029 #[derive(Clone)]
7030 pub struct tokenReturn {
7031 #[allow(missing_docs)]
7032 pub _0: alloy::sol_types::private::Address,
7033 }
7034 #[allow(
7035 non_camel_case_types,
7036 non_snake_case,
7037 clippy::pub_underscore_fields,
7038 clippy::style
7039 )]
7040 const _: () = {
7041 use alloy::sol_types as alloy_sol_types;
7042 {
7043 #[doc(hidden)]
7044 type UnderlyingSolTuple<'a> = ();
7045 #[doc(hidden)]
7046 type UnderlyingRustTuple<'a> = ();
7047 #[cfg(test)]
7048 #[allow(dead_code, unreachable_patterns)]
7049 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7050 match _t {
7051 alloy_sol_types::private::AssertTypeEq::<
7052 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7053 >(_) => {},
7054 }
7055 }
7056 #[automatically_derived]
7057 #[doc(hidden)]
7058 impl ::core::convert::From<tokenCall> for UnderlyingRustTuple<'_> {
7059 fn from(value: tokenCall) -> Self {
7060 ()
7061 }
7062 }
7063 #[automatically_derived]
7064 #[doc(hidden)]
7065 impl ::core::convert::From<UnderlyingRustTuple<'_>> for tokenCall {
7066 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7067 Self {}
7068 }
7069 }
7070 }
7071 {
7072 #[doc(hidden)]
7073 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7074 #[doc(hidden)]
7075 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7076 #[cfg(test)]
7077 #[allow(dead_code, unreachable_patterns)]
7078 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7079 match _t {
7080 alloy_sol_types::private::AssertTypeEq::<
7081 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7082 >(_) => {},
7083 }
7084 }
7085 #[automatically_derived]
7086 #[doc(hidden)]
7087 impl ::core::convert::From<tokenReturn> for UnderlyingRustTuple<'_> {
7088 fn from(value: tokenReturn) -> Self {
7089 (value._0,)
7090 }
7091 }
7092 #[automatically_derived]
7093 #[doc(hidden)]
7094 impl ::core::convert::From<UnderlyingRustTuple<'_>> for tokenReturn {
7095 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7096 Self { _0: tuple.0 }
7097 }
7098 }
7099 }
7100 #[automatically_derived]
7101 impl alloy_sol_types::SolCall for tokenCall {
7102 type Parameters<'a> = ();
7103 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7104 type Return = tokenReturn;
7105 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
7106 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7107 const SIGNATURE: &'static str = "token()";
7108 const SELECTOR: [u8; 4] = [252u8, 12u8, 84u8, 106u8];
7109 #[inline]
7110 fn new<'a>(
7111 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7112 ) -> Self {
7113 tuple.into()
7114 }
7115 #[inline]
7116 fn tokenize(&self) -> Self::Token<'_> {
7117 ()
7118 }
7119 #[inline]
7120 fn abi_decode_returns(
7121 data: &[u8],
7122 validate: bool,
7123 ) -> alloy_sol_types::Result<Self::Return> {
7124 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7125 data, validate,
7126 )
7127 .map(Into::into)
7128 }
7129 }
7130 };
7131 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7132 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7137 #[derive(Clone)]
7138 pub struct transferOwnershipCall {
7139 #[allow(missing_docs)]
7140 pub newOwner: alloy::sol_types::private::Address,
7141 }
7142 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7144 #[derive(Clone)]
7145 pub struct transferOwnershipReturn {}
7146 #[allow(
7147 non_camel_case_types,
7148 non_snake_case,
7149 clippy::pub_underscore_fields,
7150 clippy::style
7151 )]
7152 const _: () = {
7153 use alloy::sol_types as alloy_sol_types;
7154 {
7155 #[doc(hidden)]
7156 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7157 #[doc(hidden)]
7158 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7159 #[cfg(test)]
7160 #[allow(dead_code, unreachable_patterns)]
7161 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7162 match _t {
7163 alloy_sol_types::private::AssertTypeEq::<
7164 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7165 >(_) => {},
7166 }
7167 }
7168 #[automatically_derived]
7169 #[doc(hidden)]
7170 impl ::core::convert::From<transferOwnershipCall> for UnderlyingRustTuple<'_> {
7171 fn from(value: transferOwnershipCall) -> Self {
7172 (value.newOwner,)
7173 }
7174 }
7175 #[automatically_derived]
7176 #[doc(hidden)]
7177 impl ::core::convert::From<UnderlyingRustTuple<'_>> for transferOwnershipCall {
7178 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7179 Self { newOwner: tuple.0 }
7180 }
7181 }
7182 }
7183 {
7184 #[doc(hidden)]
7185 type UnderlyingSolTuple<'a> = ();
7186 #[doc(hidden)]
7187 type UnderlyingRustTuple<'a> = ();
7188 #[cfg(test)]
7189 #[allow(dead_code, unreachable_patterns)]
7190 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7191 match _t {
7192 alloy_sol_types::private::AssertTypeEq::<
7193 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7194 >(_) => {},
7195 }
7196 }
7197 #[automatically_derived]
7198 #[doc(hidden)]
7199 impl ::core::convert::From<transferOwnershipReturn> for UnderlyingRustTuple<'_> {
7200 fn from(value: transferOwnershipReturn) -> Self {
7201 ()
7202 }
7203 }
7204 #[automatically_derived]
7205 #[doc(hidden)]
7206 impl ::core::convert::From<UnderlyingRustTuple<'_>> for transferOwnershipReturn {
7207 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7208 Self {}
7209 }
7210 }
7211 }
7212 #[automatically_derived]
7213 impl alloy_sol_types::SolCall for transferOwnershipCall {
7214 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
7215 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7216 type Return = transferOwnershipReturn;
7217 type ReturnTuple<'a> = ();
7218 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7219 const SIGNATURE: &'static str = "transferOwnership(address)";
7220 const SELECTOR: [u8; 4] = [242u8, 253u8, 227u8, 139u8];
7221 #[inline]
7222 fn new<'a>(
7223 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7224 ) -> Self {
7225 tuple.into()
7226 }
7227 #[inline]
7228 fn tokenize(&self) -> Self::Token<'_> {
7229 (
7230 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7231 &self.newOwner,
7232 ),
7233 )
7234 }
7235 #[inline]
7236 fn abi_decode_returns(
7237 data: &[u8],
7238 validate: bool,
7239 ) -> alloy_sol_types::Result<Self::Return> {
7240 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7241 data, validate,
7242 )
7243 .map(Into::into)
7244 }
7245 }
7246 };
7247 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7248 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7253 #[derive(Clone)]
7254 pub struct undelegateCall {
7255 #[allow(missing_docs)]
7256 pub validator: alloy::sol_types::private::Address,
7257 #[allow(missing_docs)]
7258 pub amount: alloy::sol_types::private::primitives::aliases::U256,
7259 }
7260 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7262 #[derive(Clone)]
7263 pub struct undelegateReturn {}
7264 #[allow(
7265 non_camel_case_types,
7266 non_snake_case,
7267 clippy::pub_underscore_fields,
7268 clippy::style
7269 )]
7270 const _: () = {
7271 use alloy::sol_types as alloy_sol_types;
7272 {
7273 #[doc(hidden)]
7274 type UnderlyingSolTuple<'a> = (
7275 alloy::sol_types::sol_data::Address,
7276 alloy::sol_types::sol_data::Uint<256>,
7277 );
7278 #[doc(hidden)]
7279 type UnderlyingRustTuple<'a> = (
7280 alloy::sol_types::private::Address,
7281 alloy::sol_types::private::primitives::aliases::U256,
7282 );
7283 #[cfg(test)]
7284 #[allow(dead_code, unreachable_patterns)]
7285 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7286 match _t {
7287 alloy_sol_types::private::AssertTypeEq::<
7288 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7289 >(_) => {},
7290 }
7291 }
7292 #[automatically_derived]
7293 #[doc(hidden)]
7294 impl ::core::convert::From<undelegateCall> for UnderlyingRustTuple<'_> {
7295 fn from(value: undelegateCall) -> Self {
7296 (value.validator, value.amount)
7297 }
7298 }
7299 #[automatically_derived]
7300 #[doc(hidden)]
7301 impl ::core::convert::From<UnderlyingRustTuple<'_>> for undelegateCall {
7302 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7303 Self {
7304 validator: tuple.0,
7305 amount: tuple.1,
7306 }
7307 }
7308 }
7309 }
7310 {
7311 #[doc(hidden)]
7312 type UnderlyingSolTuple<'a> = ();
7313 #[doc(hidden)]
7314 type UnderlyingRustTuple<'a> = ();
7315 #[cfg(test)]
7316 #[allow(dead_code, unreachable_patterns)]
7317 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7318 match _t {
7319 alloy_sol_types::private::AssertTypeEq::<
7320 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7321 >(_) => {},
7322 }
7323 }
7324 #[automatically_derived]
7325 #[doc(hidden)]
7326 impl ::core::convert::From<undelegateReturn> for UnderlyingRustTuple<'_> {
7327 fn from(value: undelegateReturn) -> Self {
7328 ()
7329 }
7330 }
7331 #[automatically_derived]
7332 #[doc(hidden)]
7333 impl ::core::convert::From<UnderlyingRustTuple<'_>> for undelegateReturn {
7334 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7335 Self {}
7336 }
7337 }
7338 }
7339 #[automatically_derived]
7340 impl alloy_sol_types::SolCall for undelegateCall {
7341 type Parameters<'a> = (
7342 alloy::sol_types::sol_data::Address,
7343 alloy::sol_types::sol_data::Uint<256>,
7344 );
7345 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7346 type Return = undelegateReturn;
7347 type ReturnTuple<'a> = ();
7348 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7349 const SIGNATURE: &'static str = "undelegate(address,uint256)";
7350 const SELECTOR: [u8; 4] = [77u8, 153u8, 221u8, 22u8];
7351 #[inline]
7352 fn new<'a>(
7353 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7354 ) -> Self {
7355 tuple.into()
7356 }
7357 #[inline]
7358 fn tokenize(&self) -> Self::Token<'_> {
7359 (
7360 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7361 &self.validator,
7362 ),
7363 <alloy::sol_types::sol_data::Uint<256> as alloy_sol_types::SolType>::tokenize(
7364 &self.amount,
7365 ),
7366 )
7367 }
7368 #[inline]
7369 fn abi_decode_returns(
7370 data: &[u8],
7371 validate: bool,
7372 ) -> alloy_sol_types::Result<Self::Return> {
7373 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7374 data, validate,
7375 )
7376 .map(Into::into)
7377 }
7378 }
7379 };
7380 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7381 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7386 #[derive(Clone)]
7387 pub struct undelegationsCall {
7388 #[allow(missing_docs)]
7389 pub validator: alloy::sol_types::private::Address,
7390 #[allow(missing_docs)]
7391 pub delegator: alloy::sol_types::private::Address,
7392 }
7393 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7394 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7396 #[derive(Clone)]
7397 pub struct undelegationsReturn {
7398 #[allow(missing_docs)]
7399 pub amount: alloy::sol_types::private::primitives::aliases::U256,
7400 #[allow(missing_docs)]
7401 pub unlocksAt: alloy::sol_types::private::primitives::aliases::U256,
7402 }
7403 #[allow(
7404 non_camel_case_types,
7405 non_snake_case,
7406 clippy::pub_underscore_fields,
7407 clippy::style
7408 )]
7409 const _: () = {
7410 use alloy::sol_types as alloy_sol_types;
7411 {
7412 #[doc(hidden)]
7413 type UnderlyingSolTuple<'a> = (
7414 alloy::sol_types::sol_data::Address,
7415 alloy::sol_types::sol_data::Address,
7416 );
7417 #[doc(hidden)]
7418 type UnderlyingRustTuple<'a> = (
7419 alloy::sol_types::private::Address,
7420 alloy::sol_types::private::Address,
7421 );
7422 #[cfg(test)]
7423 #[allow(dead_code, unreachable_patterns)]
7424 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7425 match _t {
7426 alloy_sol_types::private::AssertTypeEq::<
7427 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7428 >(_) => {},
7429 }
7430 }
7431 #[automatically_derived]
7432 #[doc(hidden)]
7433 impl ::core::convert::From<undelegationsCall> for UnderlyingRustTuple<'_> {
7434 fn from(value: undelegationsCall) -> Self {
7435 (value.validator, value.delegator)
7436 }
7437 }
7438 #[automatically_derived]
7439 #[doc(hidden)]
7440 impl ::core::convert::From<UnderlyingRustTuple<'_>> for undelegationsCall {
7441 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7442 Self {
7443 validator: tuple.0,
7444 delegator: tuple.1,
7445 }
7446 }
7447 }
7448 }
7449 {
7450 #[doc(hidden)]
7451 type UnderlyingSolTuple<'a> = (
7452 alloy::sol_types::sol_data::Uint<256>,
7453 alloy::sol_types::sol_data::Uint<256>,
7454 );
7455 #[doc(hidden)]
7456 type UnderlyingRustTuple<'a> = (
7457 alloy::sol_types::private::primitives::aliases::U256,
7458 alloy::sol_types::private::primitives::aliases::U256,
7459 );
7460 #[cfg(test)]
7461 #[allow(dead_code, unreachable_patterns)]
7462 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7463 match _t {
7464 alloy_sol_types::private::AssertTypeEq::<
7465 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7466 >(_) => {},
7467 }
7468 }
7469 #[automatically_derived]
7470 #[doc(hidden)]
7471 impl ::core::convert::From<undelegationsReturn> for UnderlyingRustTuple<'_> {
7472 fn from(value: undelegationsReturn) -> Self {
7473 (value.amount, value.unlocksAt)
7474 }
7475 }
7476 #[automatically_derived]
7477 #[doc(hidden)]
7478 impl ::core::convert::From<UnderlyingRustTuple<'_>> for undelegationsReturn {
7479 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7480 Self {
7481 amount: tuple.0,
7482 unlocksAt: tuple.1,
7483 }
7484 }
7485 }
7486 }
7487 #[automatically_derived]
7488 impl alloy_sol_types::SolCall for undelegationsCall {
7489 type Parameters<'a> = (
7490 alloy::sol_types::sol_data::Address,
7491 alloy::sol_types::sol_data::Address,
7492 );
7493 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7494 type Return = undelegationsReturn;
7495 type ReturnTuple<'a> = (
7496 alloy::sol_types::sol_data::Uint<256>,
7497 alloy::sol_types::sol_data::Uint<256>,
7498 );
7499 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7500 const SIGNATURE: &'static str = "undelegations(address,address)";
7501 const SELECTOR: [u8; 4] = [162u8, 215u8, 141u8, 213u8];
7502 #[inline]
7503 fn new<'a>(
7504 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7505 ) -> Self {
7506 tuple.into()
7507 }
7508 #[inline]
7509 fn tokenize(&self) -> Self::Token<'_> {
7510 (
7511 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7512 &self.validator,
7513 ),
7514 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7515 &self.delegator,
7516 ),
7517 )
7518 }
7519 #[inline]
7520 fn abi_decode_returns(
7521 data: &[u8],
7522 validate: bool,
7523 ) -> alloy_sol_types::Result<Self::Return> {
7524 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7525 data, validate,
7526 )
7527 .map(Into::into)
7528 }
7529 }
7530 };
7531 #[derive()]
7532 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7537 #[derive(Clone)]
7538 pub struct updateConsensusKeysCall {
7539 #[allow(missing_docs)]
7540 pub newBlsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
7541 #[allow(missing_docs)]
7542 pub newSchnorrVK: <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
7543 #[allow(missing_docs)]
7544 pub newBlsSig: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
7545 }
7546 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7548 #[derive(Clone)]
7549 pub struct updateConsensusKeysReturn {}
7550 #[allow(
7551 non_camel_case_types,
7552 non_snake_case,
7553 clippy::pub_underscore_fields,
7554 clippy::style
7555 )]
7556 const _: () = {
7557 use alloy::sol_types as alloy_sol_types;
7558 {
7559 #[doc(hidden)]
7560 type UnderlyingSolTuple<'a> =
7561 (BN254::G2Point, EdOnBN254::EdOnBN254Point, BN254::G1Point);
7562 #[doc(hidden)]
7563 type UnderlyingRustTuple<'a> = (
7564 <BN254::G2Point as alloy::sol_types::SolType>::RustType,
7565 <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
7566 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
7567 );
7568 #[cfg(test)]
7569 #[allow(dead_code, unreachable_patterns)]
7570 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7571 match _t {
7572 alloy_sol_types::private::AssertTypeEq::<
7573 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7574 >(_) => {},
7575 }
7576 }
7577 #[automatically_derived]
7578 #[doc(hidden)]
7579 impl ::core::convert::From<updateConsensusKeysCall> for UnderlyingRustTuple<'_> {
7580 fn from(value: updateConsensusKeysCall) -> Self {
7581 (value.newBlsVK, value.newSchnorrVK, value.newBlsSig)
7582 }
7583 }
7584 #[automatically_derived]
7585 #[doc(hidden)]
7586 impl ::core::convert::From<UnderlyingRustTuple<'_>> for updateConsensusKeysCall {
7587 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7588 Self {
7589 newBlsVK: tuple.0,
7590 newSchnorrVK: tuple.1,
7591 newBlsSig: tuple.2,
7592 }
7593 }
7594 }
7595 }
7596 {
7597 #[doc(hidden)]
7598 type UnderlyingSolTuple<'a> = ();
7599 #[doc(hidden)]
7600 type UnderlyingRustTuple<'a> = ();
7601 #[cfg(test)]
7602 #[allow(dead_code, unreachable_patterns)]
7603 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7604 match _t {
7605 alloy_sol_types::private::AssertTypeEq::<
7606 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7607 >(_) => {},
7608 }
7609 }
7610 #[automatically_derived]
7611 #[doc(hidden)]
7612 impl ::core::convert::From<updateConsensusKeysReturn> for UnderlyingRustTuple<'_> {
7613 fn from(value: updateConsensusKeysReturn) -> Self {
7614 ()
7615 }
7616 }
7617 #[automatically_derived]
7618 #[doc(hidden)]
7619 impl ::core::convert::From<UnderlyingRustTuple<'_>> for updateConsensusKeysReturn {
7620 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7621 Self {}
7622 }
7623 }
7624 }
7625 #[automatically_derived]
7626 impl alloy_sol_types::SolCall for updateConsensusKeysCall {
7627 type Parameters<'a> = (BN254::G2Point, EdOnBN254::EdOnBN254Point, BN254::G1Point);
7628 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7629 type Return = updateConsensusKeysReturn;
7630 type ReturnTuple<'a> = ();
7631 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7632 const SIGNATURE: &'static str = "updateConsensusKeys((uint256,uint256,uint256,uint256),(uint256,uint256),(uint256,uint256))";
7633 const SELECTOR: [u8; 4] = [85u8, 68u8, 194u8, 241u8];
7634 #[inline]
7635 fn new<'a>(
7636 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7637 ) -> Self {
7638 tuple.into()
7639 }
7640 #[inline]
7641 fn tokenize(&self) -> Self::Token<'_> {
7642 (
7643 <BN254::G2Point as alloy_sol_types::SolType>::tokenize(&self.newBlsVK),
7644 <EdOnBN254::EdOnBN254Point as alloy_sol_types::SolType>::tokenize(
7645 &self.newSchnorrVK,
7646 ),
7647 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.newBlsSig),
7648 )
7649 }
7650 #[inline]
7651 fn abi_decode_returns(
7652 data: &[u8],
7653 validate: bool,
7654 ) -> alloy_sol_types::Result<Self::Return> {
7655 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7656 data, validate,
7657 )
7658 .map(Into::into)
7659 }
7660 }
7661 };
7662 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7663 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7668 #[derive(Clone)]
7669 pub struct upgradeToAndCallCall {
7670 #[allow(missing_docs)]
7671 pub newImplementation: alloy::sol_types::private::Address,
7672 #[allow(missing_docs)]
7673 pub data: alloy::sol_types::private::Bytes,
7674 }
7675 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7677 #[derive(Clone)]
7678 pub struct upgradeToAndCallReturn {}
7679 #[allow(
7680 non_camel_case_types,
7681 non_snake_case,
7682 clippy::pub_underscore_fields,
7683 clippy::style
7684 )]
7685 const _: () = {
7686 use alloy::sol_types as alloy_sol_types;
7687 {
7688 #[doc(hidden)]
7689 type UnderlyingSolTuple<'a> = (
7690 alloy::sol_types::sol_data::Address,
7691 alloy::sol_types::sol_data::Bytes,
7692 );
7693 #[doc(hidden)]
7694 type UnderlyingRustTuple<'a> = (
7695 alloy::sol_types::private::Address,
7696 alloy::sol_types::private::Bytes,
7697 );
7698 #[cfg(test)]
7699 #[allow(dead_code, unreachable_patterns)]
7700 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7701 match _t {
7702 alloy_sol_types::private::AssertTypeEq::<
7703 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7704 >(_) => {},
7705 }
7706 }
7707 #[automatically_derived]
7708 #[doc(hidden)]
7709 impl ::core::convert::From<upgradeToAndCallCall> for UnderlyingRustTuple<'_> {
7710 fn from(value: upgradeToAndCallCall) -> Self {
7711 (value.newImplementation, value.data)
7712 }
7713 }
7714 #[automatically_derived]
7715 #[doc(hidden)]
7716 impl ::core::convert::From<UnderlyingRustTuple<'_>> for upgradeToAndCallCall {
7717 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7718 Self {
7719 newImplementation: tuple.0,
7720 data: tuple.1,
7721 }
7722 }
7723 }
7724 }
7725 {
7726 #[doc(hidden)]
7727 type UnderlyingSolTuple<'a> = ();
7728 #[doc(hidden)]
7729 type UnderlyingRustTuple<'a> = ();
7730 #[cfg(test)]
7731 #[allow(dead_code, unreachable_patterns)]
7732 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7733 match _t {
7734 alloy_sol_types::private::AssertTypeEq::<
7735 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7736 >(_) => {},
7737 }
7738 }
7739 #[automatically_derived]
7740 #[doc(hidden)]
7741 impl ::core::convert::From<upgradeToAndCallReturn> for UnderlyingRustTuple<'_> {
7742 fn from(value: upgradeToAndCallReturn) -> Self {
7743 ()
7744 }
7745 }
7746 #[automatically_derived]
7747 #[doc(hidden)]
7748 impl ::core::convert::From<UnderlyingRustTuple<'_>> for upgradeToAndCallReturn {
7749 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7750 Self {}
7751 }
7752 }
7753 }
7754 #[automatically_derived]
7755 impl alloy_sol_types::SolCall for upgradeToAndCallCall {
7756 type Parameters<'a> = (
7757 alloy::sol_types::sol_data::Address,
7758 alloy::sol_types::sol_data::Bytes,
7759 );
7760 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7761 type Return = upgradeToAndCallReturn;
7762 type ReturnTuple<'a> = ();
7763 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7764 const SIGNATURE: &'static str = "upgradeToAndCall(address,bytes)";
7765 const SELECTOR: [u8; 4] = [79u8, 30u8, 242u8, 134u8];
7766 #[inline]
7767 fn new<'a>(
7768 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7769 ) -> Self {
7770 tuple.into()
7771 }
7772 #[inline]
7773 fn tokenize(&self) -> Self::Token<'_> {
7774 (
7775 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7776 &self.newImplementation,
7777 ),
7778 <alloy::sol_types::sol_data::Bytes as alloy_sol_types::SolType>::tokenize(
7779 &self.data,
7780 ),
7781 )
7782 }
7783 #[inline]
7784 fn abi_decode_returns(
7785 data: &[u8],
7786 validate: bool,
7787 ) -> alloy_sol_types::Result<Self::Return> {
7788 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7789 data, validate,
7790 )
7791 .map(Into::into)
7792 }
7793 }
7794 };
7795 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7796 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7801 #[derive(Clone)]
7802 pub struct validatorExitsCall {
7803 #[allow(missing_docs)]
7804 pub validator: alloy::sol_types::private::Address,
7805 }
7806 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7807 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7809 #[derive(Clone)]
7810 pub struct validatorExitsReturn {
7811 #[allow(missing_docs)]
7812 pub unlocksAt: alloy::sol_types::private::primitives::aliases::U256,
7813 }
7814 #[allow(
7815 non_camel_case_types,
7816 non_snake_case,
7817 clippy::pub_underscore_fields,
7818 clippy::style
7819 )]
7820 const _: () = {
7821 use alloy::sol_types as alloy_sol_types;
7822 {
7823 #[doc(hidden)]
7824 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7825 #[doc(hidden)]
7826 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7827 #[cfg(test)]
7828 #[allow(dead_code, unreachable_patterns)]
7829 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7830 match _t {
7831 alloy_sol_types::private::AssertTypeEq::<
7832 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7833 >(_) => {},
7834 }
7835 }
7836 #[automatically_derived]
7837 #[doc(hidden)]
7838 impl ::core::convert::From<validatorExitsCall> for UnderlyingRustTuple<'_> {
7839 fn from(value: validatorExitsCall) -> Self {
7840 (value.validator,)
7841 }
7842 }
7843 #[automatically_derived]
7844 #[doc(hidden)]
7845 impl ::core::convert::From<UnderlyingRustTuple<'_>> for validatorExitsCall {
7846 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7847 Self { validator: tuple.0 }
7848 }
7849 }
7850 }
7851 {
7852 #[doc(hidden)]
7853 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
7854 #[doc(hidden)]
7855 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::primitives::aliases::U256,);
7856 #[cfg(test)]
7857 #[allow(dead_code, unreachable_patterns)]
7858 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7859 match _t {
7860 alloy_sol_types::private::AssertTypeEq::<
7861 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7862 >(_) => {},
7863 }
7864 }
7865 #[automatically_derived]
7866 #[doc(hidden)]
7867 impl ::core::convert::From<validatorExitsReturn> for UnderlyingRustTuple<'_> {
7868 fn from(value: validatorExitsReturn) -> Self {
7869 (value.unlocksAt,)
7870 }
7871 }
7872 #[automatically_derived]
7873 #[doc(hidden)]
7874 impl ::core::convert::From<UnderlyingRustTuple<'_>> for validatorExitsReturn {
7875 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7876 Self { unlocksAt: tuple.0 }
7877 }
7878 }
7879 }
7880 #[automatically_derived]
7881 impl alloy_sol_types::SolCall for validatorExitsCall {
7882 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
7883 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
7884 type Return = validatorExitsReturn;
7885 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
7886 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
7887 const SIGNATURE: &'static str = "validatorExits(address)";
7888 const SELECTOR: [u8; 4] = [181u8, 236u8, 179u8, 68u8];
7889 #[inline]
7890 fn new<'a>(
7891 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7892 ) -> Self {
7893 tuple.into()
7894 }
7895 #[inline]
7896 fn tokenize(&self) -> Self::Token<'_> {
7897 (
7898 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7899 &self.validator,
7900 ),
7901 )
7902 }
7903 #[inline]
7904 fn abi_decode_returns(
7905 data: &[u8],
7906 validate: bool,
7907 ) -> alloy_sol_types::Result<Self::Return> {
7908 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
7909 data, validate,
7910 )
7911 .map(Into::into)
7912 }
7913 }
7914 };
7915 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7916 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7921 #[derive(Clone)]
7922 pub struct validatorsCall {
7923 #[allow(missing_docs)]
7924 pub account: alloy::sol_types::private::Address,
7925 }
7926 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7927 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7929 #[derive(Clone)]
7930 pub struct validatorsReturn {
7931 #[allow(missing_docs)]
7932 pub delegatedAmount: alloy::sol_types::private::primitives::aliases::U256,
7933 #[allow(missing_docs)]
7934 pub status: <ValidatorStatus as alloy::sol_types::SolType>::RustType,
7935 }
7936 #[allow(
7937 non_camel_case_types,
7938 non_snake_case,
7939 clippy::pub_underscore_fields,
7940 clippy::style
7941 )]
7942 const _: () = {
7943 use alloy::sol_types as alloy_sol_types;
7944 {
7945 #[doc(hidden)]
7946 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7947 #[doc(hidden)]
7948 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7949 #[cfg(test)]
7950 #[allow(dead_code, unreachable_patterns)]
7951 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7952 match _t {
7953 alloy_sol_types::private::AssertTypeEq::<
7954 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7955 >(_) => {},
7956 }
7957 }
7958 #[automatically_derived]
7959 #[doc(hidden)]
7960 impl ::core::convert::From<validatorsCall> for UnderlyingRustTuple<'_> {
7961 fn from(value: validatorsCall) -> Self {
7962 (value.account,)
7963 }
7964 }
7965 #[automatically_derived]
7966 #[doc(hidden)]
7967 impl ::core::convert::From<UnderlyingRustTuple<'_>> for validatorsCall {
7968 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7969 Self { account: tuple.0 }
7970 }
7971 }
7972 }
7973 {
7974 #[doc(hidden)]
7975 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>, ValidatorStatus);
7976 #[doc(hidden)]
7977 type UnderlyingRustTuple<'a> = (
7978 alloy::sol_types::private::primitives::aliases::U256,
7979 <ValidatorStatus as alloy::sol_types::SolType>::RustType,
7980 );
7981 #[cfg(test)]
7982 #[allow(dead_code, unreachable_patterns)]
7983 fn _type_assertion(_t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>) {
7984 match _t {
7985 alloy_sol_types::private::AssertTypeEq::<
7986 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7987 >(_) => {},
7988 }
7989 }
7990 #[automatically_derived]
7991 #[doc(hidden)]
7992 impl ::core::convert::From<validatorsReturn> for UnderlyingRustTuple<'_> {
7993 fn from(value: validatorsReturn) -> Self {
7994 (value.delegatedAmount, value.status)
7995 }
7996 }
7997 #[automatically_derived]
7998 #[doc(hidden)]
7999 impl ::core::convert::From<UnderlyingRustTuple<'_>> for validatorsReturn {
8000 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8001 Self {
8002 delegatedAmount: tuple.0,
8003 status: tuple.1,
8004 }
8005 }
8006 }
8007 }
8008 #[automatically_derived]
8009 impl alloy_sol_types::SolCall for validatorsCall {
8010 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
8011 type Token<'a> = <Self::Parameters<'a> as alloy_sol_types::SolType>::Token<'a>;
8012 type Return = validatorsReturn;
8013 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>, ValidatorStatus);
8014 type ReturnToken<'a> = <Self::ReturnTuple<'a> as alloy_sol_types::SolType>::Token<'a>;
8015 const SIGNATURE: &'static str = "validators(address)";
8016 const SELECTOR: [u8; 4] = [250u8, 82u8, 199u8, 216u8];
8017 #[inline]
8018 fn new<'a>(
8019 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8020 ) -> Self {
8021 tuple.into()
8022 }
8023 #[inline]
8024 fn tokenize(&self) -> Self::Token<'_> {
8025 (
8026 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8027 &self.account,
8028 ),
8029 )
8030 }
8031 #[inline]
8032 fn abi_decode_returns(
8033 data: &[u8],
8034 validate: bool,
8035 ) -> alloy_sol_types::Result<Self::Return> {
8036 <Self::ReturnTuple<'_> as alloy_sol_types::SolType>::abi_decode_sequence(
8037 data, validate,
8038 )
8039 .map(Into::into)
8040 }
8041 }
8042 };
8043 #[derive()]
8045 pub enum StakeTableCalls {
8046 #[allow(missing_docs)]
8047 UPGRADE_INTERFACE_VERSION(UPGRADE_INTERFACE_VERSIONCall),
8048 #[allow(missing_docs)]
8049 _hashBlsKey(_hashBlsKeyCall),
8050 #[allow(missing_docs)]
8051 blsKeys(blsKeysCall),
8052 #[allow(missing_docs)]
8053 claimValidatorExit(claimValidatorExitCall),
8054 #[allow(missing_docs)]
8055 claimWithdrawal(claimWithdrawalCall),
8056 #[allow(missing_docs)]
8057 delegate(delegateCall),
8058 #[allow(missing_docs)]
8059 delegations(delegationsCall),
8060 #[allow(missing_docs)]
8061 deregisterValidator(deregisterValidatorCall),
8062 #[allow(missing_docs)]
8063 exitEscrowPeriod(exitEscrowPeriodCall),
8064 #[allow(missing_docs)]
8065 getVersion(getVersionCall),
8066 #[allow(missing_docs)]
8067 initialize(initializeCall),
8068 #[allow(missing_docs)]
8069 initializedAtBlock(initializedAtBlockCall),
8070 #[allow(missing_docs)]
8071 lightClient(lightClientCall),
8072 #[allow(missing_docs)]
8073 owner(ownerCall),
8074 #[allow(missing_docs)]
8075 proxiableUUID(proxiableUUIDCall),
8076 #[allow(missing_docs)]
8077 registerValidator(registerValidatorCall),
8078 #[allow(missing_docs)]
8079 renounceOwnership(renounceOwnershipCall),
8080 #[allow(missing_docs)]
8081 token(tokenCall),
8082 #[allow(missing_docs)]
8083 transferOwnership(transferOwnershipCall),
8084 #[allow(missing_docs)]
8085 undelegate(undelegateCall),
8086 #[allow(missing_docs)]
8087 undelegations(undelegationsCall),
8088 #[allow(missing_docs)]
8089 updateConsensusKeys(updateConsensusKeysCall),
8090 #[allow(missing_docs)]
8091 upgradeToAndCall(upgradeToAndCallCall),
8092 #[allow(missing_docs)]
8093 validatorExits(validatorExitsCall),
8094 #[allow(missing_docs)]
8095 validators(validatorsCall),
8096 }
8097 #[automatically_derived]
8098 impl StakeTableCalls {
8099 pub const SELECTORS: &'static [[u8; 4usize]] = &[
8106 [2u8, 110u8, 64u8, 43u8],
8107 [13u8, 142u8, 110u8, 44u8],
8108 [19u8, 185u8, 5u8, 122u8],
8109 [33u8, 64u8, 254u8, 205u8],
8110 [62u8, 157u8, 249u8, 181u8],
8111 [77u8, 153u8, 221u8, 22u8],
8112 [79u8, 30u8, 242u8, 134u8],
8113 [82u8, 209u8, 144u8, 45u8],
8114 [85u8, 68u8, 194u8, 241u8],
8115 [106u8, 145u8, 28u8, 207u8],
8116 [113u8, 80u8, 24u8, 166u8],
8117 [141u8, 165u8, 203u8, 91u8],
8118 [155u8, 48u8, 165u8, 230u8],
8119 [158u8, 154u8, 143u8, 49u8],
8120 [162u8, 215u8, 141u8, 213u8],
8121 [163u8, 6u8, 106u8, 171u8],
8122 [173u8, 60u8, 177u8, 204u8],
8123 [179u8, 230u8, 235u8, 213u8],
8124 [181u8, 112u8, 14u8, 104u8],
8125 [181u8, 236u8, 179u8, 68u8],
8126 [190u8, 32u8, 48u8, 148u8],
8127 [198u8, 72u8, 20u8, 221u8],
8128 [242u8, 253u8, 227u8, 139u8],
8129 [250u8, 82u8, 199u8, 216u8],
8130 [252u8, 12u8, 84u8, 106u8],
8131 ];
8132 }
8133 #[automatically_derived]
8134 impl alloy_sol_types::SolInterface for StakeTableCalls {
8135 const NAME: &'static str = "StakeTableCalls";
8136 const MIN_DATA_LENGTH: usize = 0usize;
8137 const COUNT: usize = 25usize;
8138 #[inline]
8139 fn selector(&self) -> [u8; 4] {
8140 match self {
8141 Self::UPGRADE_INTERFACE_VERSION(_) => {
8142 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::SELECTOR
8143 },
8144 Self::_hashBlsKey(_) => <_hashBlsKeyCall as alloy_sol_types::SolCall>::SELECTOR,
8145 Self::blsKeys(_) => <blsKeysCall as alloy_sol_types::SolCall>::SELECTOR,
8146 Self::claimValidatorExit(_) => {
8147 <claimValidatorExitCall as alloy_sol_types::SolCall>::SELECTOR
8148 },
8149 Self::claimWithdrawal(_) => {
8150 <claimWithdrawalCall as alloy_sol_types::SolCall>::SELECTOR
8151 },
8152 Self::delegate(_) => <delegateCall as alloy_sol_types::SolCall>::SELECTOR,
8153 Self::delegations(_) => <delegationsCall as alloy_sol_types::SolCall>::SELECTOR,
8154 Self::deregisterValidator(_) => {
8155 <deregisterValidatorCall as alloy_sol_types::SolCall>::SELECTOR
8156 },
8157 Self::exitEscrowPeriod(_) => {
8158 <exitEscrowPeriodCall as alloy_sol_types::SolCall>::SELECTOR
8159 },
8160 Self::getVersion(_) => <getVersionCall as alloy_sol_types::SolCall>::SELECTOR,
8161 Self::initialize(_) => <initializeCall as alloy_sol_types::SolCall>::SELECTOR,
8162 Self::initializedAtBlock(_) => {
8163 <initializedAtBlockCall as alloy_sol_types::SolCall>::SELECTOR
8164 },
8165 Self::lightClient(_) => <lightClientCall as alloy_sol_types::SolCall>::SELECTOR,
8166 Self::owner(_) => <ownerCall as alloy_sol_types::SolCall>::SELECTOR,
8167 Self::proxiableUUID(_) => <proxiableUUIDCall as alloy_sol_types::SolCall>::SELECTOR,
8168 Self::registerValidator(_) => {
8169 <registerValidatorCall as alloy_sol_types::SolCall>::SELECTOR
8170 },
8171 Self::renounceOwnership(_) => {
8172 <renounceOwnershipCall as alloy_sol_types::SolCall>::SELECTOR
8173 },
8174 Self::token(_) => <tokenCall as alloy_sol_types::SolCall>::SELECTOR,
8175 Self::transferOwnership(_) => {
8176 <transferOwnershipCall as alloy_sol_types::SolCall>::SELECTOR
8177 },
8178 Self::undelegate(_) => <undelegateCall as alloy_sol_types::SolCall>::SELECTOR,
8179 Self::undelegations(_) => <undelegationsCall as alloy_sol_types::SolCall>::SELECTOR,
8180 Self::updateConsensusKeys(_) => {
8181 <updateConsensusKeysCall as alloy_sol_types::SolCall>::SELECTOR
8182 },
8183 Self::upgradeToAndCall(_) => {
8184 <upgradeToAndCallCall as alloy_sol_types::SolCall>::SELECTOR
8185 },
8186 Self::validatorExits(_) => {
8187 <validatorExitsCall as alloy_sol_types::SolCall>::SELECTOR
8188 },
8189 Self::validators(_) => <validatorsCall as alloy_sol_types::SolCall>::SELECTOR,
8190 }
8191 }
8192 #[inline]
8193 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
8194 Self::SELECTORS.get(i).copied()
8195 }
8196 #[inline]
8197 fn valid_selector(selector: [u8; 4]) -> bool {
8198 Self::SELECTORS.binary_search(&selector).is_ok()
8199 }
8200 #[inline]
8201 #[allow(non_snake_case)]
8202 fn abi_decode_raw(
8203 selector: [u8; 4],
8204 data: &[u8],
8205 validate: bool,
8206 ) -> alloy_sol_types::Result<Self> {
8207 static DECODE_SHIMS: &[fn(&[u8], bool) -> alloy_sol_types::Result<StakeTableCalls>] = &[
8208 {
8209 fn delegate(
8210 data: &[u8],
8211 validate: bool,
8212 ) -> alloy_sol_types::Result<StakeTableCalls> {
8213 <delegateCall as alloy_sol_types::SolCall>::abi_decode_raw(data, validate)
8214 .map(StakeTableCalls::delegate)
8215 }
8216 delegate
8217 },
8218 {
8219 fn getVersion(
8220 data: &[u8],
8221 validate: bool,
8222 ) -> alloy_sol_types::Result<StakeTableCalls> {
8223 <getVersionCall as alloy_sol_types::SolCall>::abi_decode_raw(data, validate)
8224 .map(StakeTableCalls::getVersion)
8225 }
8226 getVersion
8227 },
8228 {
8229 fn registerValidator(
8230 data: &[u8],
8231 validate: bool,
8232 ) -> alloy_sol_types::Result<StakeTableCalls> {
8233 <registerValidatorCall as alloy_sol_types::SolCall>::abi_decode_raw(
8234 data, validate,
8235 )
8236 .map(StakeTableCalls::registerValidator)
8237 }
8238 registerValidator
8239 },
8240 {
8241 fn claimValidatorExit(
8242 data: &[u8],
8243 validate: bool,
8244 ) -> alloy_sol_types::Result<StakeTableCalls> {
8245 <claimValidatorExitCall as alloy_sol_types::SolCall>::abi_decode_raw(
8246 data, validate,
8247 )
8248 .map(StakeTableCalls::claimValidatorExit)
8249 }
8250 claimValidatorExit
8251 },
8252 {
8253 fn initializedAtBlock(
8254 data: &[u8],
8255 validate: bool,
8256 ) -> alloy_sol_types::Result<StakeTableCalls> {
8257 <initializedAtBlockCall as alloy_sol_types::SolCall>::abi_decode_raw(
8258 data, validate,
8259 )
8260 .map(StakeTableCalls::initializedAtBlock)
8261 }
8262 initializedAtBlock
8263 },
8264 {
8265 fn undelegate(
8266 data: &[u8],
8267 validate: bool,
8268 ) -> alloy_sol_types::Result<StakeTableCalls> {
8269 <undelegateCall as alloy_sol_types::SolCall>::abi_decode_raw(data, validate)
8270 .map(StakeTableCalls::undelegate)
8271 }
8272 undelegate
8273 },
8274 {
8275 fn upgradeToAndCall(
8276 data: &[u8],
8277 validate: bool,
8278 ) -> alloy_sol_types::Result<StakeTableCalls> {
8279 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_decode_raw(
8280 data, validate,
8281 )
8282 .map(StakeTableCalls::upgradeToAndCall)
8283 }
8284 upgradeToAndCall
8285 },
8286 {
8287 fn proxiableUUID(
8288 data: &[u8],
8289 validate: bool,
8290 ) -> alloy_sol_types::Result<StakeTableCalls> {
8291 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_decode_raw(
8292 data, validate,
8293 )
8294 .map(StakeTableCalls::proxiableUUID)
8295 }
8296 proxiableUUID
8297 },
8298 {
8299 fn updateConsensusKeys(
8300 data: &[u8],
8301 validate: bool,
8302 ) -> alloy_sol_types::Result<StakeTableCalls> {
8303 <updateConsensusKeysCall as alloy_sol_types::SolCall>::abi_decode_raw(
8304 data, validate,
8305 )
8306 .map(StakeTableCalls::updateConsensusKeys)
8307 }
8308 updateConsensusKeys
8309 },
8310 {
8311 fn deregisterValidator(
8312 data: &[u8],
8313 validate: bool,
8314 ) -> alloy_sol_types::Result<StakeTableCalls> {
8315 <deregisterValidatorCall as alloy_sol_types::SolCall>::abi_decode_raw(
8316 data, validate,
8317 )
8318 .map(StakeTableCalls::deregisterValidator)
8319 }
8320 deregisterValidator
8321 },
8322 {
8323 fn renounceOwnership(
8324 data: &[u8],
8325 validate: bool,
8326 ) -> alloy_sol_types::Result<StakeTableCalls> {
8327 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw(
8328 data, validate,
8329 )
8330 .map(StakeTableCalls::renounceOwnership)
8331 }
8332 renounceOwnership
8333 },
8334 {
8335 fn owner(
8336 data: &[u8],
8337 validate: bool,
8338 ) -> alloy_sol_types::Result<StakeTableCalls> {
8339 <ownerCall as alloy_sol_types::SolCall>::abi_decode_raw(data, validate)
8340 .map(StakeTableCalls::owner)
8341 }
8342 owner
8343 },
8344 {
8345 fn _hashBlsKey(
8346 data: &[u8],
8347 validate: bool,
8348 ) -> alloy_sol_types::Result<StakeTableCalls> {
8349 <_hashBlsKeyCall as alloy_sol_types::SolCall>::abi_decode_raw(
8350 data, validate,
8351 )
8352 .map(StakeTableCalls::_hashBlsKey)
8353 }
8354 _hashBlsKey
8355 },
8356 {
8357 fn exitEscrowPeriod(
8358 data: &[u8],
8359 validate: bool,
8360 ) -> alloy_sol_types::Result<StakeTableCalls> {
8361 <exitEscrowPeriodCall as alloy_sol_types::SolCall>::abi_decode_raw(
8362 data, validate,
8363 )
8364 .map(StakeTableCalls::exitEscrowPeriod)
8365 }
8366 exitEscrowPeriod
8367 },
8368 {
8369 fn undelegations(
8370 data: &[u8],
8371 validate: bool,
8372 ) -> alloy_sol_types::Result<StakeTableCalls> {
8373 <undelegationsCall as alloy_sol_types::SolCall>::abi_decode_raw(
8374 data, validate,
8375 )
8376 .map(StakeTableCalls::undelegations)
8377 }
8378 undelegations
8379 },
8380 {
8381 fn claimWithdrawal(
8382 data: &[u8],
8383 validate: bool,
8384 ) -> alloy_sol_types::Result<StakeTableCalls> {
8385 <claimWithdrawalCall as alloy_sol_types::SolCall>::abi_decode_raw(
8386 data, validate,
8387 )
8388 .map(StakeTableCalls::claimWithdrawal)
8389 }
8390 claimWithdrawal
8391 },
8392 {
8393 fn UPGRADE_INTERFACE_VERSION(
8394 data: &[u8],
8395 validate: bool,
8396 ) -> alloy_sol_types::Result<StakeTableCalls> {
8397 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_decode_raw(
8398 data, validate,
8399 )
8400 .map(StakeTableCalls::UPGRADE_INTERFACE_VERSION)
8401 }
8402 UPGRADE_INTERFACE_VERSION
8403 },
8404 {
8405 fn blsKeys(
8406 data: &[u8],
8407 validate: bool,
8408 ) -> alloy_sol_types::Result<StakeTableCalls> {
8409 <blsKeysCall as alloy_sol_types::SolCall>::abi_decode_raw(data, validate)
8410 .map(StakeTableCalls::blsKeys)
8411 }
8412 blsKeys
8413 },
8414 {
8415 fn lightClient(
8416 data: &[u8],
8417 validate: bool,
8418 ) -> alloy_sol_types::Result<StakeTableCalls> {
8419 <lightClientCall as alloy_sol_types::SolCall>::abi_decode_raw(
8420 data, validate,
8421 )
8422 .map(StakeTableCalls::lightClient)
8423 }
8424 lightClient
8425 },
8426 {
8427 fn validatorExits(
8428 data: &[u8],
8429 validate: bool,
8430 ) -> alloy_sol_types::Result<StakeTableCalls> {
8431 <validatorExitsCall as alloy_sol_types::SolCall>::abi_decode_raw(
8432 data, validate,
8433 )
8434 .map(StakeTableCalls::validatorExits)
8435 }
8436 validatorExits
8437 },
8438 {
8439 fn initialize(
8440 data: &[u8],
8441 validate: bool,
8442 ) -> alloy_sol_types::Result<StakeTableCalls> {
8443 <initializeCall as alloy_sol_types::SolCall>::abi_decode_raw(data, validate)
8444 .map(StakeTableCalls::initialize)
8445 }
8446 initialize
8447 },
8448 {
8449 fn delegations(
8450 data: &[u8],
8451 validate: bool,
8452 ) -> alloy_sol_types::Result<StakeTableCalls> {
8453 <delegationsCall as alloy_sol_types::SolCall>::abi_decode_raw(
8454 data, validate,
8455 )
8456 .map(StakeTableCalls::delegations)
8457 }
8458 delegations
8459 },
8460 {
8461 fn transferOwnership(
8462 data: &[u8],
8463 validate: bool,
8464 ) -> alloy_sol_types::Result<StakeTableCalls> {
8465 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw(
8466 data, validate,
8467 )
8468 .map(StakeTableCalls::transferOwnership)
8469 }
8470 transferOwnership
8471 },
8472 {
8473 fn validators(
8474 data: &[u8],
8475 validate: bool,
8476 ) -> alloy_sol_types::Result<StakeTableCalls> {
8477 <validatorsCall as alloy_sol_types::SolCall>::abi_decode_raw(data, validate)
8478 .map(StakeTableCalls::validators)
8479 }
8480 validators
8481 },
8482 {
8483 fn token(
8484 data: &[u8],
8485 validate: bool,
8486 ) -> alloy_sol_types::Result<StakeTableCalls> {
8487 <tokenCall as alloy_sol_types::SolCall>::abi_decode_raw(data, validate)
8488 .map(StakeTableCalls::token)
8489 }
8490 token
8491 },
8492 ];
8493 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
8494 return Err(alloy_sol_types::Error::unknown_selector(
8495 <Self as alloy_sol_types::SolInterface>::NAME,
8496 selector,
8497 ));
8498 };
8499 DECODE_SHIMS[idx](data, validate)
8500 }
8501 #[inline]
8502 fn abi_encoded_size(&self) -> usize {
8503 match self {
8504 Self::UPGRADE_INTERFACE_VERSION(inner) => {
8505 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_encoded_size(
8506 inner,
8507 )
8508 },
8509 Self::_hashBlsKey(inner) => {
8510 <_hashBlsKeyCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8511 },
8512 Self::blsKeys(inner) => {
8513 <blsKeysCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8514 },
8515 Self::claimValidatorExit(inner) => {
8516 <claimValidatorExitCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8517 },
8518 Self::claimWithdrawal(inner) => {
8519 <claimWithdrawalCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8520 },
8521 Self::delegate(inner) => {
8522 <delegateCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8523 },
8524 Self::delegations(inner) => {
8525 <delegationsCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8526 },
8527 Self::deregisterValidator(inner) => {
8528 <deregisterValidatorCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8529 },
8530 Self::exitEscrowPeriod(inner) => {
8531 <exitEscrowPeriodCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8532 },
8533 Self::getVersion(inner) => {
8534 <getVersionCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8535 },
8536 Self::initialize(inner) => {
8537 <initializeCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8538 },
8539 Self::initializedAtBlock(inner) => {
8540 <initializedAtBlockCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8541 },
8542 Self::lightClient(inner) => {
8543 <lightClientCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8544 },
8545 Self::owner(inner) => {
8546 <ownerCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8547 },
8548 Self::proxiableUUID(inner) => {
8549 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8550 },
8551 Self::registerValidator(inner) => {
8552 <registerValidatorCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8553 },
8554 Self::renounceOwnership(inner) => {
8555 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8556 },
8557 Self::token(inner) => {
8558 <tokenCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8559 },
8560 Self::transferOwnership(inner) => {
8561 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8562 },
8563 Self::undelegate(inner) => {
8564 <undelegateCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8565 },
8566 Self::undelegations(inner) => {
8567 <undelegationsCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8568 },
8569 Self::updateConsensusKeys(inner) => {
8570 <updateConsensusKeysCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8571 },
8572 Self::upgradeToAndCall(inner) => {
8573 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8574 },
8575 Self::validatorExits(inner) => {
8576 <validatorExitsCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8577 },
8578 Self::validators(inner) => {
8579 <validatorsCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
8580 },
8581 }
8582 }
8583 #[inline]
8584 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
8585 match self {
8586 Self::UPGRADE_INTERFACE_VERSION(inner) => {
8587 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_encode_raw(
8588 inner, out,
8589 )
8590 },
8591 Self::_hashBlsKey(inner) => {
8592 <_hashBlsKeyCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8593 },
8594 Self::blsKeys(inner) => {
8595 <blsKeysCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8596 },
8597 Self::claimValidatorExit(inner) => {
8598 <claimValidatorExitCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8599 },
8600 Self::claimWithdrawal(inner) => {
8601 <claimWithdrawalCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8602 },
8603 Self::delegate(inner) => {
8604 <delegateCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8605 },
8606 Self::delegations(inner) => {
8607 <delegationsCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8608 },
8609 Self::deregisterValidator(inner) => {
8610 <deregisterValidatorCall as alloy_sol_types::SolCall>::abi_encode_raw(
8611 inner, out,
8612 )
8613 },
8614 Self::exitEscrowPeriod(inner) => {
8615 <exitEscrowPeriodCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8616 },
8617 Self::getVersion(inner) => {
8618 <getVersionCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8619 },
8620 Self::initialize(inner) => {
8621 <initializeCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8622 },
8623 Self::initializedAtBlock(inner) => {
8624 <initializedAtBlockCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8625 },
8626 Self::lightClient(inner) => {
8627 <lightClientCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8628 },
8629 Self::owner(inner) => {
8630 <ownerCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8631 },
8632 Self::proxiableUUID(inner) => {
8633 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8634 },
8635 Self::registerValidator(inner) => {
8636 <registerValidatorCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8637 },
8638 Self::renounceOwnership(inner) => {
8639 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8640 },
8641 Self::token(inner) => {
8642 <tokenCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8643 },
8644 Self::transferOwnership(inner) => {
8645 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8646 },
8647 Self::undelegate(inner) => {
8648 <undelegateCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8649 },
8650 Self::undelegations(inner) => {
8651 <undelegationsCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8652 },
8653 Self::updateConsensusKeys(inner) => {
8654 <updateConsensusKeysCall as alloy_sol_types::SolCall>::abi_encode_raw(
8655 inner, out,
8656 )
8657 },
8658 Self::upgradeToAndCall(inner) => {
8659 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8660 },
8661 Self::validatorExits(inner) => {
8662 <validatorExitsCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8663 },
8664 Self::validators(inner) => {
8665 <validatorsCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
8666 },
8667 }
8668 }
8669 }
8670 #[derive(Debug, PartialEq, Eq, Hash)]
8672 pub enum StakeTableErrors {
8673 #[allow(missing_docs)]
8674 AddressEmptyCode(AddressEmptyCode),
8675 #[allow(missing_docs)]
8676 BLSSigVerificationFailed(BLSSigVerificationFailed),
8677 #[allow(missing_docs)]
8678 BlsKeyAlreadyUsed(BlsKeyAlreadyUsed),
8679 #[allow(missing_docs)]
8680 ERC1967InvalidImplementation(ERC1967InvalidImplementation),
8681 #[allow(missing_docs)]
8682 ERC1967NonPayable(ERC1967NonPayable),
8683 #[allow(missing_docs)]
8684 FailedInnerCall(FailedInnerCall),
8685 #[allow(missing_docs)]
8686 InsufficientAllowance(InsufficientAllowance),
8687 #[allow(missing_docs)]
8688 InsufficientBalance(InsufficientBalance),
8689 #[allow(missing_docs)]
8690 InvalidCommission(InvalidCommission),
8691 #[allow(missing_docs)]
8692 InvalidInitialization(InvalidInitialization),
8693 #[allow(missing_docs)]
8694 InvalidSchnorrVK(InvalidSchnorrVK),
8695 #[allow(missing_docs)]
8696 NotInitializing(NotInitializing),
8697 #[allow(missing_docs)]
8698 NothingToWithdraw(NothingToWithdraw),
8699 #[allow(missing_docs)]
8700 OwnableInvalidOwner(OwnableInvalidOwner),
8701 #[allow(missing_docs)]
8702 OwnableUnauthorizedAccount(OwnableUnauthorizedAccount),
8703 #[allow(missing_docs)]
8704 PrematureWithdrawal(PrematureWithdrawal),
8705 #[allow(missing_docs)]
8706 UUPSUnauthorizedCallContext(UUPSUnauthorizedCallContext),
8707 #[allow(missing_docs)]
8708 UUPSUnsupportedProxiableUUID(UUPSUnsupportedProxiableUUID),
8709 #[allow(missing_docs)]
8710 UndelegationAlreadyExists(UndelegationAlreadyExists),
8711 #[allow(missing_docs)]
8712 ValidatorAlreadyExited(ValidatorAlreadyExited),
8713 #[allow(missing_docs)]
8714 ValidatorAlreadyRegistered(ValidatorAlreadyRegistered),
8715 #[allow(missing_docs)]
8716 ValidatorInactive(ValidatorInactive),
8717 #[allow(missing_docs)]
8718 ValidatorNotExited(ValidatorNotExited),
8719 #[allow(missing_docs)]
8720 ZeroAddress(ZeroAddress),
8721 #[allow(missing_docs)]
8722 ZeroAmount(ZeroAmount),
8723 }
8724 #[automatically_derived]
8725 impl StakeTableErrors {
8726 pub const SELECTORS: &'static [[u8; 4usize]] = &[
8733 [1u8, 181u8, 20u8, 174u8],
8734 [6u8, 207u8, 67u8, 143u8],
8735 [12u8, 237u8, 62u8, 80u8],
8736 [17u8, 140u8, 218u8, 167u8],
8737 [20u8, 37u8, 234u8, 66u8],
8738 [30u8, 79u8, 189u8, 247u8],
8739 [31u8, 42u8, 32u8, 5u8],
8740 [42u8, 27u8, 45u8, 216u8],
8741 [76u8, 156u8, 140u8, 227u8],
8742 [80u8, 138u8, 121u8, 63u8],
8743 [90u8, 119u8, 67u8, 87u8],
8744 [146u8, 102u8, 83u8, 81u8],
8745 [153u8, 115u8, 247u8, 216u8],
8746 [153u8, 150u8, 179u8, 21u8],
8747 [170u8, 29u8, 73u8, 164u8],
8748 [179u8, 152u8, 151u8, 159u8],
8749 [208u8, 208u8, 79u8, 96u8],
8750 [212u8, 35u8, 164u8, 241u8],
8751 [215u8, 230u8, 188u8, 248u8],
8752 [217u8, 46u8, 35u8, 61u8],
8753 [220u8, 129u8, 219u8, 133u8],
8754 [224u8, 124u8, 141u8, 186u8],
8755 [234u8, 180u8, 169u8, 99u8],
8756 [242u8, 83u8, 20u8, 166u8],
8757 [249u8, 46u8, 232u8, 169u8],
8758 ];
8759 }
8760 #[automatically_derived]
8761 impl alloy_sol_types::SolInterface for StakeTableErrors {
8762 const NAME: &'static str = "StakeTableErrors";
8763 const MIN_DATA_LENGTH: usize = 0usize;
8764 const COUNT: usize = 25usize;
8765 #[inline]
8766 fn selector(&self) -> [u8; 4] {
8767 match self {
8768 Self::AddressEmptyCode(_) => {
8769 <AddressEmptyCode as alloy_sol_types::SolError>::SELECTOR
8770 },
8771 Self::BLSSigVerificationFailed(_) => {
8772 <BLSSigVerificationFailed as alloy_sol_types::SolError>::SELECTOR
8773 },
8774 Self::BlsKeyAlreadyUsed(_) => {
8775 <BlsKeyAlreadyUsed as alloy_sol_types::SolError>::SELECTOR
8776 },
8777 Self::ERC1967InvalidImplementation(_) => {
8778 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::SELECTOR
8779 },
8780 Self::ERC1967NonPayable(_) => {
8781 <ERC1967NonPayable as alloy_sol_types::SolError>::SELECTOR
8782 },
8783 Self::FailedInnerCall(_) => {
8784 <FailedInnerCall as alloy_sol_types::SolError>::SELECTOR
8785 },
8786 Self::InsufficientAllowance(_) => {
8787 <InsufficientAllowance as alloy_sol_types::SolError>::SELECTOR
8788 },
8789 Self::InsufficientBalance(_) => {
8790 <InsufficientBalance as alloy_sol_types::SolError>::SELECTOR
8791 },
8792 Self::InvalidCommission(_) => {
8793 <InvalidCommission as alloy_sol_types::SolError>::SELECTOR
8794 },
8795 Self::InvalidInitialization(_) => {
8796 <InvalidInitialization as alloy_sol_types::SolError>::SELECTOR
8797 },
8798 Self::InvalidSchnorrVK(_) => {
8799 <InvalidSchnorrVK as alloy_sol_types::SolError>::SELECTOR
8800 },
8801 Self::NotInitializing(_) => {
8802 <NotInitializing as alloy_sol_types::SolError>::SELECTOR
8803 },
8804 Self::NothingToWithdraw(_) => {
8805 <NothingToWithdraw as alloy_sol_types::SolError>::SELECTOR
8806 },
8807 Self::OwnableInvalidOwner(_) => {
8808 <OwnableInvalidOwner as alloy_sol_types::SolError>::SELECTOR
8809 },
8810 Self::OwnableUnauthorizedAccount(_) => {
8811 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::SELECTOR
8812 },
8813 Self::PrematureWithdrawal(_) => {
8814 <PrematureWithdrawal as alloy_sol_types::SolError>::SELECTOR
8815 },
8816 Self::UUPSUnauthorizedCallContext(_) => {
8817 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::SELECTOR
8818 },
8819 Self::UUPSUnsupportedProxiableUUID(_) => {
8820 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::SELECTOR
8821 },
8822 Self::UndelegationAlreadyExists(_) => {
8823 <UndelegationAlreadyExists as alloy_sol_types::SolError>::SELECTOR
8824 },
8825 Self::ValidatorAlreadyExited(_) => {
8826 <ValidatorAlreadyExited as alloy_sol_types::SolError>::SELECTOR
8827 },
8828 Self::ValidatorAlreadyRegistered(_) => {
8829 <ValidatorAlreadyRegistered as alloy_sol_types::SolError>::SELECTOR
8830 },
8831 Self::ValidatorInactive(_) => {
8832 <ValidatorInactive as alloy_sol_types::SolError>::SELECTOR
8833 },
8834 Self::ValidatorNotExited(_) => {
8835 <ValidatorNotExited as alloy_sol_types::SolError>::SELECTOR
8836 },
8837 Self::ZeroAddress(_) => <ZeroAddress as alloy_sol_types::SolError>::SELECTOR,
8838 Self::ZeroAmount(_) => <ZeroAmount as alloy_sol_types::SolError>::SELECTOR,
8839 }
8840 }
8841 #[inline]
8842 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
8843 Self::SELECTORS.get(i).copied()
8844 }
8845 #[inline]
8846 fn valid_selector(selector: [u8; 4]) -> bool {
8847 Self::SELECTORS.binary_search(&selector).is_ok()
8848 }
8849 #[inline]
8850 #[allow(non_snake_case)]
8851 fn abi_decode_raw(
8852 selector: [u8; 4],
8853 data: &[u8],
8854 validate: bool,
8855 ) -> alloy_sol_types::Result<Self> {
8856 static DECODE_SHIMS: &[fn(&[u8], bool) -> alloy_sol_types::Result<StakeTableErrors>] =
8857 &[
8858 {
8859 fn BlsKeyAlreadyUsed(
8860 data: &[u8],
8861 validate: bool,
8862 ) -> alloy_sol_types::Result<StakeTableErrors> {
8863 <BlsKeyAlreadyUsed as alloy_sol_types::SolError>::abi_decode_raw(
8864 data, validate,
8865 )
8866 .map(StakeTableErrors::BlsKeyAlreadyUsed)
8867 }
8868 BlsKeyAlreadyUsed
8869 },
8870 {
8871 fn InvalidSchnorrVK(
8872 data: &[u8],
8873 validate: bool,
8874 ) -> alloy_sol_types::Result<StakeTableErrors> {
8875 <InvalidSchnorrVK as alloy_sol_types::SolError>::abi_decode_raw(
8876 data, validate,
8877 )
8878 .map(StakeTableErrors::InvalidSchnorrVK)
8879 }
8880 InvalidSchnorrVK
8881 },
8882 {
8883 fn BLSSigVerificationFailed(
8884 data: &[u8],
8885 validate: bool,
8886 ) -> alloy_sol_types::Result<StakeTableErrors> {
8887 <BLSSigVerificationFailed as alloy_sol_types::SolError>::abi_decode_raw(
8888 data, validate,
8889 )
8890 .map(StakeTableErrors::BLSSigVerificationFailed)
8891 }
8892 BLSSigVerificationFailed
8893 },
8894 {
8895 fn OwnableUnauthorizedAccount(
8896 data: &[u8],
8897 validate: bool,
8898 ) -> alloy_sol_types::Result<StakeTableErrors> {
8899 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_decode_raw(
8900 data,
8901 validate,
8902 )
8903 .map(StakeTableErrors::OwnableUnauthorizedAccount)
8904 }
8905 OwnableUnauthorizedAccount
8906 },
8907 {
8908 fn FailedInnerCall(
8909 data: &[u8],
8910 validate: bool,
8911 ) -> alloy_sol_types::Result<StakeTableErrors> {
8912 <FailedInnerCall as alloy_sol_types::SolError>::abi_decode_raw(
8913 data, validate,
8914 )
8915 .map(StakeTableErrors::FailedInnerCall)
8916 }
8917 FailedInnerCall
8918 },
8919 {
8920 fn OwnableInvalidOwner(
8921 data: &[u8],
8922 validate: bool,
8923 ) -> alloy_sol_types::Result<StakeTableErrors> {
8924 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_decode_raw(
8925 data, validate,
8926 )
8927 .map(StakeTableErrors::OwnableInvalidOwner)
8928 }
8929 OwnableInvalidOwner
8930 },
8931 {
8932 fn ZeroAmount(
8933 data: &[u8],
8934 validate: bool,
8935 ) -> alloy_sol_types::Result<StakeTableErrors> {
8936 <ZeroAmount as alloy_sol_types::SolError>::abi_decode_raw(
8937 data, validate,
8938 )
8939 .map(StakeTableErrors::ZeroAmount)
8940 }
8941 ZeroAmount
8942 },
8943 {
8944 fn InsufficientAllowance(
8945 data: &[u8],
8946 validate: bool,
8947 ) -> alloy_sol_types::Result<StakeTableErrors> {
8948 <InsufficientAllowance as alloy_sol_types::SolError>::abi_decode_raw(
8949 data, validate,
8950 )
8951 .map(StakeTableErrors::InsufficientAllowance)
8952 }
8953 InsufficientAllowance
8954 },
8955 {
8956 fn ERC1967InvalidImplementation(
8957 data: &[u8],
8958 validate: bool,
8959 ) -> alloy_sol_types::Result<StakeTableErrors> {
8960 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_decode_raw(
8961 data,
8962 validate,
8963 )
8964 .map(StakeTableErrors::ERC1967InvalidImplementation)
8965 }
8966 ERC1967InvalidImplementation
8967 },
8968 {
8969 fn ValidatorInactive(
8970 data: &[u8],
8971 validate: bool,
8972 ) -> alloy_sol_types::Result<StakeTableErrors> {
8973 <ValidatorInactive as alloy_sol_types::SolError>::abi_decode_raw(
8974 data, validate,
8975 )
8976 .map(StakeTableErrors::ValidatorInactive)
8977 }
8978 ValidatorInactive
8979 },
8980 {
8981 fn PrematureWithdrawal(
8982 data: &[u8],
8983 validate: bool,
8984 ) -> alloy_sol_types::Result<StakeTableErrors> {
8985 <PrematureWithdrawal as alloy_sol_types::SolError>::abi_decode_raw(
8986 data, validate,
8987 )
8988 .map(StakeTableErrors::PrematureWithdrawal)
8989 }
8990 PrematureWithdrawal
8991 },
8992 {
8993 fn InsufficientBalance(
8994 data: &[u8],
8995 validate: bool,
8996 ) -> alloy_sol_types::Result<StakeTableErrors> {
8997 <InsufficientBalance as alloy_sol_types::SolError>::abi_decode_raw(
8998 data, validate,
8999 )
9000 .map(StakeTableErrors::InsufficientBalance)
9001 }
9002 InsufficientBalance
9003 },
9004 {
9005 fn ValidatorAlreadyRegistered(
9006 data: &[u8],
9007 validate: bool,
9008 ) -> alloy_sol_types::Result<StakeTableErrors> {
9009 <ValidatorAlreadyRegistered as alloy_sol_types::SolError>::abi_decode_raw(
9010 data,
9011 validate,
9012 )
9013 .map(StakeTableErrors::ValidatorAlreadyRegistered)
9014 }
9015 ValidatorAlreadyRegistered
9016 },
9017 {
9018 fn AddressEmptyCode(
9019 data: &[u8],
9020 validate: bool,
9021 ) -> alloy_sol_types::Result<StakeTableErrors> {
9022 <AddressEmptyCode as alloy_sol_types::SolError>::abi_decode_raw(
9023 data, validate,
9024 )
9025 .map(StakeTableErrors::AddressEmptyCode)
9026 }
9027 AddressEmptyCode
9028 },
9029 {
9030 fn UUPSUnsupportedProxiableUUID(
9031 data: &[u8],
9032 validate: bool,
9033 ) -> alloy_sol_types::Result<StakeTableErrors> {
9034 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_decode_raw(
9035 data,
9036 validate,
9037 )
9038 .map(StakeTableErrors::UUPSUnsupportedProxiableUUID)
9039 }
9040 UUPSUnsupportedProxiableUUID
9041 },
9042 {
9043 fn ERC1967NonPayable(
9044 data: &[u8],
9045 validate: bool,
9046 ) -> alloy_sol_types::Result<StakeTableErrors> {
9047 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_decode_raw(
9048 data, validate,
9049 )
9050 .map(StakeTableErrors::ERC1967NonPayable)
9051 }
9052 ERC1967NonPayable
9053 },
9054 {
9055 fn NothingToWithdraw(
9056 data: &[u8],
9057 validate: bool,
9058 ) -> alloy_sol_types::Result<StakeTableErrors> {
9059 <NothingToWithdraw as alloy_sol_types::SolError>::abi_decode_raw(
9060 data, validate,
9061 )
9062 .map(StakeTableErrors::NothingToWithdraw)
9063 }
9064 NothingToWithdraw
9065 },
9066 {
9067 fn UndelegationAlreadyExists(
9068 data: &[u8],
9069 validate: bool,
9070 ) -> alloy_sol_types::Result<StakeTableErrors> {
9071 <UndelegationAlreadyExists as alloy_sol_types::SolError>::abi_decode_raw(
9072 data,
9073 validate,
9074 )
9075 .map(StakeTableErrors::UndelegationAlreadyExists)
9076 }
9077 UndelegationAlreadyExists
9078 },
9079 {
9080 fn NotInitializing(
9081 data: &[u8],
9082 validate: bool,
9083 ) -> alloy_sol_types::Result<StakeTableErrors> {
9084 <NotInitializing as alloy_sol_types::SolError>::abi_decode_raw(
9085 data, validate,
9086 )
9087 .map(StakeTableErrors::NotInitializing)
9088 }
9089 NotInitializing
9090 },
9091 {
9092 fn ZeroAddress(
9093 data: &[u8],
9094 validate: bool,
9095 ) -> alloy_sol_types::Result<StakeTableErrors> {
9096 <ZeroAddress as alloy_sol_types::SolError>::abi_decode_raw(
9097 data, validate,
9098 )
9099 .map(StakeTableErrors::ZeroAddress)
9100 }
9101 ZeroAddress
9102 },
9103 {
9104 fn InvalidCommission(
9105 data: &[u8],
9106 validate: bool,
9107 ) -> alloy_sol_types::Result<StakeTableErrors> {
9108 <InvalidCommission as alloy_sol_types::SolError>::abi_decode_raw(
9109 data, validate,
9110 )
9111 .map(StakeTableErrors::InvalidCommission)
9112 }
9113 InvalidCommission
9114 },
9115 {
9116 fn UUPSUnauthorizedCallContext(
9117 data: &[u8],
9118 validate: bool,
9119 ) -> alloy_sol_types::Result<StakeTableErrors> {
9120 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_decode_raw(
9121 data,
9122 validate,
9123 )
9124 .map(StakeTableErrors::UUPSUnauthorizedCallContext)
9125 }
9126 UUPSUnauthorizedCallContext
9127 },
9128 {
9129 fn ValidatorAlreadyExited(
9130 data: &[u8],
9131 validate: bool,
9132 ) -> alloy_sol_types::Result<StakeTableErrors> {
9133 <ValidatorAlreadyExited as alloy_sol_types::SolError>::abi_decode_raw(
9134 data, validate,
9135 )
9136 .map(StakeTableErrors::ValidatorAlreadyExited)
9137 }
9138 ValidatorAlreadyExited
9139 },
9140 {
9141 fn ValidatorNotExited(
9142 data: &[u8],
9143 validate: bool,
9144 ) -> alloy_sol_types::Result<StakeTableErrors> {
9145 <ValidatorNotExited as alloy_sol_types::SolError>::abi_decode_raw(
9146 data, validate,
9147 )
9148 .map(StakeTableErrors::ValidatorNotExited)
9149 }
9150 ValidatorNotExited
9151 },
9152 {
9153 fn InvalidInitialization(
9154 data: &[u8],
9155 validate: bool,
9156 ) -> alloy_sol_types::Result<StakeTableErrors> {
9157 <InvalidInitialization as alloy_sol_types::SolError>::abi_decode_raw(
9158 data, validate,
9159 )
9160 .map(StakeTableErrors::InvalidInitialization)
9161 }
9162 InvalidInitialization
9163 },
9164 ];
9165 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
9166 return Err(alloy_sol_types::Error::unknown_selector(
9167 <Self as alloy_sol_types::SolInterface>::NAME,
9168 selector,
9169 ));
9170 };
9171 DECODE_SHIMS[idx](data, validate)
9172 }
9173 #[inline]
9174 fn abi_encoded_size(&self) -> usize {
9175 match self {
9176 Self::AddressEmptyCode(inner) => {
9177 <AddressEmptyCode as alloy_sol_types::SolError>::abi_encoded_size(inner)
9178 },
9179 Self::BLSSigVerificationFailed(inner) => {
9180 <BLSSigVerificationFailed as alloy_sol_types::SolError>::abi_encoded_size(inner)
9181 },
9182 Self::BlsKeyAlreadyUsed(inner) => {
9183 <BlsKeyAlreadyUsed as alloy_sol_types::SolError>::abi_encoded_size(inner)
9184 },
9185 Self::ERC1967InvalidImplementation(inner) => {
9186 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_encoded_size(
9187 inner,
9188 )
9189 },
9190 Self::ERC1967NonPayable(inner) => {
9191 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_encoded_size(inner)
9192 },
9193 Self::FailedInnerCall(inner) => {
9194 <FailedInnerCall as alloy_sol_types::SolError>::abi_encoded_size(inner)
9195 },
9196 Self::InsufficientAllowance(inner) => {
9197 <InsufficientAllowance as alloy_sol_types::SolError>::abi_encoded_size(inner)
9198 },
9199 Self::InsufficientBalance(inner) => {
9200 <InsufficientBalance as alloy_sol_types::SolError>::abi_encoded_size(inner)
9201 },
9202 Self::InvalidCommission(inner) => {
9203 <InvalidCommission as alloy_sol_types::SolError>::abi_encoded_size(inner)
9204 },
9205 Self::InvalidInitialization(inner) => {
9206 <InvalidInitialization as alloy_sol_types::SolError>::abi_encoded_size(inner)
9207 },
9208 Self::InvalidSchnorrVK(inner) => {
9209 <InvalidSchnorrVK as alloy_sol_types::SolError>::abi_encoded_size(inner)
9210 },
9211 Self::NotInitializing(inner) => {
9212 <NotInitializing as alloy_sol_types::SolError>::abi_encoded_size(inner)
9213 },
9214 Self::NothingToWithdraw(inner) => {
9215 <NothingToWithdraw as alloy_sol_types::SolError>::abi_encoded_size(inner)
9216 },
9217 Self::OwnableInvalidOwner(inner) => {
9218 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_encoded_size(inner)
9219 },
9220 Self::OwnableUnauthorizedAccount(inner) => {
9221 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_encoded_size(
9222 inner,
9223 )
9224 },
9225 Self::PrematureWithdrawal(inner) => {
9226 <PrematureWithdrawal as alloy_sol_types::SolError>::abi_encoded_size(inner)
9227 },
9228 Self::UUPSUnauthorizedCallContext(inner) => {
9229 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_encoded_size(
9230 inner,
9231 )
9232 },
9233 Self::UUPSUnsupportedProxiableUUID(inner) => {
9234 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_encoded_size(
9235 inner,
9236 )
9237 },
9238 Self::UndelegationAlreadyExists(inner) => {
9239 <UndelegationAlreadyExists as alloy_sol_types::SolError>::abi_encoded_size(
9240 inner,
9241 )
9242 },
9243 Self::ValidatorAlreadyExited(inner) => {
9244 <ValidatorAlreadyExited as alloy_sol_types::SolError>::abi_encoded_size(inner)
9245 },
9246 Self::ValidatorAlreadyRegistered(inner) => {
9247 <ValidatorAlreadyRegistered as alloy_sol_types::SolError>::abi_encoded_size(
9248 inner,
9249 )
9250 },
9251 Self::ValidatorInactive(inner) => {
9252 <ValidatorInactive as alloy_sol_types::SolError>::abi_encoded_size(inner)
9253 },
9254 Self::ValidatorNotExited(inner) => {
9255 <ValidatorNotExited as alloy_sol_types::SolError>::abi_encoded_size(inner)
9256 },
9257 Self::ZeroAddress(inner) => {
9258 <ZeroAddress as alloy_sol_types::SolError>::abi_encoded_size(inner)
9259 },
9260 Self::ZeroAmount(inner) => {
9261 <ZeroAmount as alloy_sol_types::SolError>::abi_encoded_size(inner)
9262 },
9263 }
9264 }
9265 #[inline]
9266 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
9267 match self {
9268 Self::AddressEmptyCode(inner) => {
9269 <AddressEmptyCode as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9270 },
9271 Self::BLSSigVerificationFailed(inner) => {
9272 <BLSSigVerificationFailed as alloy_sol_types::SolError>::abi_encode_raw(
9273 inner, out,
9274 )
9275 },
9276 Self::BlsKeyAlreadyUsed(inner) => {
9277 <BlsKeyAlreadyUsed as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9278 },
9279 Self::ERC1967InvalidImplementation(inner) => {
9280 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_encode_raw(
9281 inner, out,
9282 )
9283 },
9284 Self::ERC1967NonPayable(inner) => {
9285 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9286 },
9287 Self::FailedInnerCall(inner) => {
9288 <FailedInnerCall as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9289 },
9290 Self::InsufficientAllowance(inner) => {
9291 <InsufficientAllowance as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9292 },
9293 Self::InsufficientBalance(inner) => {
9294 <InsufficientBalance as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9295 },
9296 Self::InvalidCommission(inner) => {
9297 <InvalidCommission as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9298 },
9299 Self::InvalidInitialization(inner) => {
9300 <InvalidInitialization as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9301 },
9302 Self::InvalidSchnorrVK(inner) => {
9303 <InvalidSchnorrVK as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9304 },
9305 Self::NotInitializing(inner) => {
9306 <NotInitializing as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9307 },
9308 Self::NothingToWithdraw(inner) => {
9309 <NothingToWithdraw as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9310 },
9311 Self::OwnableInvalidOwner(inner) => {
9312 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9313 },
9314 Self::OwnableUnauthorizedAccount(inner) => {
9315 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_encode_raw(
9316 inner, out,
9317 )
9318 },
9319 Self::PrematureWithdrawal(inner) => {
9320 <PrematureWithdrawal as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9321 },
9322 Self::UUPSUnauthorizedCallContext(inner) => {
9323 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_encode_raw(
9324 inner, out,
9325 )
9326 },
9327 Self::UUPSUnsupportedProxiableUUID(inner) => {
9328 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_encode_raw(
9329 inner, out,
9330 )
9331 },
9332 Self::UndelegationAlreadyExists(inner) => {
9333 <UndelegationAlreadyExists as alloy_sol_types::SolError>::abi_encode_raw(
9334 inner, out,
9335 )
9336 },
9337 Self::ValidatorAlreadyExited(inner) => {
9338 <ValidatorAlreadyExited as alloy_sol_types::SolError>::abi_encode_raw(
9339 inner, out,
9340 )
9341 },
9342 Self::ValidatorAlreadyRegistered(inner) => {
9343 <ValidatorAlreadyRegistered as alloy_sol_types::SolError>::abi_encode_raw(
9344 inner, out,
9345 )
9346 },
9347 Self::ValidatorInactive(inner) => {
9348 <ValidatorInactive as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9349 },
9350 Self::ValidatorNotExited(inner) => {
9351 <ValidatorNotExited as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9352 },
9353 Self::ZeroAddress(inner) => {
9354 <ZeroAddress as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9355 },
9356 Self::ZeroAmount(inner) => {
9357 <ZeroAmount as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
9358 },
9359 }
9360 }
9361 }
9362 #[derive()]
9364 pub enum StakeTableEvents {
9365 #[allow(missing_docs)]
9366 ConsensusKeysUpdated(ConsensusKeysUpdated),
9367 #[allow(missing_docs)]
9368 Delegated(Delegated),
9369 #[allow(missing_docs)]
9370 Initialized(Initialized),
9371 #[allow(missing_docs)]
9372 OwnershipTransferred(OwnershipTransferred),
9373 #[allow(missing_docs)]
9374 Undelegated(Undelegated),
9375 #[allow(missing_docs)]
9376 Upgrade(Upgrade),
9377 #[allow(missing_docs)]
9378 Upgraded(Upgraded),
9379 #[allow(missing_docs)]
9380 ValidatorExit(ValidatorExit),
9381 #[allow(missing_docs)]
9382 ValidatorRegistered(ValidatorRegistered),
9383 #[allow(missing_docs)]
9384 Withdrawal(Withdrawal),
9385 }
9386 #[automatically_derived]
9387 impl StakeTableEvents {
9388 pub const SELECTORS: &'static [[u8; 32usize]] = &[
9395 [
9396 77u8, 16u8, 189u8, 4u8, 151u8, 117u8, 199u8, 123u8, 215u8, 242u8, 85u8, 25u8, 90u8,
9397 251u8, 165u8, 8u8, 128u8, 40u8, 236u8, 179u8, 199u8, 194u8, 119u8, 211u8, 147u8,
9398 204u8, 255u8, 121u8, 52u8, 242u8, 249u8, 44u8,
9399 ],
9400 [
9401 127u8, 207u8, 83u8, 44u8, 21u8, 240u8, 166u8, 219u8, 11u8, 214u8, 208u8, 224u8,
9402 56u8, 190u8, 167u8, 29u8, 48u8, 216u8, 8u8, 199u8, 217u8, 140u8, 179u8, 191u8,
9403 114u8, 104u8, 169u8, 91u8, 245u8, 8u8, 27u8, 101u8,
9404 ],
9405 [
9406 128u8, 216u8, 164u8, 161u8, 102u8, 51u8, 40u8, 169u8, 152u8, 212u8, 85u8, 91u8,
9407 162u8, 29u8, 139u8, 186u8, 110u8, 241u8, 87u8, 106u8, 140u8, 94u8, 157u8, 39u8,
9408 249u8, 197u8, 69u8, 241u8, 163u8, 213u8, 43u8, 29u8,
9409 ],
9410 [
9411 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8, 31u8, 208u8,
9412 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8, 218u8, 175u8, 227u8,
9413 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8,
9414 ],
9415 [
9416 188u8, 124u8, 215u8, 90u8, 32u8, 238u8, 39u8, 253u8, 154u8, 222u8, 186u8, 179u8,
9417 32u8, 65u8, 247u8, 85u8, 33u8, 77u8, 188u8, 107u8, 255u8, 169u8, 12u8, 192u8, 34u8,
9418 91u8, 57u8, 218u8, 46u8, 92u8, 45u8, 59u8,
9419 ],
9420 [
9421 199u8, 245u8, 5u8, 178u8, 243u8, 113u8, 174u8, 33u8, 117u8, 238u8, 73u8, 19u8,
9422 244u8, 73u8, 158u8, 31u8, 38u8, 51u8, 167u8, 181u8, 147u8, 99u8, 33u8, 238u8,
9423 209u8, 205u8, 174u8, 182u8, 17u8, 81u8, 129u8, 210u8,
9424 ],
9425 [
9426 229u8, 84u8, 26u8, 107u8, 97u8, 3u8, 212u8, 250u8, 126u8, 2u8, 30u8, 213u8, 79u8,
9427 173u8, 57u8, 198u8, 111u8, 39u8, 167u8, 107u8, 209u8, 61u8, 55u8, 76u8, 246u8,
9428 36u8, 10u8, 230u8, 189u8, 11u8, 183u8, 43u8,
9429 ],
9430 [
9431 246u8, 232u8, 53u8, 156u8, 87u8, 82u8, 11u8, 70u8, 150u8, 52u8, 115u8, 107u8,
9432 252u8, 59u8, 183u8, 236u8, 92u8, 189u8, 26u8, 11u8, 210u8, 139u8, 16u8, 168u8,
9433 39u8, 87u8, 147u8, 187u8, 115u8, 11u8, 121u8, 127u8,
9434 ],
9435 [
9436 247u8, 135u8, 33u8, 34u8, 110u8, 254u8, 154u8, 27u8, 182u8, 120u8, 24u8, 154u8,
9437 22u8, 209u8, 85u8, 73u8, 40u8, 185u8, 242u8, 25u8, 46u8, 44u8, 185u8, 62u8, 237u8,
9438 168u8, 59u8, 121u8, 250u8, 64u8, 0u8, 125u8,
9439 ],
9440 [
9441 251u8, 36u8, 48u8, 83u8, 84u8, 200u8, 119u8, 98u8, 213u8, 87u8, 72u8, 122u8, 228u8,
9442 165u8, 100u8, 232u8, 208u8, 62u8, 203u8, 185u8, 169u8, 125u8, 216u8, 175u8, 255u8,
9443 142u8, 31u8, 111u8, 202u8, 240u8, 221u8, 22u8,
9444 ],
9445 ];
9446 }
9447 #[automatically_derived]
9448 impl alloy_sol_types::SolEventInterface for StakeTableEvents {
9449 const NAME: &'static str = "StakeTableEvents";
9450 const COUNT: usize = 10usize;
9451 fn decode_raw_log(
9452 topics: &[alloy_sol_types::Word],
9453 data: &[u8],
9454 validate: bool,
9455 ) -> alloy_sol_types::Result<Self> {
9456 match topics.first().copied() {
9457 Some(<ConsensusKeysUpdated as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
9458 <ConsensusKeysUpdated as alloy_sol_types::SolEvent>::decode_raw_log(
9459 topics, data, validate,
9460 )
9461 .map(Self::ConsensusKeysUpdated)
9462 },
9463 Some(<Delegated as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
9464 <Delegated as alloy_sol_types::SolEvent>::decode_raw_log(topics, data, validate)
9465 .map(Self::Delegated)
9466 },
9467 Some(<Initialized as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
9468 <Initialized as alloy_sol_types::SolEvent>::decode_raw_log(
9469 topics, data, validate,
9470 )
9471 .map(Self::Initialized)
9472 },
9473 Some(<OwnershipTransferred as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
9474 <OwnershipTransferred as alloy_sol_types::SolEvent>::decode_raw_log(
9475 topics, data, validate,
9476 )
9477 .map(Self::OwnershipTransferred)
9478 },
9479 Some(<Undelegated as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
9480 <Undelegated as alloy_sol_types::SolEvent>::decode_raw_log(
9481 topics, data, validate,
9482 )
9483 .map(Self::Undelegated)
9484 },
9485 Some(<Upgrade as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
9486 <Upgrade as alloy_sol_types::SolEvent>::decode_raw_log(topics, data, validate)
9487 .map(Self::Upgrade)
9488 },
9489 Some(<Upgraded as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
9490 <Upgraded as alloy_sol_types::SolEvent>::decode_raw_log(topics, data, validate)
9491 .map(Self::Upgraded)
9492 },
9493 Some(<ValidatorExit as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
9494 <ValidatorExit as alloy_sol_types::SolEvent>::decode_raw_log(
9495 topics, data, validate,
9496 )
9497 .map(Self::ValidatorExit)
9498 },
9499 Some(<ValidatorRegistered as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
9500 <ValidatorRegistered as alloy_sol_types::SolEvent>::decode_raw_log(
9501 topics, data, validate,
9502 )
9503 .map(Self::ValidatorRegistered)
9504 },
9505 Some(<Withdrawal as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
9506 <Withdrawal as alloy_sol_types::SolEvent>::decode_raw_log(
9507 topics, data, validate,
9508 )
9509 .map(Self::Withdrawal)
9510 },
9511 _ => alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog {
9512 name: <Self as alloy_sol_types::SolEventInterface>::NAME,
9513 log: alloy_sol_types::private::Box::new(
9514 alloy_sol_types::private::LogData::new_unchecked(
9515 topics.to_vec(),
9516 data.to_vec().into(),
9517 ),
9518 ),
9519 }),
9520 }
9521 }
9522 }
9523 #[automatically_derived]
9524 impl alloy_sol_types::private::IntoLogData for StakeTableEvents {
9525 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
9526 match self {
9527 Self::ConsensusKeysUpdated(inner) => {
9528 alloy_sol_types::private::IntoLogData::to_log_data(inner)
9529 },
9530 Self::Delegated(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner),
9531 Self::Initialized(inner) => {
9532 alloy_sol_types::private::IntoLogData::to_log_data(inner)
9533 },
9534 Self::OwnershipTransferred(inner) => {
9535 alloy_sol_types::private::IntoLogData::to_log_data(inner)
9536 },
9537 Self::Undelegated(inner) => {
9538 alloy_sol_types::private::IntoLogData::to_log_data(inner)
9539 },
9540 Self::Upgrade(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner),
9541 Self::Upgraded(inner) => alloy_sol_types::private::IntoLogData::to_log_data(inner),
9542 Self::ValidatorExit(inner) => {
9543 alloy_sol_types::private::IntoLogData::to_log_data(inner)
9544 },
9545 Self::ValidatorRegistered(inner) => {
9546 alloy_sol_types::private::IntoLogData::to_log_data(inner)
9547 },
9548 Self::Withdrawal(inner) => {
9549 alloy_sol_types::private::IntoLogData::to_log_data(inner)
9550 },
9551 }
9552 }
9553 fn into_log_data(self) -> alloy_sol_types::private::LogData {
9554 match self {
9555 Self::ConsensusKeysUpdated(inner) => {
9556 alloy_sol_types::private::IntoLogData::into_log_data(inner)
9557 },
9558 Self::Delegated(inner) => {
9559 alloy_sol_types::private::IntoLogData::into_log_data(inner)
9560 },
9561 Self::Initialized(inner) => {
9562 alloy_sol_types::private::IntoLogData::into_log_data(inner)
9563 },
9564 Self::OwnershipTransferred(inner) => {
9565 alloy_sol_types::private::IntoLogData::into_log_data(inner)
9566 },
9567 Self::Undelegated(inner) => {
9568 alloy_sol_types::private::IntoLogData::into_log_data(inner)
9569 },
9570 Self::Upgrade(inner) => alloy_sol_types::private::IntoLogData::into_log_data(inner),
9571 Self::Upgraded(inner) => {
9572 alloy_sol_types::private::IntoLogData::into_log_data(inner)
9573 },
9574 Self::ValidatorExit(inner) => {
9575 alloy_sol_types::private::IntoLogData::into_log_data(inner)
9576 },
9577 Self::ValidatorRegistered(inner) => {
9578 alloy_sol_types::private::IntoLogData::into_log_data(inner)
9579 },
9580 Self::Withdrawal(inner) => {
9581 alloy_sol_types::private::IntoLogData::into_log_data(inner)
9582 },
9583 }
9584 }
9585 }
9586 use alloy::contract as alloy_contract;
9587 #[inline]
9591 pub const fn new<
9592 T: alloy_contract::private::Transport + ::core::clone::Clone,
9593 P: alloy_contract::private::Provider<T, N>,
9594 N: alloy_contract::private::Network,
9595 >(
9596 address: alloy_sol_types::private::Address,
9597 provider: P,
9598 ) -> StakeTableInstance<T, P, N> {
9599 StakeTableInstance::<T, P, N>::new(address, provider)
9600 }
9601 #[inline]
9607 pub fn deploy<
9608 T: alloy_contract::private::Transport + ::core::clone::Clone,
9609 P: alloy_contract::private::Provider<T, N>,
9610 N: alloy_contract::private::Network,
9611 >(
9612 provider: P,
9613 ) -> impl ::core::future::Future<Output = alloy_contract::Result<StakeTableInstance<T, P, N>>>
9614 {
9615 StakeTableInstance::<T, P, N>::deploy(provider)
9616 }
9617 #[inline]
9623 pub fn deploy_builder<
9624 T: alloy_contract::private::Transport + ::core::clone::Clone,
9625 P: alloy_contract::private::Provider<T, N>,
9626 N: alloy_contract::private::Network,
9627 >(
9628 provider: P,
9629 ) -> alloy_contract::RawCallBuilder<T, P, N> {
9630 StakeTableInstance::<T, P, N>::deploy_builder(provider)
9631 }
9632 #[derive(Clone)]
9644 pub struct StakeTableInstance<T, P, N = alloy_contract::private::Ethereum> {
9645 address: alloy_sol_types::private::Address,
9646 provider: P,
9647 _network_transport: ::core::marker::PhantomData<(N, T)>,
9648 }
9649 #[automatically_derived]
9650 impl<T, P, N> ::core::fmt::Debug for StakeTableInstance<T, P, N> {
9651 #[inline]
9652 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
9653 f.debug_tuple("StakeTableInstance")
9654 .field(&self.address)
9655 .finish()
9656 }
9657 }
9658 #[automatically_derived]
9660 impl<
9661 T: alloy_contract::private::Transport + ::core::clone::Clone,
9662 P: alloy_contract::private::Provider<T, N>,
9663 N: alloy_contract::private::Network,
9664 > StakeTableInstance<T, P, N>
9665 {
9666 #[inline]
9670 pub const fn new(address: alloy_sol_types::private::Address, provider: P) -> Self {
9671 Self {
9672 address,
9673 provider,
9674 _network_transport: ::core::marker::PhantomData,
9675 }
9676 }
9677 #[inline]
9683 pub async fn deploy(provider: P) -> alloy_contract::Result<StakeTableInstance<T, P, N>> {
9684 let call_builder = Self::deploy_builder(provider);
9685 let contract_address = call_builder.deploy().await?;
9686 Ok(Self::new(contract_address, call_builder.provider))
9687 }
9688 #[inline]
9694 pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder<T, P, N> {
9695 alloy_contract::RawCallBuilder::new_raw_deploy(
9696 provider,
9697 ::core::clone::Clone::clone(&BYTECODE),
9698 )
9699 }
9700 #[inline]
9702 pub const fn address(&self) -> &alloy_sol_types::private::Address {
9703 &self.address
9704 }
9705 #[inline]
9707 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
9708 self.address = address;
9709 }
9710 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
9712 self.set_address(address);
9713 self
9714 }
9715 #[inline]
9717 pub const fn provider(&self) -> &P {
9718 &self.provider
9719 }
9720 }
9721 impl<T, P: ::core::clone::Clone, N> StakeTableInstance<T, &P, N> {
9722 #[inline]
9724 pub fn with_cloned_provider(self) -> StakeTableInstance<T, P, N> {
9725 StakeTableInstance {
9726 address: self.address,
9727 provider: ::core::clone::Clone::clone(&self.provider),
9728 _network_transport: ::core::marker::PhantomData,
9729 }
9730 }
9731 }
9732 #[automatically_derived]
9734 impl<
9735 T: alloy_contract::private::Transport + ::core::clone::Clone,
9736 P: alloy_contract::private::Provider<T, N>,
9737 N: alloy_contract::private::Network,
9738 > StakeTableInstance<T, P, N>
9739 {
9740 pub fn call_builder<C: alloy_sol_types::SolCall>(
9745 &self,
9746 call: &C,
9747 ) -> alloy_contract::SolCallBuilder<T, &P, C, N> {
9748 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
9749 }
9750 pub fn UPGRADE_INTERFACE_VERSION(
9752 &self,
9753 ) -> alloy_contract::SolCallBuilder<T, &P, UPGRADE_INTERFACE_VERSIONCall, N> {
9754 self.call_builder(&UPGRADE_INTERFACE_VERSIONCall {})
9755 }
9756 pub fn _hashBlsKey(
9758 &self,
9759 blsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
9760 ) -> alloy_contract::SolCallBuilder<T, &P, _hashBlsKeyCall, N> {
9761 self.call_builder(&_hashBlsKeyCall { blsVK })
9762 }
9763 pub fn blsKeys(
9765 &self,
9766 blsKeyHash: alloy::sol_types::private::FixedBytes<32>,
9767 ) -> alloy_contract::SolCallBuilder<T, &P, blsKeysCall, N> {
9768 self.call_builder(&blsKeysCall { blsKeyHash })
9769 }
9770 pub fn claimValidatorExit(
9772 &self,
9773 validator: alloy::sol_types::private::Address,
9774 ) -> alloy_contract::SolCallBuilder<T, &P, claimValidatorExitCall, N> {
9775 self.call_builder(&claimValidatorExitCall { validator })
9776 }
9777 pub fn claimWithdrawal(
9779 &self,
9780 validator: alloy::sol_types::private::Address,
9781 ) -> alloy_contract::SolCallBuilder<T, &P, claimWithdrawalCall, N> {
9782 self.call_builder(&claimWithdrawalCall { validator })
9783 }
9784 pub fn delegate(
9786 &self,
9787 validator: alloy::sol_types::private::Address,
9788 amount: alloy::sol_types::private::primitives::aliases::U256,
9789 ) -> alloy_contract::SolCallBuilder<T, &P, delegateCall, N> {
9790 self.call_builder(&delegateCall { validator, amount })
9791 }
9792 pub fn delegations(
9794 &self,
9795 validator: alloy::sol_types::private::Address,
9796 delegator: alloy::sol_types::private::Address,
9797 ) -> alloy_contract::SolCallBuilder<T, &P, delegationsCall, N> {
9798 self.call_builder(&delegationsCall {
9799 validator,
9800 delegator,
9801 })
9802 }
9803 pub fn deregisterValidator(
9805 &self,
9806 ) -> alloy_contract::SolCallBuilder<T, &P, deregisterValidatorCall, N> {
9807 self.call_builder(&deregisterValidatorCall {})
9808 }
9809 pub fn exitEscrowPeriod(
9811 &self,
9812 ) -> alloy_contract::SolCallBuilder<T, &P, exitEscrowPeriodCall, N> {
9813 self.call_builder(&exitEscrowPeriodCall {})
9814 }
9815 pub fn getVersion(&self) -> alloy_contract::SolCallBuilder<T, &P, getVersionCall, N> {
9817 self.call_builder(&getVersionCall {})
9818 }
9819 pub fn initialize(
9821 &self,
9822 _tokenAddress: alloy::sol_types::private::Address,
9823 _lightClientAddress: alloy::sol_types::private::Address,
9824 _exitEscrowPeriod: alloy::sol_types::private::primitives::aliases::U256,
9825 _timelock: alloy::sol_types::private::Address,
9826 ) -> alloy_contract::SolCallBuilder<T, &P, initializeCall, N> {
9827 self.call_builder(&initializeCall {
9828 _tokenAddress,
9829 _lightClientAddress,
9830 _exitEscrowPeriod,
9831 _timelock,
9832 })
9833 }
9834 pub fn initializedAtBlock(
9836 &self,
9837 ) -> alloy_contract::SolCallBuilder<T, &P, initializedAtBlockCall, N> {
9838 self.call_builder(&initializedAtBlockCall {})
9839 }
9840 pub fn lightClient(&self) -> alloy_contract::SolCallBuilder<T, &P, lightClientCall, N> {
9842 self.call_builder(&lightClientCall {})
9843 }
9844 pub fn owner(&self) -> alloy_contract::SolCallBuilder<T, &P, ownerCall, N> {
9846 self.call_builder(&ownerCall {})
9847 }
9848 pub fn proxiableUUID(&self) -> alloy_contract::SolCallBuilder<T, &P, proxiableUUIDCall, N> {
9850 self.call_builder(&proxiableUUIDCall {})
9851 }
9852 pub fn registerValidator(
9854 &self,
9855 blsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
9856 schnorrVK: <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
9857 blsSig: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
9858 commission: u16,
9859 ) -> alloy_contract::SolCallBuilder<T, &P, registerValidatorCall, N> {
9860 self.call_builder(®isterValidatorCall {
9861 blsVK,
9862 schnorrVK,
9863 blsSig,
9864 commission,
9865 })
9866 }
9867 pub fn renounceOwnership(
9869 &self,
9870 ) -> alloy_contract::SolCallBuilder<T, &P, renounceOwnershipCall, N> {
9871 self.call_builder(&renounceOwnershipCall {})
9872 }
9873 pub fn token(&self) -> alloy_contract::SolCallBuilder<T, &P, tokenCall, N> {
9875 self.call_builder(&tokenCall {})
9876 }
9877 pub fn transferOwnership(
9879 &self,
9880 newOwner: alloy::sol_types::private::Address,
9881 ) -> alloy_contract::SolCallBuilder<T, &P, transferOwnershipCall, N> {
9882 self.call_builder(&transferOwnershipCall { newOwner })
9883 }
9884 pub fn undelegate(
9886 &self,
9887 validator: alloy::sol_types::private::Address,
9888 amount: alloy::sol_types::private::primitives::aliases::U256,
9889 ) -> alloy_contract::SolCallBuilder<T, &P, undelegateCall, N> {
9890 self.call_builder(&undelegateCall { validator, amount })
9891 }
9892 pub fn undelegations(
9894 &self,
9895 validator: alloy::sol_types::private::Address,
9896 delegator: alloy::sol_types::private::Address,
9897 ) -> alloy_contract::SolCallBuilder<T, &P, undelegationsCall, N> {
9898 self.call_builder(&undelegationsCall {
9899 validator,
9900 delegator,
9901 })
9902 }
9903 pub fn updateConsensusKeys(
9905 &self,
9906 newBlsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
9907 newSchnorrVK: <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
9908 newBlsSig: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
9909 ) -> alloy_contract::SolCallBuilder<T, &P, updateConsensusKeysCall, N> {
9910 self.call_builder(&updateConsensusKeysCall {
9911 newBlsVK,
9912 newSchnorrVK,
9913 newBlsSig,
9914 })
9915 }
9916 pub fn upgradeToAndCall(
9918 &self,
9919 newImplementation: alloy::sol_types::private::Address,
9920 data: alloy::sol_types::private::Bytes,
9921 ) -> alloy_contract::SolCallBuilder<T, &P, upgradeToAndCallCall, N> {
9922 self.call_builder(&upgradeToAndCallCall {
9923 newImplementation,
9924 data,
9925 })
9926 }
9927 pub fn validatorExits(
9929 &self,
9930 validator: alloy::sol_types::private::Address,
9931 ) -> alloy_contract::SolCallBuilder<T, &P, validatorExitsCall, N> {
9932 self.call_builder(&validatorExitsCall { validator })
9933 }
9934 pub fn validators(
9936 &self,
9937 account: alloy::sol_types::private::Address,
9938 ) -> alloy_contract::SolCallBuilder<T, &P, validatorsCall, N> {
9939 self.call_builder(&validatorsCall { account })
9940 }
9941 }
9942 #[automatically_derived]
9944 impl<
9945 T: alloy_contract::private::Transport + ::core::clone::Clone,
9946 P: alloy_contract::private::Provider<T, N>,
9947 N: alloy_contract::private::Network,
9948 > StakeTableInstance<T, P, N>
9949 {
9950 pub fn event_filter<E: alloy_sol_types::SolEvent>(
9955 &self,
9956 ) -> alloy_contract::Event<T, &P, E, N> {
9957 alloy_contract::Event::new_sol(&self.provider, &self.address)
9958 }
9959 pub fn ConsensusKeysUpdated_filter(
9961 &self,
9962 ) -> alloy_contract::Event<T, &P, ConsensusKeysUpdated, N> {
9963 self.event_filter::<ConsensusKeysUpdated>()
9964 }
9965 pub fn Delegated_filter(&self) -> alloy_contract::Event<T, &P, Delegated, N> {
9967 self.event_filter::<Delegated>()
9968 }
9969 pub fn Initialized_filter(&self) -> alloy_contract::Event<T, &P, Initialized, N> {
9971 self.event_filter::<Initialized>()
9972 }
9973 pub fn OwnershipTransferred_filter(
9975 &self,
9976 ) -> alloy_contract::Event<T, &P, OwnershipTransferred, N> {
9977 self.event_filter::<OwnershipTransferred>()
9978 }
9979 pub fn Undelegated_filter(&self) -> alloy_contract::Event<T, &P, Undelegated, N> {
9981 self.event_filter::<Undelegated>()
9982 }
9983 pub fn Upgrade_filter(&self) -> alloy_contract::Event<T, &P, Upgrade, N> {
9985 self.event_filter::<Upgrade>()
9986 }
9987 pub fn Upgraded_filter(&self) -> alloy_contract::Event<T, &P, Upgraded, N> {
9989 self.event_filter::<Upgraded>()
9990 }
9991 pub fn ValidatorExit_filter(&self) -> alloy_contract::Event<T, &P, ValidatorExit, N> {
9993 self.event_filter::<ValidatorExit>()
9994 }
9995 pub fn ValidatorRegistered_filter(
9997 &self,
9998 ) -> alloy_contract::Event<T, &P, ValidatorRegistered, N> {
9999 self.event_filter::<ValidatorRegistered>()
10000 }
10001 pub fn Withdrawal_filter(&self) -> alloy_contract::Event<T, &P, Withdrawal, N> {
10003 self.event_filter::<Withdrawal>()
10004 }
10005 }
10006}