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 super::*;
20 use alloy::sol_types as alloy_sol_types;
21 #[derive(serde::Serialize, serde::Deserialize)]
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 #[inline]
32 fn stv_to_tokens(
33 &self,
34 ) -> <alloy::sol_types::sol_data::Uint<
35 256,
36 > as alloy_sol_types::SolType>::Token<'_> {
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<
44 256,
45 > as alloy_sol_types::SolType>::tokenize(self)
46 .0
47 }
48 #[inline]
49 fn stv_abi_encode_packed_to(
50 &self,
51 out: &mut alloy_sol_types::private::Vec<u8>,
52 ) {
53 <alloy::sol_types::sol_data::Uint<
54 256,
55 > as alloy_sol_types::SolType>::abi_encode_packed_to(self, out)
56 }
57 #[inline]
58 fn stv_abi_packed_encoded_size(&self) -> usize {
59 <alloy::sol_types::sol_data::Uint<
60 256,
61 > as alloy_sol_types::SolType>::abi_encoded_size(self)
62 }
63 }
64 impl BaseField {
65 pub const NAME: &'static str = stringify!(@ name);
67 #[inline]
69 pub const fn from_underlying(
70 value: alloy::sol_types::private::primitives::aliases::U256,
71 ) -> Self {
72 Self(value)
73 }
74 #[inline]
76 pub const fn into_underlying(
77 self,
78 ) -> alloy::sol_types::private::primitives::aliases::U256 {
79 self.0
80 }
81 #[inline]
84 pub fn abi_encode(&self) -> alloy_sol_types::private::Vec<u8> {
85 <Self as alloy_sol_types::SolType>::abi_encode(&self.0)
86 }
87 #[inline]
90 pub fn abi_encode_packed(&self) -> alloy_sol_types::private::Vec<u8> {
91 <Self as alloy_sol_types::SolType>::abi_encode_packed(&self.0)
92 }
93 }
94 #[automatically_derived]
95 impl From<alloy::sol_types::private::primitives::aliases::U256> for BaseField {
96 fn from(
97 value: alloy::sol_types::private::primitives::aliases::U256,
98 ) -> Self {
99 Self::from_underlying(value)
100 }
101 }
102 #[automatically_derived]
103 impl From<BaseField> for alloy::sol_types::private::primitives::aliases::U256 {
104 fn from(value: BaseField) -> Self {
105 value.into_underlying()
106 }
107 }
108 #[automatically_derived]
109 impl alloy_sol_types::SolType for BaseField {
110 type RustType = alloy::sol_types::private::primitives::aliases::U256;
111 type Token<'a> = <alloy::sol_types::sol_data::Uint<
112 256,
113 > as alloy_sol_types::SolType>::Token<'a>;
114 const SOL_NAME: &'static str = Self::NAME;
115 const ENCODED_SIZE: Option<usize> = <alloy::sol_types::sol_data::Uint<
116 256,
117 > as alloy_sol_types::SolType>::ENCODED_SIZE;
118 const PACKED_ENCODED_SIZE: Option<usize> = <alloy::sol_types::sol_data::Uint<
119 256,
120 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
121 #[inline]
122 fn valid_token(token: &Self::Token<'_>) -> bool {
123 Self::type_check(token).is_ok()
124 }
125 #[inline]
126 fn type_check(token: &Self::Token<'_>) -> alloy_sol_types::Result<()> {
127 <alloy::sol_types::sol_data::Uint<
128 256,
129 > as alloy_sol_types::SolType>::type_check(token)
130 }
131 #[inline]
132 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
133 <alloy::sol_types::sol_data::Uint<
134 256,
135 > as alloy_sol_types::SolType>::detokenize(token)
136 }
137 }
138 #[automatically_derived]
139 impl alloy_sol_types::EventTopic for BaseField {
140 #[inline]
141 fn topic_preimage_length(rust: &Self::RustType) -> usize {
142 <alloy::sol_types::sol_data::Uint<
143 256,
144 > as alloy_sol_types::EventTopic>::topic_preimage_length(rust)
145 }
146 #[inline]
147 fn encode_topic_preimage(
148 rust: &Self::RustType,
149 out: &mut alloy_sol_types::private::Vec<u8>,
150 ) {
151 <alloy::sol_types::sol_data::Uint<
152 256,
153 > as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, out)
154 }
155 #[inline]
156 fn encode_topic(
157 rust: &Self::RustType,
158 ) -> alloy_sol_types::abi::token::WordToken {
159 <alloy::sol_types::sol_data::Uint<
160 256,
161 > as alloy_sol_types::EventTopic>::encode_topic(rust)
162 }
163 }
164 };
165 #[derive(serde::Serialize, serde::Deserialize)]
166 #[derive(Default, Debug, PartialEq, Eq, Hash)]
167 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
171 #[derive(Clone)]
172 pub struct G1Point {
173 #[allow(missing_docs)]
174 pub x: <BaseField as alloy::sol_types::SolType>::RustType,
175 #[allow(missing_docs)]
176 pub y: <BaseField as alloy::sol_types::SolType>::RustType,
177 }
178 #[allow(
179 non_camel_case_types,
180 non_snake_case,
181 clippy::pub_underscore_fields,
182 clippy::style
183 )]
184 const _: () = {
185 use alloy::sol_types as alloy_sol_types;
186 #[doc(hidden)]
187 #[allow(dead_code)]
188 type UnderlyingSolTuple<'a> = (BaseField, BaseField);
189 #[doc(hidden)]
190 type UnderlyingRustTuple<'a> = (
191 <BaseField as alloy::sol_types::SolType>::RustType,
192 <BaseField as alloy::sol_types::SolType>::RustType,
193 );
194 #[cfg(test)]
195 #[allow(dead_code, unreachable_patterns)]
196 fn _type_assertion(
197 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
198 ) {
199 match _t {
200 alloy_sol_types::private::AssertTypeEq::<
201 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
202 >(_) => {}
203 }
204 }
205 #[automatically_derived]
206 #[doc(hidden)]
207 impl ::core::convert::From<G1Point> for UnderlyingRustTuple<'_> {
208 fn from(value: G1Point) -> Self {
209 (value.x, value.y)
210 }
211 }
212 #[automatically_derived]
213 #[doc(hidden)]
214 impl ::core::convert::From<UnderlyingRustTuple<'_>> for G1Point {
215 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
216 Self { x: tuple.0, y: tuple.1 }
217 }
218 }
219 #[automatically_derived]
220 impl alloy_sol_types::SolValue for G1Point {
221 type SolType = Self;
222 }
223 #[automatically_derived]
224 impl alloy_sol_types::private::SolTypeValue<Self> for G1Point {
225 #[inline]
226 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
227 (
228 <BaseField as alloy_sol_types::SolType>::tokenize(&self.x),
229 <BaseField as alloy_sol_types::SolType>::tokenize(&self.y),
230 )
231 }
232 #[inline]
233 fn stv_abi_encoded_size(&self) -> usize {
234 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
235 return size;
236 }
237 let tuple = <UnderlyingRustTuple<
238 '_,
239 > as ::core::convert::From<Self>>::from(self.clone());
240 <UnderlyingSolTuple<
241 '_,
242 > as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
243 }
244 #[inline]
245 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
246 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
247 }
248 #[inline]
249 fn stv_abi_encode_packed_to(
250 &self,
251 out: &mut alloy_sol_types::private::Vec<u8>,
252 ) {
253 let tuple = <UnderlyingRustTuple<
254 '_,
255 > as ::core::convert::From<Self>>::from(self.clone());
256 <UnderlyingSolTuple<
257 '_,
258 > as alloy_sol_types::SolType>::abi_encode_packed_to(&tuple, out)
259 }
260 #[inline]
261 fn stv_abi_packed_encoded_size(&self) -> usize {
262 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
263 return size;
264 }
265 let tuple = <UnderlyingRustTuple<
266 '_,
267 > as ::core::convert::From<Self>>::from(self.clone());
268 <UnderlyingSolTuple<
269 '_,
270 > as alloy_sol_types::SolType>::abi_packed_encoded_size(&tuple)
271 }
272 }
273 #[automatically_derived]
274 impl alloy_sol_types::SolType for G1Point {
275 type RustType = Self;
276 type Token<'a> = <UnderlyingSolTuple<
277 'a,
278 > as alloy_sol_types::SolType>::Token<'a>;
279 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
280 const ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
281 '_,
282 > as alloy_sol_types::SolType>::ENCODED_SIZE;
283 const PACKED_ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
284 '_,
285 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
286 #[inline]
287 fn valid_token(token: &Self::Token<'_>) -> bool {
288 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
289 }
290 #[inline]
291 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
292 let tuple = <UnderlyingSolTuple<
293 '_,
294 > as alloy_sol_types::SolType>::detokenize(token);
295 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
296 }
297 }
298 #[automatically_derived]
299 impl alloy_sol_types::SolStruct for G1Point {
300 const NAME: &'static str = "G1Point";
301 #[inline]
302 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
303 alloy_sol_types::private::Cow::Borrowed("G1Point(uint256 x,uint256 y)")
304 }
305 #[inline]
306 fn eip712_components() -> alloy_sol_types::private::Vec<
307 alloy_sol_types::private::Cow<'static, str>,
308 > {
309 alloy_sol_types::private::Vec::new()
310 }
311 #[inline]
312 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
313 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
314 }
315 #[inline]
316 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
317 [
318 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.x).0,
319 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.y).0,
320 ]
321 .concat()
322 }
323 }
324 #[automatically_derived]
325 impl alloy_sol_types::EventTopic for G1Point {
326 #[inline]
327 fn topic_preimage_length(rust: &Self::RustType) -> usize {
328 0usize
329 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(
330 &rust.x,
331 )
332 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(
333 &rust.y,
334 )
335 }
336 #[inline]
337 fn encode_topic_preimage(
338 rust: &Self::RustType,
339 out: &mut alloy_sol_types::private::Vec<u8>,
340 ) {
341 out.reserve(
342 <Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust),
343 );
344 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(
345 &rust.x,
346 out,
347 );
348 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(
349 &rust.y,
350 out,
351 );
352 }
353 #[inline]
354 fn encode_topic(
355 rust: &Self::RustType,
356 ) -> alloy_sol_types::abi::token::WordToken {
357 let mut out = alloy_sol_types::private::Vec::new();
358 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(
359 rust,
360 &mut out,
361 );
362 alloy_sol_types::abi::token::WordToken(
363 alloy_sol_types::private::keccak256(out),
364 )
365 }
366 }
367 };
368 #[derive(serde::Serialize, serde::Deserialize)]
369 #[derive(Default, Debug, PartialEq, Eq, Hash)]
370 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
374 #[derive(Clone)]
375 pub struct G2Point {
376 #[allow(missing_docs)]
377 pub x0: <BaseField as alloy::sol_types::SolType>::RustType,
378 #[allow(missing_docs)]
379 pub x1: <BaseField as alloy::sol_types::SolType>::RustType,
380 #[allow(missing_docs)]
381 pub y0: <BaseField as alloy::sol_types::SolType>::RustType,
382 #[allow(missing_docs)]
383 pub y1: <BaseField as alloy::sol_types::SolType>::RustType,
384 }
385 #[allow(
386 non_camel_case_types,
387 non_snake_case,
388 clippy::pub_underscore_fields,
389 clippy::style
390 )]
391 const _: () = {
392 use alloy::sol_types as alloy_sol_types;
393 #[doc(hidden)]
394 #[allow(dead_code)]
395 type UnderlyingSolTuple<'a> = (BaseField, BaseField, BaseField, BaseField);
396 #[doc(hidden)]
397 type UnderlyingRustTuple<'a> = (
398 <BaseField as alloy::sol_types::SolType>::RustType,
399 <BaseField as alloy::sol_types::SolType>::RustType,
400 <BaseField as alloy::sol_types::SolType>::RustType,
401 <BaseField as alloy::sol_types::SolType>::RustType,
402 );
403 #[cfg(test)]
404 #[allow(dead_code, unreachable_patterns)]
405 fn _type_assertion(
406 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
407 ) {
408 match _t {
409 alloy_sol_types::private::AssertTypeEq::<
410 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
411 >(_) => {}
412 }
413 }
414 #[automatically_derived]
415 #[doc(hidden)]
416 impl ::core::convert::From<G2Point> for UnderlyingRustTuple<'_> {
417 fn from(value: G2Point) -> Self {
418 (value.x0, value.x1, value.y0, value.y1)
419 }
420 }
421 #[automatically_derived]
422 #[doc(hidden)]
423 impl ::core::convert::From<UnderlyingRustTuple<'_>> for G2Point {
424 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
425 Self {
426 x0: tuple.0,
427 x1: tuple.1,
428 y0: tuple.2,
429 y1: tuple.3,
430 }
431 }
432 }
433 #[automatically_derived]
434 impl alloy_sol_types::SolValue for G2Point {
435 type SolType = Self;
436 }
437 #[automatically_derived]
438 impl alloy_sol_types::private::SolTypeValue<Self> for G2Point {
439 #[inline]
440 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
441 (
442 <BaseField as alloy_sol_types::SolType>::tokenize(&self.x0),
443 <BaseField as alloy_sol_types::SolType>::tokenize(&self.x1),
444 <BaseField as alloy_sol_types::SolType>::tokenize(&self.y0),
445 <BaseField as alloy_sol_types::SolType>::tokenize(&self.y1),
446 )
447 }
448 #[inline]
449 fn stv_abi_encoded_size(&self) -> usize {
450 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
451 return size;
452 }
453 let tuple = <UnderlyingRustTuple<
454 '_,
455 > as ::core::convert::From<Self>>::from(self.clone());
456 <UnderlyingSolTuple<
457 '_,
458 > as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
459 }
460 #[inline]
461 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
462 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
463 }
464 #[inline]
465 fn stv_abi_encode_packed_to(
466 &self,
467 out: &mut alloy_sol_types::private::Vec<u8>,
468 ) {
469 let tuple = <UnderlyingRustTuple<
470 '_,
471 > as ::core::convert::From<Self>>::from(self.clone());
472 <UnderlyingSolTuple<
473 '_,
474 > as alloy_sol_types::SolType>::abi_encode_packed_to(&tuple, out)
475 }
476 #[inline]
477 fn stv_abi_packed_encoded_size(&self) -> usize {
478 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
479 return size;
480 }
481 let tuple = <UnderlyingRustTuple<
482 '_,
483 > as ::core::convert::From<Self>>::from(self.clone());
484 <UnderlyingSolTuple<
485 '_,
486 > as alloy_sol_types::SolType>::abi_packed_encoded_size(&tuple)
487 }
488 }
489 #[automatically_derived]
490 impl alloy_sol_types::SolType for G2Point {
491 type RustType = Self;
492 type Token<'a> = <UnderlyingSolTuple<
493 'a,
494 > as alloy_sol_types::SolType>::Token<'a>;
495 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
496 const ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
497 '_,
498 > as alloy_sol_types::SolType>::ENCODED_SIZE;
499 const PACKED_ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
500 '_,
501 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
502 #[inline]
503 fn valid_token(token: &Self::Token<'_>) -> bool {
504 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
505 }
506 #[inline]
507 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
508 let tuple = <UnderlyingSolTuple<
509 '_,
510 > as alloy_sol_types::SolType>::detokenize(token);
511 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
512 }
513 }
514 #[automatically_derived]
515 impl alloy_sol_types::SolStruct for G2Point {
516 const NAME: &'static str = "G2Point";
517 #[inline]
518 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
519 alloy_sol_types::private::Cow::Borrowed(
520 "G2Point(uint256 x0,uint256 x1,uint256 y0,uint256 y1)",
521 )
522 }
523 #[inline]
524 fn eip712_components() -> alloy_sol_types::private::Vec<
525 alloy_sol_types::private::Cow<'static, str>,
526 > {
527 alloy_sol_types::private::Vec::new()
528 }
529 #[inline]
530 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
531 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
532 }
533 #[inline]
534 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
535 [
536 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.x0)
537 .0,
538 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.x1)
539 .0,
540 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.y0)
541 .0,
542 <BaseField as alloy_sol_types::SolType>::eip712_data_word(&self.y1).0,
543 ]
544 .concat()
545 }
546 }
547 #[automatically_derived]
548 impl alloy_sol_types::EventTopic for G2Point {
549 #[inline]
550 fn topic_preimage_length(rust: &Self::RustType) -> usize {
551 0usize
552 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(
553 &rust.x0,
554 )
555 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(
556 &rust.x1,
557 )
558 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(
559 &rust.y0,
560 )
561 + <BaseField as alloy_sol_types::EventTopic>::topic_preimage_length(
562 &rust.y1,
563 )
564 }
565 #[inline]
566 fn encode_topic_preimage(
567 rust: &Self::RustType,
568 out: &mut alloy_sol_types::private::Vec<u8>,
569 ) {
570 out.reserve(
571 <Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust),
572 );
573 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(
574 &rust.x0,
575 out,
576 );
577 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(
578 &rust.x1,
579 out,
580 );
581 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(
582 &rust.y0,
583 out,
584 );
585 <BaseField as alloy_sol_types::EventTopic>::encode_topic_preimage(
586 &rust.y1,
587 out,
588 );
589 }
590 #[inline]
591 fn encode_topic(
592 rust: &Self::RustType,
593 ) -> alloy_sol_types::abi::token::WordToken {
594 let mut out = alloy_sol_types::private::Vec::new();
595 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(
596 rust,
597 &mut out,
598 );
599 alloy_sol_types::abi::token::WordToken(
600 alloy_sol_types::private::keccak256(out),
601 )
602 }
603 }
604 };
605 use alloy::contract as alloy_contract;
606 #[inline]
610 pub const fn new<
611 P: alloy_contract::private::Provider<N>,
612 N: alloy_contract::private::Network,
613 >(address: alloy_sol_types::private::Address, __provider: P) -> BN254Instance<P, N> {
614 BN254Instance::<P, N>::new(address, __provider)
615 }
616 #[derive(Clone)]
628 pub struct BN254Instance<P, N = alloy_contract::private::Ethereum> {
629 address: alloy_sol_types::private::Address,
630 provider: P,
631 _network: ::core::marker::PhantomData<N>,
632 }
633 #[automatically_derived]
634 impl<P, N> ::core::fmt::Debug for BN254Instance<P, N> {
635 #[inline]
636 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
637 f.debug_tuple("BN254Instance").field(&self.address).finish()
638 }
639 }
640 impl<
642 P: alloy_contract::private::Provider<N>,
643 N: alloy_contract::private::Network,
644 > BN254Instance<P, N> {
645 #[inline]
649 pub const fn new(
650 address: alloy_sol_types::private::Address,
651 __provider: P,
652 ) -> Self {
653 Self {
654 address,
655 provider: __provider,
656 _network: ::core::marker::PhantomData,
657 }
658 }
659 #[inline]
661 pub const fn address(&self) -> &alloy_sol_types::private::Address {
662 &self.address
663 }
664 #[inline]
666 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
667 self.address = address;
668 }
669 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
671 self.set_address(address);
672 self
673 }
674 #[inline]
676 pub const fn provider(&self) -> &P {
677 &self.provider
678 }
679 }
680 impl<P: ::core::clone::Clone, N> BN254Instance<&P, N> {
681 #[inline]
683 pub fn with_cloned_provider(self) -> BN254Instance<P, N> {
684 BN254Instance {
685 address: self.address,
686 provider: ::core::clone::Clone::clone(&self.provider),
687 _network: ::core::marker::PhantomData,
688 }
689 }
690 }
691 impl<
693 P: alloy_contract::private::Provider<N>,
694 N: alloy_contract::private::Network,
695 > BN254Instance<P, N> {
696 pub fn call_builder<C: alloy_sol_types::SolCall>(
701 &self,
702 call: &C,
703 ) -> alloy_contract::SolCallBuilder<&P, C, N> {
704 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
705 }
706 }
707 impl<
709 P: alloy_contract::private::Provider<N>,
710 N: alloy_contract::private::Network,
711 > BN254Instance<P, N> {
712 pub fn event_filter<E: alloy_sol_types::SolEvent>(
717 &self,
718 ) -> alloy_contract::Event<&P, E, N> {
719 alloy_contract::Event::new_sol(&self.provider, &self.address)
720 }
721 }
722}
723#[allow(
732 non_camel_case_types,
733 non_snake_case,
734 clippy::pub_underscore_fields,
735 clippy::style,
736 clippy::empty_structs_with_brackets
737)]
738pub mod EdOnBN254 {
739 use super::*;
740 use alloy::sol_types as alloy_sol_types;
741 #[derive(serde::Serialize, serde::Deserialize)]
742 #[derive(Default, Debug, PartialEq, Eq, Hash)]
743 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
747 #[derive(Clone)]
748 pub struct EdOnBN254Point {
749 #[allow(missing_docs)]
750 pub x: alloy::sol_types::private::primitives::aliases::U256,
751 #[allow(missing_docs)]
752 pub y: alloy::sol_types::private::primitives::aliases::U256,
753 }
754 #[allow(
755 non_camel_case_types,
756 non_snake_case,
757 clippy::pub_underscore_fields,
758 clippy::style
759 )]
760 const _: () = {
761 use alloy::sol_types as alloy_sol_types;
762 #[doc(hidden)]
763 #[allow(dead_code)]
764 type UnderlyingSolTuple<'a> = (
765 alloy::sol_types::sol_data::Uint<256>,
766 alloy::sol_types::sol_data::Uint<256>,
767 );
768 #[doc(hidden)]
769 type UnderlyingRustTuple<'a> = (
770 alloy::sol_types::private::primitives::aliases::U256,
771 alloy::sol_types::private::primitives::aliases::U256,
772 );
773 #[cfg(test)]
774 #[allow(dead_code, unreachable_patterns)]
775 fn _type_assertion(
776 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
777 ) {
778 match _t {
779 alloy_sol_types::private::AssertTypeEq::<
780 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
781 >(_) => {}
782 }
783 }
784 #[automatically_derived]
785 #[doc(hidden)]
786 impl ::core::convert::From<EdOnBN254Point> for UnderlyingRustTuple<'_> {
787 fn from(value: EdOnBN254Point) -> Self {
788 (value.x, value.y)
789 }
790 }
791 #[automatically_derived]
792 #[doc(hidden)]
793 impl ::core::convert::From<UnderlyingRustTuple<'_>> for EdOnBN254Point {
794 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
795 Self { x: tuple.0, y: tuple.1 }
796 }
797 }
798 #[automatically_derived]
799 impl alloy_sol_types::SolValue for EdOnBN254Point {
800 type SolType = Self;
801 }
802 #[automatically_derived]
803 impl alloy_sol_types::private::SolTypeValue<Self> for EdOnBN254Point {
804 #[inline]
805 fn stv_to_tokens(&self) -> <Self as alloy_sol_types::SolType>::Token<'_> {
806 (
807 <alloy::sol_types::sol_data::Uint<
808 256,
809 > as alloy_sol_types::SolType>::tokenize(&self.x),
810 <alloy::sol_types::sol_data::Uint<
811 256,
812 > as alloy_sol_types::SolType>::tokenize(&self.y),
813 )
814 }
815 #[inline]
816 fn stv_abi_encoded_size(&self) -> usize {
817 if let Some(size) = <Self as alloy_sol_types::SolType>::ENCODED_SIZE {
818 return size;
819 }
820 let tuple = <UnderlyingRustTuple<
821 '_,
822 > as ::core::convert::From<Self>>::from(self.clone());
823 <UnderlyingSolTuple<
824 '_,
825 > as alloy_sol_types::SolType>::abi_encoded_size(&tuple)
826 }
827 #[inline]
828 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
829 <Self as alloy_sol_types::SolStruct>::eip712_hash_struct(self)
830 }
831 #[inline]
832 fn stv_abi_encode_packed_to(
833 &self,
834 out: &mut alloy_sol_types::private::Vec<u8>,
835 ) {
836 let tuple = <UnderlyingRustTuple<
837 '_,
838 > as ::core::convert::From<Self>>::from(self.clone());
839 <UnderlyingSolTuple<
840 '_,
841 > as alloy_sol_types::SolType>::abi_encode_packed_to(&tuple, out)
842 }
843 #[inline]
844 fn stv_abi_packed_encoded_size(&self) -> usize {
845 if let Some(size) = <Self as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE {
846 return size;
847 }
848 let tuple = <UnderlyingRustTuple<
849 '_,
850 > as ::core::convert::From<Self>>::from(self.clone());
851 <UnderlyingSolTuple<
852 '_,
853 > as alloy_sol_types::SolType>::abi_packed_encoded_size(&tuple)
854 }
855 }
856 #[automatically_derived]
857 impl alloy_sol_types::SolType for EdOnBN254Point {
858 type RustType = Self;
859 type Token<'a> = <UnderlyingSolTuple<
860 'a,
861 > as alloy_sol_types::SolType>::Token<'a>;
862 const SOL_NAME: &'static str = <Self as alloy_sol_types::SolStruct>::NAME;
863 const ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
864 '_,
865 > as alloy_sol_types::SolType>::ENCODED_SIZE;
866 const PACKED_ENCODED_SIZE: Option<usize> = <UnderlyingSolTuple<
867 '_,
868 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
869 #[inline]
870 fn valid_token(token: &Self::Token<'_>) -> bool {
871 <UnderlyingSolTuple<'_> as alloy_sol_types::SolType>::valid_token(token)
872 }
873 #[inline]
874 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
875 let tuple = <UnderlyingSolTuple<
876 '_,
877 > as alloy_sol_types::SolType>::detokenize(token);
878 <Self as ::core::convert::From<UnderlyingRustTuple<'_>>>::from(tuple)
879 }
880 }
881 #[automatically_derived]
882 impl alloy_sol_types::SolStruct for EdOnBN254Point {
883 const NAME: &'static str = "EdOnBN254Point";
884 #[inline]
885 fn eip712_root_type() -> alloy_sol_types::private::Cow<'static, str> {
886 alloy_sol_types::private::Cow::Borrowed(
887 "EdOnBN254Point(uint256 x,uint256 y)",
888 )
889 }
890 #[inline]
891 fn eip712_components() -> alloy_sol_types::private::Vec<
892 alloy_sol_types::private::Cow<'static, str>,
893 > {
894 alloy_sol_types::private::Vec::new()
895 }
896 #[inline]
897 fn eip712_encode_type() -> alloy_sol_types::private::Cow<'static, str> {
898 <Self as alloy_sol_types::SolStruct>::eip712_root_type()
899 }
900 #[inline]
901 fn eip712_encode_data(&self) -> alloy_sol_types::private::Vec<u8> {
902 [
903 <alloy::sol_types::sol_data::Uint<
904 256,
905 > as alloy_sol_types::SolType>::eip712_data_word(&self.x)
906 .0,
907 <alloy::sol_types::sol_data::Uint<
908 256,
909 > as alloy_sol_types::SolType>::eip712_data_word(&self.y)
910 .0,
911 ]
912 .concat()
913 }
914 }
915 #[automatically_derived]
916 impl alloy_sol_types::EventTopic for EdOnBN254Point {
917 #[inline]
918 fn topic_preimage_length(rust: &Self::RustType) -> usize {
919 0usize
920 + <alloy::sol_types::sol_data::Uint<
921 256,
922 > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.x)
923 + <alloy::sol_types::sol_data::Uint<
924 256,
925 > as alloy_sol_types::EventTopic>::topic_preimage_length(&rust.y)
926 }
927 #[inline]
928 fn encode_topic_preimage(
929 rust: &Self::RustType,
930 out: &mut alloy_sol_types::private::Vec<u8>,
931 ) {
932 out.reserve(
933 <Self as alloy_sol_types::EventTopic>::topic_preimage_length(rust),
934 );
935 <alloy::sol_types::sol_data::Uint<
936 256,
937 > as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.x, out);
938 <alloy::sol_types::sol_data::Uint<
939 256,
940 > as alloy_sol_types::EventTopic>::encode_topic_preimage(&rust.y, out);
941 }
942 #[inline]
943 fn encode_topic(
944 rust: &Self::RustType,
945 ) -> alloy_sol_types::abi::token::WordToken {
946 let mut out = alloy_sol_types::private::Vec::new();
947 <Self as alloy_sol_types::EventTopic>::encode_topic_preimage(
948 rust,
949 &mut out,
950 );
951 alloy_sol_types::abi::token::WordToken(
952 alloy_sol_types::private::keccak256(out),
953 )
954 }
955 }
956 };
957 use alloy::contract as alloy_contract;
958 #[inline]
962 pub const fn new<
963 P: alloy_contract::private::Provider<N>,
964 N: alloy_contract::private::Network,
965 >(
966 address: alloy_sol_types::private::Address,
967 __provider: P,
968 ) -> EdOnBN254Instance<P, N> {
969 EdOnBN254Instance::<P, N>::new(address, __provider)
970 }
971 #[derive(Clone)]
983 pub struct EdOnBN254Instance<P, N = alloy_contract::private::Ethereum> {
984 address: alloy_sol_types::private::Address,
985 provider: P,
986 _network: ::core::marker::PhantomData<N>,
987 }
988 #[automatically_derived]
989 impl<P, N> ::core::fmt::Debug for EdOnBN254Instance<P, N> {
990 #[inline]
991 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
992 f.debug_tuple("EdOnBN254Instance").field(&self.address).finish()
993 }
994 }
995 impl<
997 P: alloy_contract::private::Provider<N>,
998 N: alloy_contract::private::Network,
999 > EdOnBN254Instance<P, N> {
1000 #[inline]
1004 pub const fn new(
1005 address: alloy_sol_types::private::Address,
1006 __provider: P,
1007 ) -> Self {
1008 Self {
1009 address,
1010 provider: __provider,
1011 _network: ::core::marker::PhantomData,
1012 }
1013 }
1014 #[inline]
1016 pub const fn address(&self) -> &alloy_sol_types::private::Address {
1017 &self.address
1018 }
1019 #[inline]
1021 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
1022 self.address = address;
1023 }
1024 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
1026 self.set_address(address);
1027 self
1028 }
1029 #[inline]
1031 pub const fn provider(&self) -> &P {
1032 &self.provider
1033 }
1034 }
1035 impl<P: ::core::clone::Clone, N> EdOnBN254Instance<&P, N> {
1036 #[inline]
1038 pub fn with_cloned_provider(self) -> EdOnBN254Instance<P, N> {
1039 EdOnBN254Instance {
1040 address: self.address,
1041 provider: ::core::clone::Clone::clone(&self.provider),
1042 _network: ::core::marker::PhantomData,
1043 }
1044 }
1045 }
1046 impl<
1048 P: alloy_contract::private::Provider<N>,
1049 N: alloy_contract::private::Network,
1050 > EdOnBN254Instance<P, N> {
1051 pub fn call_builder<C: alloy_sol_types::SolCall>(
1056 &self,
1057 call: &C,
1058 ) -> alloy_contract::SolCallBuilder<&P, C, N> {
1059 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
1060 }
1061 }
1062 impl<
1064 P: alloy_contract::private::Provider<N>,
1065 N: alloy_contract::private::Network,
1066 > EdOnBN254Instance<P, N> {
1067 pub fn event_filter<E: alloy_sol_types::SolEvent>(
1072 &self,
1073 ) -> alloy_contract::Event<&P, E, N> {
1074 alloy_contract::Event::new_sol(&self.provider, &self.address)
1075 }
1076 }
1077}
1078#[allow(
2196 non_camel_case_types,
2197 non_snake_case,
2198 clippy::pub_underscore_fields,
2199 clippy::style,
2200 clippy::empty_structs_with_brackets
2201)]
2202pub mod StakeTable {
2203 use super::*;
2204 use alloy::sol_types as alloy_sol_types;
2205 #[rustfmt::skip]
2211 #[allow(clippy::all)]
2212 pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
2213 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*\xF3a\x01\x01_9_\x81\x81a\x13\xA5\x01R\x81\x81a\x13\xCE\x01Ra\x15\x14\x01Ra*\xF3_\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#\xF1V[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%\x17V[a\x06\xD6V[4\x80\x15a\x01\xE0W__\xFD[Pa\x01\x84a\x01\xEF6`\x04a%uV[a\x08iV[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#\xF1V[a\t\x8AV[a\x01\x84a\x02C6`\x04a%\x8EV[a\x0B<V[4\x80\x15a\x02SW__\xFD[Pa\x02\x08a\x0B[V[4\x80\x15a\x02gW__\xFD[Pa\x01\x84a\x02v6`\x04a&3V[a\x0BvV[4\x80\x15a\x02\x86W__\xFD[Pa\x01\x84a\x0C?V[4\x80\x15a\x02\x9AW__\xFD[Pa\x01\x84a\x0C\xCDV[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&wV[a\x0C\xEEV[4\x80\x15a\x03\x1DW__\xFD[Pa\x02\x08`\x08T\x81V[4\x80\x15a\x032W__\xFD[Pa\x03da\x03A6`\x04a&\x91V[`\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%uV[a\rHV[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&\xC2V[4\x80\x15a\x03\xE0W__\xFD[Pa\x04\x03a\x03\xEF6`\x04a&\xF7V[`\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%uV[`\x05` R_\x90\x81R`@\x90 T\x81V[4\x80\x15a\x04hW__\xFD[Pa\x01\x84a\x04w6`\x04a'\x0EV[a\x0EXV[4\x80\x15a\x04\x87W__\xFD[Pa\x02\x08a\x04\x966`\x04a&\x91V[`\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%uV[a\x0F\x84V[4\x80\x15a\x04\xDCW__\xFD[Pa\x05\x06a\x04\xEB6`\x04a%uV[`\x03` R_\x90\x81R`@\x90 \x80T`\x01\x90\x91\x01T`\xFF\x16\x82V[`@Qa\x01\xAD\x92\x91\x90a'lV[4\x80\x15a\x05\x1FW__\xFD[P`\x02Ta\x02\xDB\x90`\x01`\x01`\xA0\x1B\x03\x16\x81V[a\x05<\x82a\x0F\xC1V[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'\x9CV[\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[`\x02Ta\x06\x1A\x90`\x01`\x01`\xA0\x1B\x03\x16\x830\x86a\x10BV[`\x01`\x01`\xA0\x1B\x03\x84\x16_\x90\x81R`\x03` R`@\x81 \x80T\x85\x92\x90a\x06A\x90\x84\x90a'\xC7V[\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\x06|\x90\x84\x90a'\xC7V[\x92PP\x81\x90UP\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\xC8\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3PPPPV[3a\x06\xE0\x81a\x10\xE6V[a\x06\xE9\x84a\x113V[a\x06\xF2\x85a\x11\xC6V[`@\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\x12\x02V[a'\x10\x83a\xFF\xFF\x16\x11\x15a\x07KW`@Qc\xDC\x81\xDB\x85`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x04_a\x07Y\x89a\x0C\xEEV[\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\xA0Wa\x07\xA0a'XV[\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\xE6Wa\x07\xE6a'XV[\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\xA3W`@Qcy)\x8AS`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80B\x10\x15a\x08\xC4W`@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\x0CW`@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\tA\x91\x16\x84\x83a\x13\x0BV[\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\t|\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA2PPPPV[a\t\x93\x82a\x0F\xC1V[3_\x82\x90\x03a\t\xB5W`@Qc\x1F* \x05`\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\t\xF8W`@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\nAW`@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\nw\x90\x84\x90a'\xDAV[\x92PP\x81\x90UP`@Q\x80`@\x01`@R\x80\x84\x81R` \x01`\x08TBa\n\x9D\x91\x90a'\xC7V[\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\n\xF0\x90\x84\x90a'\xDAV[\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\xC8\x91\x81R` \x01\x90V[a\x0BDa\x13\x9AV[a\x0BM\x82a\x14@V[a\x0BW\x82\x82a\x14HV[PPV[_a\x0Bda\x15\tV[P_Q` a*\xC7_9_Q\x90_R\x90V[3a\x0B\x80\x81a\x0F\xC1V[a\x0B\x89\x83a\x113V[a\x0B\x92\x84a\x11\xC6V[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x83\x16` \x82\x01R_\x91\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90Pa\x0B\xC4\x81\x84\x87a\x12\x02V[`\x01`\x04_a\x0B\xD2\x88a\x0C\xEEV[\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\x0C0\x92\x91\x90a'\xEDV[`@Q\x80\x91\x03\x90\xA2PPPPPV[3a\x0CI\x81a\x0F\xC1V[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x03` R`@\x90 `\x01\x01\x80T`\xFF\x19\x16`\x02\x17\x90U`\x08Ta\x0C{\x90Ba'\xC7V[`\x01`\x01`\xA0\x1B\x03\x82\x16_\x81\x81R`\x05` \x90\x81R`@\x80\x83 \x94\x90\x94U`\x03\x90R\x82\x81 \x81\x90U\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\x0C\xD5a\x15RV[`@Qc\x17\xD5\xC9e`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_\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\x8DW`@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\r\xD5W`@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\x0E\x10\x91\x16\x83\x83a\x13\x0BV[\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\x0EK\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\x9DWP\x82[\x90P_\x82g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16`\x01\x14\x80\x15a\x0E\xB9WP0;\x15[\x90P\x81\x15\x80\x15a\x0E\xC7WP\x80\x15[\x15a\x0E\xE5W`@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\x0F\x0FW\x84T`\xFF`@\x1B\x19\x16`\x01`@\x1B\x17\x85U[a\x0F\x18\x86a\x15\xADV[a\x0F a\x15\xBEV[a\x0F(a\x15\xC6V[a\x0F3\x89\x89\x89a\x16\xCCV[\x83\x15a\x0FyW\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\x8Ca\x15RV[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x0F\xB5W`@Qc\x1EO\xBD\xF7`\xE0\x1B\x81R_`\x04\x82\x01R`$\x01a\x05\xF9V[a\x0F\xBE\x81a\x17wV[PV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x03` R`@\x81 `\x01\x01T`\xFF\x16\x90\x81`\x02\x81\x11\x15a\x0F\xF2Wa\x0F\xF2a'XV[\x03a\x10\x10W`@QcP\x8Ay?`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x02\x81`\x02\x81\x11\x15a\x10$Wa\x10$a'XV[\x03a\x0BWW`@Qc\xEA\xB4\xA9c`\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\x9BWP\x83;\x15=\x17\x15[\x80a\x10\xDFW`@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\x15Wa\x11\x15a'XV[\x14a\x0F\xBEW`@Qc\x13.~\xFB`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80Q\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X](3\xE8Hy\xB9p\x91C\xE1\xF5\x93\xF0\0\0\x01\x11\x15\x80a\x11\x87WP\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X](3\xE8Hy\xB9p\x91C\xE1\xF5\x93\xF0\0\0\x01\x81` \x01Q\x10\x15[\x15a\x11\xA5W`@Qc\x06\xCFC\x8F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80Q_\x03a\x0F\xBEW`@Qc\x06\xCFC\x8F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x04_a\x11\xD2\x83a\x0C\xEEV[\x81R` \x81\x01\x91\x90\x91R`@\x01_ T`\xFF\x16\x15a\x0F\xBEW`@Qb\xDA\x8AW`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x81Q` \x83\x01Q\x15\x90\x15\x16\x15a\x12+W`@Qc:\x13\x91\x99`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80Q\x15\x80\x15a\x12<WP` \x81\x01Q\x15[\x80\x15a\x12JWP`@\x81\x01Q\x15[\x80\x15a\x12XWP``\x81\x01Q\x15[\x15a\x12vW`@Qc^Cb\xCD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x12\x7F\x82a\x17\xE7V[_`@Q\x80``\x01`@R\x80`$\x81R` \x01a*\x83`$\x919\x90P_\x84\x82`@Q` \x01a\x12\xAF\x92\x91\x90a(>V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P_a\x12\xCA\x82a\x18NV[\x90Pa\x12\xE7\x81\x85a\x12\xDA\x88a\x19;V[a\x12\xE2a\x19\xB2V[a\x1A\x7FV[a\x13\x03W`@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\x13UWP\x82;\x15=\x17\x15[\x80a\x13\x94W`@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\x14 WP\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\x14\x14_Q` a*\xC7_9_Q\x90_RT`\x01`\x01`\xA0\x1B\x03\x16\x90V[`\x01`\x01`\xA0\x1B\x03\x16\x14\x15[\x15a\x14>W`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[V[a\x0F\xBEa\x15RV[\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\xA2WP`@\x80Q`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01\x90\x92Ra\x14\x9F\x91\x81\x01\x90a'\x9CV[`\x01[a\x14\xCAW`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x83\x16`\x04\x82\x01R`$\x01a\x05\xF9V[_Q` a*\xC7_9_Q\x90_R\x81\x14a\x14\xFAW`@Qc*\x87Ri`\xE2\x1B\x81R`\x04\x81\x01\x82\x90R`$\x01a\x05\xF9V[a\x15\x04\x83\x83a\x1B.V[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\x14>W`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[3a\x15\x84\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\x14>W`@Qc\x11\x8C\xDA\xA7`\xE0\x1B\x81R3`\x04\x82\x01R`$\x01a\x05\xF9V[a\x15\xB5a\x1B\x83V[a\x0F\xBE\x81a\x1B\xCCV[a\x14>a\x1B\x83V[\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\x16\x0BWP\x82[\x90P_\x82g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16`\x01\x14\x80\x15a\x16'WP0;\x15[\x90P\x81\x15\x80\x15a\x165WP\x80\x15[\x15a\x16SW`@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\xDFW\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\xF3W`@Qc\xD9.#=`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x82\x16a\x17\x1AW`@Qc\xD9.#=`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x02\x80T`\x01`\x01`\xA0\x1B\x03\x80\x86\x16`\x01`\x01`\xA0\x1B\x03\x19\x92\x83\x16\x17\x90\x92U`\x01\x80T\x92\x85\x16\x92\x90\x91\x16\x91\x90\x91\x17\x90Ub\x02\xA3\0\x80\x82\x10\x15a\x17oW`@Qc\xB5~!\xDF`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[P`\x08UPPV[\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[\x80Q` \x82\x01Q_\x91_Q` a*\xA7_9_Q\x90_R\x91\x15\x90\x15\x16\x15a\x18\rWPPPV[\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\x15\x04W`@Qc'\x9E4S`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R_a\x18k\x83a\x1B\xD4V[\x90P_Q` a*\xA7_9_Q\x90_R`\x03_\x82\x84\x85\t\x90P\x82\x80a\x18\x92Wa\x18\x92a(ZV[\x84\x82\t\x90P\x82\x80a\x18\xA5Wa\x18\xA5a(ZV[\x82\x82\x08\x90P__a\x18\xB5\x83a\x1D\xDDV[\x92P\x90P[\x80a\x19\x1EW\x84\x80a\x18\xCDWa\x18\xCDa(ZV[`\x01\x87\x08\x95P\x84\x80a\x18\xE1Wa\x18\xE1a(ZV[\x86\x87\t\x92P\x84\x80a\x18\xF4Wa\x18\xF4a(ZV[\x86\x84\t\x92P\x84\x80a\x19\x07Wa\x19\x07a(ZV[\x84\x84\x08\x92Pa\x19\x15\x83a\x1D\xDDV[\x92P\x90Pa\x18\xBAV[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\x19bWP\x90V[`@Q\x80`@\x01`@R\x80\x83_\x01Q\x81R` \x01_Q` a*\xA7_9_Q\x90_R\x84` \x01Qa\x19\x93\x91\x90a(nV[a\x19\xAA\x90_Q` a*\xA7_9_Q\x90_Ra'\xDAV[\x90R\x92\x91PPV[a\x19\xD9`@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\x1B\"W`@Qc\xC2\x063O`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[P\x15\x15\x95\x94PPPPPV[a\x1B7\x82a\x1E\xA5V[`@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\x1B{Wa\x15\x04\x82\x82a\x1F\x08V[a\x0BWa\x1F|V[\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\x14>W`@Qc\x1A\xFC\xD7\x9F`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0F\x8Ca\x1B\x83V[__a\x1B\xDF\x83a\x1F\x9BV[\x80Q\x90\x91P`0\x81\x14a\x1B\xF4Wa\x1B\xF4a(\x8DV[_\x81g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x1C\x0EWa\x1C\x0Ea$\x19V[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a\x1C8W` \x82\x01\x81\x806\x837\x01\x90P[P\x90P_[\x82\x81\x10\x15a\x1C\xA7W\x83`\x01a\x1CR\x83\x86a'\xDAV[a\x1C\\\x91\x90a'\xDAV[\x81Q\x81\x10a\x1ClWa\x1Cla(\xA1V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x82\x82\x81Q\x81\x10a\x1C\x89Wa\x1C\x89a(\xA1V[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81_\x1A\x90SP`\x01\x01a\x1C=V[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\x1D7W\x83\x81a\x1C\xE3\x85\x88a'\xDAV[a\x1C\xED\x91\x90a'\xC7V[\x81Q\x81\x10a\x1C\xFDWa\x1C\xFDa(\xA1V[` \x01\x01Q`\xF8\x1C`\xF8\x1B`\xF8\x1C\x82\x82\x81Q\x81\x10a\x1D\x1DWa\x1D\x1Da(\xA1V[`\xFF\x90\x92\x16` \x92\x83\x02\x91\x90\x91\x01\x90\x91\x01R`\x01\x01a\x1C\xCFV[P_a\x1DB\x82a\"\xE7V[\x90Pa\x01\0_Q` a*\xA7_9_Q\x90_R_a\x1D`\x86\x89a'\xDAV[\x90P_[\x81\x81\x10\x15a\x1D\xCDW_\x88`\x01a\x1Dz\x84\x86a'\xDAV[a\x1D\x84\x91\x90a'\xDAV[\x81Q\x81\x10a\x1D\x94Wa\x1D\x94a(\xA1V[\x01` \x01Q`\xF8\x1C\x90P\x83\x80a\x1D\xACWa\x1D\xACa(ZV[\x85\x87\t\x95P\x83\x80a\x1D\xBFWa\x1D\xBFa(ZV[\x81\x87\x08\x95PP`\x01\x01a\x1DdV[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*\xA7_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\x1EkW`@Qc\x0C\x9D>\x99`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80`\x01\x84\x90\x1B\x11\x15a\x1E\x84Wa\x1E\x81\x83\x82a'\xDAV[\x92P[\x80\x80a\x1E\x92Wa\x1E\x92a(ZV[\x83\x84\t\x96\x90\x96\x14\x96\x91\x95P\x90\x93PPPPV[\x80`\x01`\x01`\xA0\x1B\x03\x16;_\x03a\x1E\xDAW`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x82\x16`\x04\x82\x01R`$\x01a\x05\xF9V[_Q` a*\xC7_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$\x91\x90a(\xB5V[_`@Q\x80\x83\x03\x81\x85Z\xF4\x91PP=\x80_\x81\x14a\x1F\\W`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a\x1FaV[``\x91P[P\x91P\x91Pa\x1Fq\x85\x83\x83a#NV[\x92PPP[\x92\x91PPV[4\x15a\x14>W`@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\xDB\x92\x91\x90a(>V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P\x80\x84`\xF8\x1B`@Q` \x01a \x02\x92\x91\x90a(\xC0V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P\x80`@Q` \x01a $\x91\x90a(\xEAV[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x90\x82\x90R\x91Pa\x01\x01`\xF0\x1B\x90a N\x90\x83\x90\x83\x90` \x01a)\x02V[`@\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 \xBEWa \xBEa$\x19V[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a \xE8W` \x82\x01\x81\x806\x837\x01\x90P[P\x90P_\x82`@Q` \x01a \xFF\x91\x81R` \x01\x90V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x90P_[\x81Q\x81\x10\x15a!iW\x81\x81\x81Q\x81\x10a!.Wa!.a(\xA1V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x83\x82\x81Q\x81\x10a!KWa!Ka(\xA1V[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81_\x1A\x90SP`\x01\x01a!\x13V[P_\x84`@Q` \x01a!~\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\"\x10W_\x83\x82\x81Q\x81\x10a!\xB7Wa!\xB7a(\xA1V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x83\x83\x81Q\x81\x10a!\xD4Wa!\xD4a(\xA1V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x18\x90P\x88\x81`@Q` \x01a!\xF5\x92\x91\x90a)&V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x98PP`\x01\x01a!\x9CV[P\x86\x88\x87`@Q` \x01a\"&\x93\x92\x91\x90a)JV[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x96P\x86\x80Q\x90` \x01 \x93P\x83`@Q` \x01a\"T\x91\x81R` \x01\x90V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x91P_[a\"u\x8A`\xFF\x8D\x16a'\xDAV[\x81\x10\x15a\"\xD6W\x82\x81\x81Q\x81\x10a\"\x8EWa\"\x8Ea(\xA1V[\x01` \x01Q`\x01`\x01`\xF8\x1B\x03\x19\x16\x84a\"\xA8\x83\x8Da'\xC7V[\x81Q\x81\x10a\"\xB8Wa\"\xB8a(\xA1V[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81_\x1A\x90SP`\x01\x01a\"hV[P\x91\x9B\x9APPPPPPPPPPPV[_\x80\x80[\x83Q\x81\x10\x15a#GW\x83\x81\x81Q\x81\x10a#\x06Wa#\x06a(\xA1V[` \x02` \x01\x01Q`\xFF\x16\x81`\x08a#\x1E\x91\x90a)}V[a#)\x90`\x02a*wV[a#3\x91\x90a)}V[a#=\x90\x83a'\xC7V[\x91P`\x01\x01a\"\xEBV[P\x92\x91PPV[``\x82a#cWa#^\x82a#\xADV[a#\xA6V[\x81Q\x15\x80\x15a#zWP`\x01`\x01`\xA0\x1B\x03\x84\x16;\x15[\x15a#\xA3W`@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#\xBDW\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#\xECW__\xFD[\x91\x90PV[__`@\x83\x85\x03\x12\x15a$\x02W__\xFD[a$\x0B\x83a#\xD6V[\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$PWa$Pa$\x19V[`@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$\x7FWa$\x7Fa$\x19V[`@R\x91\x90PV[_`\x80\x82\x84\x03\x12\x15a$\x97W__\xFD[`@Q`\x80\x81\x01g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x82\x82\x10\x17\x15a$\xBAWa$\xBAa$\x19V[`@\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$\xF8W__\xFD[a%\0a$-V[\x825\x81R` \x92\x83\x015\x92\x81\x01\x92\x90\x92RP\x91\x90PV[____a\x01 \x85\x87\x03\x12\x15a%+W__\xFD[a%5\x86\x86a$\x87V[\x93Pa%D\x86`\x80\x87\x01a$\xE8V[\x92Pa%S\x86`\xC0\x87\x01a$\xE8V[\x91Pa\x01\0\x85\x015a\xFF\xFF\x81\x16\x81\x14a%jW__\xFD[\x93\x96\x92\x95P\x90\x93PPV[_` \x82\x84\x03\x12\x15a%\x85W__\xFD[a#\xA6\x82a#\xD6V[__`@\x83\x85\x03\x12\x15a%\x9FW__\xFD[a%\xA8\x83a#\xD6V[\x91P` \x83\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a%\xC3W__\xFD[\x83\x01`\x1F\x81\x01\x85\x13a%\xD3W__\xFD[\x805g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a%\xEDWa%\xEDa$\x19V[a&\0`\x1F\x82\x01`\x1F\x19\x16` \x01a$VV[\x81\x81R\x86` \x83\x85\x01\x01\x11\x15a&\x14W__\xFD[\x81` \x84\x01` \x83\x017_` \x83\x83\x01\x01R\x80\x93PPPP\x92P\x92\x90PV[___a\x01\0\x84\x86\x03\x12\x15a&FW__\xFD[a&P\x85\x85a$\x87V[\x92Pa&_\x85`\x80\x86\x01a$\xE8V[\x91Pa&n\x85`\xC0\x86\x01a$\xE8V[\x90P\x92P\x92P\x92V[_`\x80\x82\x84\x03\x12\x15a&\x87W__\xFD[a#\xA6\x83\x83a$\x87V[__`@\x83\x85\x03\x12\x15a&\xA2W__\xFD[a&\xAB\x83a#\xD6V[\x91Pa&\xB9` \x84\x01a#\xD6V[\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'\x07W__\xFD[P5\x91\x90PV[____`\x80\x85\x87\x03\x12\x15a'!W__\xFD[a'*\x85a#\xD6V[\x93Pa'8` \x86\x01a#\xD6V[\x92P`@\x85\x015\x91Pa'M``\x86\x01a#\xD6V[\x90P\x92\x95\x91\x94P\x92PV[cNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[\x82\x81R`@\x81\x01`\x03\x83\x10a'\x8FWcNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[\x82` \x83\x01R\x93\x92PPPV[_` \x82\x84\x03\x12\x15a'\xACW__\xFD[PQ\x91\x90PV[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[\x80\x82\x01\x80\x82\x11\x15a\x1FvWa\x1Fva'\xB3V[\x81\x81\x03\x81\x81\x11\x15a\x1FvWa\x1Fva'\xB3V[\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#\xA6V[_\x81Q\x80` \x84\x01\x85^_\x93\x01\x92\x83RP\x90\x91\x90PV[_a(Ra(L\x83\x86a('V[\x84a('V[\x94\x93PPPPV[cNH{q`\xE0\x1B_R`\x12`\x04R`$_\xFD[_\x82a(\x88WcNH{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#\xA6\x82\x84a('V[_a(\xCB\x82\x85a('V[_\x81R`\x01`\x01`\xF8\x1B\x03\x19\x93\x90\x93\x16`\x01\x84\x01RPP`\x02\x01\x91\x90PV[_a(\xF5\x82\x84a('V[_\x81R`\x01\x01\x93\x92PPPV[_a)\r\x82\x85a('V[`\x01`\x01`\xF0\x1B\x03\x19\x93\x90\x93\x16\x83RPP`\x02\x01\x91\x90PV[_a)1\x82\x85a('V[`\x01`\x01`\xF8\x1B\x03\x19\x93\x90\x93\x16\x83RPP`\x01\x01\x91\x90PV[_a)U\x82\x86a('V[`\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\x1FvWa\x1Fva'\xB3V[`\x01\x81[`\x01\x84\x11\x15a)\xCFW\x80\x85\x04\x81\x11\x15a)\xB3Wa)\xB3a'\xB3V[`\x01\x84\x16\x15a)\xC1W\x90\x81\x02\x90[`\x01\x93\x90\x93\x1C\x92\x80\x02a)\x98V[\x93P\x93\x91PPV[_\x82a)\xE5WP`\x01a\x1FvV[\x81a)\xF1WP_a\x1FvV[\x81`\x01\x81\x14a*\x07W`\x02\x81\x14a*\x11Wa*-V[`\x01\x91PPa\x1FvV[`\xFF\x84\x11\x15a*\"Wa*\"a'\xB3V[PP`\x01\x82\x1Ba\x1FvV[P` \x83\x10a\x013\x83\x10\x16`N\x84\x10`\x0B\x84\x10\x16\x17\x15a*PWP\x81\x81\na\x1FvV[a*\\_\x19\x84\x84a)\x94V[\x80_\x19\x04\x82\x11\x15a*oWa*oa'\xB3V[\x02\x93\x92PPPV[_a#\xA6\x83\x83a)\xD7V\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#\0\n",
2214 );
2215 #[rustfmt::skip]
2221 #[allow(clippy::all)]
2222 pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
2223 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#\xF1V[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%\x17V[a\x06\xD6V[4\x80\x15a\x01\xE0W__\xFD[Pa\x01\x84a\x01\xEF6`\x04a%uV[a\x08iV[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#\xF1V[a\t\x8AV[a\x01\x84a\x02C6`\x04a%\x8EV[a\x0B<V[4\x80\x15a\x02SW__\xFD[Pa\x02\x08a\x0B[V[4\x80\x15a\x02gW__\xFD[Pa\x01\x84a\x02v6`\x04a&3V[a\x0BvV[4\x80\x15a\x02\x86W__\xFD[Pa\x01\x84a\x0C?V[4\x80\x15a\x02\x9AW__\xFD[Pa\x01\x84a\x0C\xCDV[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&wV[a\x0C\xEEV[4\x80\x15a\x03\x1DW__\xFD[Pa\x02\x08`\x08T\x81V[4\x80\x15a\x032W__\xFD[Pa\x03da\x03A6`\x04a&\x91V[`\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%uV[a\rHV[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&\xC2V[4\x80\x15a\x03\xE0W__\xFD[Pa\x04\x03a\x03\xEF6`\x04a&\xF7V[`\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%uV[`\x05` R_\x90\x81R`@\x90 T\x81V[4\x80\x15a\x04hW__\xFD[Pa\x01\x84a\x04w6`\x04a'\x0EV[a\x0EXV[4\x80\x15a\x04\x87W__\xFD[Pa\x02\x08a\x04\x966`\x04a&\x91V[`\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%uV[a\x0F\x84V[4\x80\x15a\x04\xDCW__\xFD[Pa\x05\x06a\x04\xEB6`\x04a%uV[`\x03` R_\x90\x81R`@\x90 \x80T`\x01\x90\x91\x01T`\xFF\x16\x82V[`@Qa\x01\xAD\x92\x91\x90a'lV[4\x80\x15a\x05\x1FW__\xFD[P`\x02Ta\x02\xDB\x90`\x01`\x01`\xA0\x1B\x03\x16\x81V[a\x05<\x82a\x0F\xC1V[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'\x9CV[\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[`\x02Ta\x06\x1A\x90`\x01`\x01`\xA0\x1B\x03\x16\x830\x86a\x10BV[`\x01`\x01`\xA0\x1B\x03\x84\x16_\x90\x81R`\x03` R`@\x81 \x80T\x85\x92\x90a\x06A\x90\x84\x90a'\xC7V[\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\x06|\x90\x84\x90a'\xC7V[\x92PP\x81\x90UP\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\xC8\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA3PPPPV[3a\x06\xE0\x81a\x10\xE6V[a\x06\xE9\x84a\x113V[a\x06\xF2\x85a\x11\xC6V[`@\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\x12\x02V[a'\x10\x83a\xFF\xFF\x16\x11\x15a\x07KW`@Qc\xDC\x81\xDB\x85`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x04_a\x07Y\x89a\x0C\xEEV[\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\xA0Wa\x07\xA0a'XV[\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\xE6Wa\x07\xE6a'XV[\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\xA3W`@Qcy)\x8AS`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80B\x10\x15a\x08\xC4W`@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\x0CW`@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\tA\x91\x16\x84\x83a\x13\x0BV[\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\t|\x91\x81R` \x01\x90V[`@Q\x80\x91\x03\x90\xA2PPPPV[a\t\x93\x82a\x0F\xC1V[3_\x82\x90\x03a\t\xB5W`@Qc\x1F* \x05`\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\t\xF8W`@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\nAW`@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\nw\x90\x84\x90a'\xDAV[\x92PP\x81\x90UP`@Q\x80`@\x01`@R\x80\x84\x81R` \x01`\x08TBa\n\x9D\x91\x90a'\xC7V[\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\n\xF0\x90\x84\x90a'\xDAV[\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\xC8\x91\x81R` \x01\x90V[a\x0BDa\x13\x9AV[a\x0BM\x82a\x14@V[a\x0BW\x82\x82a\x14HV[PPV[_a\x0Bda\x15\tV[P_Q` a*\xC7_9_Q\x90_R\x90V[3a\x0B\x80\x81a\x0F\xC1V[a\x0B\x89\x83a\x113V[a\x0B\x92\x84a\x11\xC6V[`@\x80Q`\x01`\x01`\xA0\x1B\x03\x83\x16` \x82\x01R_\x91\x01`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90Pa\x0B\xC4\x81\x84\x87a\x12\x02V[`\x01`\x04_a\x0B\xD2\x88a\x0C\xEEV[\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\x0C0\x92\x91\x90a'\xEDV[`@Q\x80\x91\x03\x90\xA2PPPPPV[3a\x0CI\x81a\x0F\xC1V[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x03` R`@\x90 `\x01\x01\x80T`\xFF\x19\x16`\x02\x17\x90U`\x08Ta\x0C{\x90Ba'\xC7V[`\x01`\x01`\xA0\x1B\x03\x82\x16_\x81\x81R`\x05` \x90\x81R`@\x80\x83 \x94\x90\x94U`\x03\x90R\x82\x81 \x81\x90U\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\x0C\xD5a\x15RV[`@Qc\x17\xD5\xC9e`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[_\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\x8DW`@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\r\xD5W`@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\x0E\x10\x91\x16\x83\x83a\x13\x0BV[\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\x0EK\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\x9DWP\x82[\x90P_\x82g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16`\x01\x14\x80\x15a\x0E\xB9WP0;\x15[\x90P\x81\x15\x80\x15a\x0E\xC7WP\x80\x15[\x15a\x0E\xE5W`@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\x0F\x0FW\x84T`\xFF`@\x1B\x19\x16`\x01`@\x1B\x17\x85U[a\x0F\x18\x86a\x15\xADV[a\x0F a\x15\xBEV[a\x0F(a\x15\xC6V[a\x0F3\x89\x89\x89a\x16\xCCV[\x83\x15a\x0FyW\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\x8Ca\x15RV[`\x01`\x01`\xA0\x1B\x03\x81\x16a\x0F\xB5W`@Qc\x1EO\xBD\xF7`\xE0\x1B\x81R_`\x04\x82\x01R`$\x01a\x05\xF9V[a\x0F\xBE\x81a\x17wV[PV[`\x01`\x01`\xA0\x1B\x03\x81\x16_\x90\x81R`\x03` R`@\x81 `\x01\x01T`\xFF\x16\x90\x81`\x02\x81\x11\x15a\x0F\xF2Wa\x0F\xF2a'XV[\x03a\x10\x10W`@QcP\x8Ay?`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x02\x81`\x02\x81\x11\x15a\x10$Wa\x10$a'XV[\x03a\x0BWW`@Qc\xEA\xB4\xA9c`\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\x9BWP\x83;\x15=\x17\x15[\x80a\x10\xDFW`@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\x15Wa\x11\x15a'XV[\x14a\x0F\xBEW`@Qc\x13.~\xFB`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80Q\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X](3\xE8Hy\xB9p\x91C\xE1\xF5\x93\xF0\0\0\x01\x11\x15\x80a\x11\x87WP\x7F0dNr\xE11\xA0)\xB8PE\xB6\x81\x81X](3\xE8Hy\xB9p\x91C\xE1\xF5\x93\xF0\0\0\x01\x81` \x01Q\x10\x15[\x15a\x11\xA5W`@Qc\x06\xCFC\x8F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80Q_\x03a\x0F\xBEW`@Qc\x06\xCFC\x8F`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x04_a\x11\xD2\x83a\x0C\xEEV[\x81R` \x81\x01\x91\x90\x91R`@\x01_ T`\xFF\x16\x15a\x0F\xBEW`@Qb\xDA\x8AW`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x81Q` \x83\x01Q\x15\x90\x15\x16\x15a\x12+W`@Qc:\x13\x91\x99`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80Q\x15\x80\x15a\x12<WP` \x81\x01Q\x15[\x80\x15a\x12JWP`@\x81\x01Q\x15[\x80\x15a\x12XWP``\x81\x01Q\x15[\x15a\x12vW`@Qc^Cb\xCD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x12\x7F\x82a\x17\xE7V[_`@Q\x80``\x01`@R\x80`$\x81R` \x01a*\x83`$\x919\x90P_\x84\x82`@Q` \x01a\x12\xAF\x92\x91\x90a(>V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P_a\x12\xCA\x82a\x18NV[\x90Pa\x12\xE7\x81\x85a\x12\xDA\x88a\x19;V[a\x12\xE2a\x19\xB2V[a\x1A\x7FV[a\x13\x03W`@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\x13UWP\x82;\x15=\x17\x15[\x80a\x13\x94W`@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\x14 WP\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\x14\x14_Q` a*\xC7_9_Q\x90_RT`\x01`\x01`\xA0\x1B\x03\x16\x90V[`\x01`\x01`\xA0\x1B\x03\x16\x14\x15[\x15a\x14>W`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[V[a\x0F\xBEa\x15RV[\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\xA2WP`@\x80Q`\x1F=\x90\x81\x01`\x1F\x19\x16\x82\x01\x90\x92Ra\x14\x9F\x91\x81\x01\x90a'\x9CV[`\x01[a\x14\xCAW`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x83\x16`\x04\x82\x01R`$\x01a\x05\xF9V[_Q` a*\xC7_9_Q\x90_R\x81\x14a\x14\xFAW`@Qc*\x87Ri`\xE2\x1B\x81R`\x04\x81\x01\x82\x90R`$\x01a\x05\xF9V[a\x15\x04\x83\x83a\x1B.V[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\x14>W`@Qcp>F\xDD`\xE1\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[3a\x15\x84\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\x14>W`@Qc\x11\x8C\xDA\xA7`\xE0\x1B\x81R3`\x04\x82\x01R`$\x01a\x05\xF9V[a\x15\xB5a\x1B\x83V[a\x0F\xBE\x81a\x1B\xCCV[a\x14>a\x1B\x83V[\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\x16\x0BWP\x82[\x90P_\x82g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x16`\x01\x14\x80\x15a\x16'WP0;\x15[\x90P\x81\x15\x80\x15a\x165WP\x80\x15[\x15a\x16SW`@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\xDFW\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\xF3W`@Qc\xD9.#=`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x01`\x01`\xA0\x1B\x03\x82\x16a\x17\x1AW`@Qc\xD9.#=`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`\x02\x80T`\x01`\x01`\xA0\x1B\x03\x80\x86\x16`\x01`\x01`\xA0\x1B\x03\x19\x92\x83\x16\x17\x90\x92U`\x01\x80T\x92\x85\x16\x92\x90\x91\x16\x91\x90\x91\x17\x90Ub\x02\xA3\0\x80\x82\x10\x15a\x17oW`@Qc\xB5~!\xDF`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[P`\x08UPPV[\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[\x80Q` \x82\x01Q_\x91_Q` a*\xA7_9_Q\x90_R\x91\x15\x90\x15\x16\x15a\x18\rWPPPV[\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\x15\x04W`@Qc'\x9E4S`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[`@\x80Q\x80\x82\x01\x90\x91R_\x80\x82R` \x82\x01R_a\x18k\x83a\x1B\xD4V[\x90P_Q` a*\xA7_9_Q\x90_R`\x03_\x82\x84\x85\t\x90P\x82\x80a\x18\x92Wa\x18\x92a(ZV[\x84\x82\t\x90P\x82\x80a\x18\xA5Wa\x18\xA5a(ZV[\x82\x82\x08\x90P__a\x18\xB5\x83a\x1D\xDDV[\x92P\x90P[\x80a\x19\x1EW\x84\x80a\x18\xCDWa\x18\xCDa(ZV[`\x01\x87\x08\x95P\x84\x80a\x18\xE1Wa\x18\xE1a(ZV[\x86\x87\t\x92P\x84\x80a\x18\xF4Wa\x18\xF4a(ZV[\x86\x84\t\x92P\x84\x80a\x19\x07Wa\x19\x07a(ZV[\x84\x84\x08\x92Pa\x19\x15\x83a\x1D\xDDV[\x92P\x90Pa\x18\xBAV[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\x19bWP\x90V[`@Q\x80`@\x01`@R\x80\x83_\x01Q\x81R` \x01_Q` a*\xA7_9_Q\x90_R\x84` \x01Qa\x19\x93\x91\x90a(nV[a\x19\xAA\x90_Q` a*\xA7_9_Q\x90_Ra'\xDAV[\x90R\x92\x91PPV[a\x19\xD9`@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\x1B\"W`@Qc\xC2\x063O`\xE0\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[P\x15\x15\x95\x94PPPPPV[a\x1B7\x82a\x1E\xA5V[`@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\x1B{Wa\x15\x04\x82\x82a\x1F\x08V[a\x0BWa\x1F|V[\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\x14>W`@Qc\x1A\xFC\xD7\x9F`\xE3\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[a\x0F\x8Ca\x1B\x83V[__a\x1B\xDF\x83a\x1F\x9BV[\x80Q\x90\x91P`0\x81\x14a\x1B\xF4Wa\x1B\xF4a(\x8DV[_\x81g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a\x1C\x0EWa\x1C\x0Ea$\x19V[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a\x1C8W` \x82\x01\x81\x806\x837\x01\x90P[P\x90P_[\x82\x81\x10\x15a\x1C\xA7W\x83`\x01a\x1CR\x83\x86a'\xDAV[a\x1C\\\x91\x90a'\xDAV[\x81Q\x81\x10a\x1ClWa\x1Cla(\xA1V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x82\x82\x81Q\x81\x10a\x1C\x89Wa\x1C\x89a(\xA1V[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81_\x1A\x90SP`\x01\x01a\x1C=V[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\x1D7W\x83\x81a\x1C\xE3\x85\x88a'\xDAV[a\x1C\xED\x91\x90a'\xC7V[\x81Q\x81\x10a\x1C\xFDWa\x1C\xFDa(\xA1V[` \x01\x01Q`\xF8\x1C`\xF8\x1B`\xF8\x1C\x82\x82\x81Q\x81\x10a\x1D\x1DWa\x1D\x1Da(\xA1V[`\xFF\x90\x92\x16` \x92\x83\x02\x91\x90\x91\x01\x90\x91\x01R`\x01\x01a\x1C\xCFV[P_a\x1DB\x82a\"\xE7V[\x90Pa\x01\0_Q` a*\xA7_9_Q\x90_R_a\x1D`\x86\x89a'\xDAV[\x90P_[\x81\x81\x10\x15a\x1D\xCDW_\x88`\x01a\x1Dz\x84\x86a'\xDAV[a\x1D\x84\x91\x90a'\xDAV[\x81Q\x81\x10a\x1D\x94Wa\x1D\x94a(\xA1V[\x01` \x01Q`\xF8\x1C\x90P\x83\x80a\x1D\xACWa\x1D\xACa(ZV[\x85\x87\t\x95P\x83\x80a\x1D\xBFWa\x1D\xBFa(ZV[\x81\x87\x08\x95PP`\x01\x01a\x1DdV[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*\xA7_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\x1EkW`@Qc\x0C\x9D>\x99`\xE2\x1B\x81R`\x04\x01`@Q\x80\x91\x03\x90\xFD[\x80`\x01\x84\x90\x1B\x11\x15a\x1E\x84Wa\x1E\x81\x83\x82a'\xDAV[\x92P[\x80\x80a\x1E\x92Wa\x1E\x92a(ZV[\x83\x84\t\x96\x90\x96\x14\x96\x91\x95P\x90\x93PPPPV[\x80`\x01`\x01`\xA0\x1B\x03\x16;_\x03a\x1E\xDAW`@QcL\x9C\x8C\xE3`\xE0\x1B\x81R`\x01`\x01`\xA0\x1B\x03\x82\x16`\x04\x82\x01R`$\x01a\x05\xF9V[_Q` a*\xC7_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$\x91\x90a(\xB5V[_`@Q\x80\x83\x03\x81\x85Z\xF4\x91PP=\x80_\x81\x14a\x1F\\W`@Q\x91P`\x1F\x19`?=\x01\x16\x82\x01`@R=\x82R=_` \x84\x01>a\x1FaV[``\x91P[P\x91P\x91Pa\x1Fq\x85\x83\x83a#NV[\x92PPP[\x92\x91PPV[4\x15a\x14>W`@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\xDB\x92\x91\x90a(>V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P\x80\x84`\xF8\x1B`@Q` \x01a \x02\x92\x91\x90a(\xC0V[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x90P\x80`@Q` \x01a $\x91\x90a(\xEAV[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x90\x82\x90R\x91Pa\x01\x01`\xF0\x1B\x90a N\x90\x83\x90\x83\x90` \x01a)\x02V[`@\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 \xBEWa \xBEa$\x19V[`@Q\x90\x80\x82R\x80`\x1F\x01`\x1F\x19\x16` \x01\x82\x01`@R\x80\x15a \xE8W` \x82\x01\x81\x806\x837\x01\x90P[P\x90P_\x82`@Q` \x01a \xFF\x91\x81R` \x01\x90V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x90P_[\x81Q\x81\x10\x15a!iW\x81\x81\x81Q\x81\x10a!.Wa!.a(\xA1V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x83\x82\x81Q\x81\x10a!KWa!Ka(\xA1V[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81_\x1A\x90SP`\x01\x01a!\x13V[P_\x84`@Q` \x01a!~\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\"\x10W_\x83\x82\x81Q\x81\x10a!\xB7Wa!\xB7a(\xA1V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x83\x83\x81Q\x81\x10a!\xD4Wa!\xD4a(\xA1V[` \x01\x01Q`\xF8\x1C`\xF8\x1B\x18\x90P\x88\x81`@Q` \x01a!\xF5\x92\x91\x90a)&V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x98PP`\x01\x01a!\x9CV[P\x86\x88\x87`@Q` \x01a\"&\x93\x92\x91\x90a)JV[`@Q` \x81\x83\x03\x03\x81R\x90`@R\x96P\x86\x80Q\x90` \x01 \x93P\x83`@Q` \x01a\"T\x91\x81R` \x01\x90V[`@\x80Q`\x1F\x19\x81\x84\x03\x01\x81R\x91\x90R\x91P_[a\"u\x8A`\xFF\x8D\x16a'\xDAV[\x81\x10\x15a\"\xD6W\x82\x81\x81Q\x81\x10a\"\x8EWa\"\x8Ea(\xA1V[\x01` \x01Q`\x01`\x01`\xF8\x1B\x03\x19\x16\x84a\"\xA8\x83\x8Da'\xC7V[\x81Q\x81\x10a\"\xB8Wa\"\xB8a(\xA1V[` \x01\x01\x90`\x01`\x01`\xF8\x1B\x03\x19\x16\x90\x81_\x1A\x90SP`\x01\x01a\"hV[P\x91\x9B\x9APPPPPPPPPPPV[_\x80\x80[\x83Q\x81\x10\x15a#GW\x83\x81\x81Q\x81\x10a#\x06Wa#\x06a(\xA1V[` \x02` \x01\x01Q`\xFF\x16\x81`\x08a#\x1E\x91\x90a)}V[a#)\x90`\x02a*wV[a#3\x91\x90a)}V[a#=\x90\x83a'\xC7V[\x91P`\x01\x01a\"\xEBV[P\x92\x91PPV[``\x82a#cWa#^\x82a#\xADV[a#\xA6V[\x81Q\x15\x80\x15a#zWP`\x01`\x01`\xA0\x1B\x03\x84\x16;\x15[\x15a#\xA3W`@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#\xBDW\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#\xECW__\xFD[\x91\x90PV[__`@\x83\x85\x03\x12\x15a$\x02W__\xFD[a$\x0B\x83a#\xD6V[\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$PWa$Pa$\x19V[`@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$\x7FWa$\x7Fa$\x19V[`@R\x91\x90PV[_`\x80\x82\x84\x03\x12\x15a$\x97W__\xFD[`@Q`\x80\x81\x01g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x82\x82\x10\x17\x15a$\xBAWa$\xBAa$\x19V[`@\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$\xF8W__\xFD[a%\0a$-V[\x825\x81R` \x92\x83\x015\x92\x81\x01\x92\x90\x92RP\x91\x90PV[____a\x01 \x85\x87\x03\x12\x15a%+W__\xFD[a%5\x86\x86a$\x87V[\x93Pa%D\x86`\x80\x87\x01a$\xE8V[\x92Pa%S\x86`\xC0\x87\x01a$\xE8V[\x91Pa\x01\0\x85\x015a\xFF\xFF\x81\x16\x81\x14a%jW__\xFD[\x93\x96\x92\x95P\x90\x93PPV[_` \x82\x84\x03\x12\x15a%\x85W__\xFD[a#\xA6\x82a#\xD6V[__`@\x83\x85\x03\x12\x15a%\x9FW__\xFD[a%\xA8\x83a#\xD6V[\x91P` \x83\x015g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a%\xC3W__\xFD[\x83\x01`\x1F\x81\x01\x85\x13a%\xD3W__\xFD[\x805g\xFF\xFF\xFF\xFF\xFF\xFF\xFF\xFF\x81\x11\x15a%\xEDWa%\xEDa$\x19V[a&\0`\x1F\x82\x01`\x1F\x19\x16` \x01a$VV[\x81\x81R\x86` \x83\x85\x01\x01\x11\x15a&\x14W__\xFD[\x81` \x84\x01` \x83\x017_` \x83\x83\x01\x01R\x80\x93PPPP\x92P\x92\x90PV[___a\x01\0\x84\x86\x03\x12\x15a&FW__\xFD[a&P\x85\x85a$\x87V[\x92Pa&_\x85`\x80\x86\x01a$\xE8V[\x91Pa&n\x85`\xC0\x86\x01a$\xE8V[\x90P\x92P\x92P\x92V[_`\x80\x82\x84\x03\x12\x15a&\x87W__\xFD[a#\xA6\x83\x83a$\x87V[__`@\x83\x85\x03\x12\x15a&\xA2W__\xFD[a&\xAB\x83a#\xD6V[\x91Pa&\xB9` \x84\x01a#\xD6V[\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'\x07W__\xFD[P5\x91\x90PV[____`\x80\x85\x87\x03\x12\x15a'!W__\xFD[a'*\x85a#\xD6V[\x93Pa'8` \x86\x01a#\xD6V[\x92P`@\x85\x015\x91Pa'M``\x86\x01a#\xD6V[\x90P\x92\x95\x91\x94P\x92PV[cNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[\x82\x81R`@\x81\x01`\x03\x83\x10a'\x8FWcNH{q`\xE0\x1B_R`!`\x04R`$_\xFD[\x82` \x83\x01R\x93\x92PPPV[_` \x82\x84\x03\x12\x15a'\xACW__\xFD[PQ\x91\x90PV[cNH{q`\xE0\x1B_R`\x11`\x04R`$_\xFD[\x80\x82\x01\x80\x82\x11\x15a\x1FvWa\x1Fva'\xB3V[\x81\x81\x03\x81\x81\x11\x15a\x1FvWa\x1Fva'\xB3V[\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#\xA6V[_\x81Q\x80` \x84\x01\x85^_\x93\x01\x92\x83RP\x90\x91\x90PV[_a(Ra(L\x83\x86a('V[\x84a('V[\x94\x93PPPPV[cNH{q`\xE0\x1B_R`\x12`\x04R`$_\xFD[_\x82a(\x88WcNH{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#\xA6\x82\x84a('V[_a(\xCB\x82\x85a('V[_\x81R`\x01`\x01`\xF8\x1B\x03\x19\x93\x90\x93\x16`\x01\x84\x01RPP`\x02\x01\x91\x90PV[_a(\xF5\x82\x84a('V[_\x81R`\x01\x01\x93\x92PPPV[_a)\r\x82\x85a('V[`\x01`\x01`\xF0\x1B\x03\x19\x93\x90\x93\x16\x83RPP`\x02\x01\x91\x90PV[_a)1\x82\x85a('V[`\x01`\x01`\xF8\x1B\x03\x19\x93\x90\x93\x16\x83RPP`\x01\x01\x91\x90PV[_a)U\x82\x86a('V[`\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\x1FvWa\x1Fva'\xB3V[`\x01\x81[`\x01\x84\x11\x15a)\xCFW\x80\x85\x04\x81\x11\x15a)\xB3Wa)\xB3a'\xB3V[`\x01\x84\x16\x15a)\xC1W\x90\x81\x02\x90[`\x01\x93\x90\x93\x1C\x92\x80\x02a)\x98V[\x93P\x93\x91PPV[_\x82a)\xE5WP`\x01a\x1FvV[\x81a)\xF1WP_a\x1FvV[\x81`\x01\x81\x14a*\x07W`\x02\x81\x14a*\x11Wa*-V[`\x01\x91PPa\x1FvV[`\xFF\x84\x11\x15a*\"Wa*\"a'\xB3V[PP`\x01\x82\x1Ba\x1FvV[P` \x83\x10a\x013\x83\x10\x16`N\x84\x10`\x0B\x84\x10\x16\x17\x15a*PWP\x81\x81\na\x1FvV[a*\\_\x19\x84\x84a)\x94V[\x80_\x19\x04\x82\x11\x15a*oWa*oa'\xB3V[\x02\x93\x92PPPV[_a#\xA6\x83\x83a)\xD7V\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#\0\n",
2224 );
2225 #[derive(serde::Serialize, serde::Deserialize)]
2226 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2227 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2228 #[derive(Clone)]
2229 pub struct ValidatorStatus(u8);
2230 const _: () = {
2231 use alloy::sol_types as alloy_sol_types;
2232 #[automatically_derived]
2233 impl alloy_sol_types::private::SolTypeValue<ValidatorStatus> for u8 {
2234 #[inline]
2235 fn stv_to_tokens(
2236 &self,
2237 ) -> <alloy::sol_types::sol_data::Uint<
2238 8,
2239 > as alloy_sol_types::SolType>::Token<'_> {
2240 alloy_sol_types::private::SolTypeValue::<
2241 alloy::sol_types::sol_data::Uint<8>,
2242 >::stv_to_tokens(self)
2243 }
2244 #[inline]
2245 fn stv_eip712_data_word(&self) -> alloy_sol_types::Word {
2246 <alloy::sol_types::sol_data::Uint<
2247 8,
2248 > as alloy_sol_types::SolType>::tokenize(self)
2249 .0
2250 }
2251 #[inline]
2252 fn stv_abi_encode_packed_to(
2253 &self,
2254 out: &mut alloy_sol_types::private::Vec<u8>,
2255 ) {
2256 <alloy::sol_types::sol_data::Uint<
2257 8,
2258 > as alloy_sol_types::SolType>::abi_encode_packed_to(self, out)
2259 }
2260 #[inline]
2261 fn stv_abi_packed_encoded_size(&self) -> usize {
2262 <alloy::sol_types::sol_data::Uint<
2263 8,
2264 > as alloy_sol_types::SolType>::abi_encoded_size(self)
2265 }
2266 }
2267 impl ValidatorStatus {
2268 pub const NAME: &'static str = stringify!(@ name);
2270 #[inline]
2272 pub const fn from_underlying(value: u8) -> Self {
2273 Self(value)
2274 }
2275 #[inline]
2277 pub const fn into_underlying(self) -> u8 {
2278 self.0
2279 }
2280 #[inline]
2283 pub fn abi_encode(&self) -> alloy_sol_types::private::Vec<u8> {
2284 <Self as alloy_sol_types::SolType>::abi_encode(&self.0)
2285 }
2286 #[inline]
2289 pub fn abi_encode_packed(&self) -> alloy_sol_types::private::Vec<u8> {
2290 <Self as alloy_sol_types::SolType>::abi_encode_packed(&self.0)
2291 }
2292 }
2293 #[automatically_derived]
2294 impl From<u8> for ValidatorStatus {
2295 fn from(value: u8) -> Self {
2296 Self::from_underlying(value)
2297 }
2298 }
2299 #[automatically_derived]
2300 impl From<ValidatorStatus> for u8 {
2301 fn from(value: ValidatorStatus) -> Self {
2302 value.into_underlying()
2303 }
2304 }
2305 #[automatically_derived]
2306 impl alloy_sol_types::SolType for ValidatorStatus {
2307 type RustType = u8;
2308 type Token<'a> = <alloy::sol_types::sol_data::Uint<
2309 8,
2310 > as alloy_sol_types::SolType>::Token<'a>;
2311 const SOL_NAME: &'static str = Self::NAME;
2312 const ENCODED_SIZE: Option<usize> = <alloy::sol_types::sol_data::Uint<
2313 8,
2314 > as alloy_sol_types::SolType>::ENCODED_SIZE;
2315 const PACKED_ENCODED_SIZE: Option<usize> = <alloy::sol_types::sol_data::Uint<
2316 8,
2317 > as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE;
2318 #[inline]
2319 fn valid_token(token: &Self::Token<'_>) -> bool {
2320 Self::type_check(token).is_ok()
2321 }
2322 #[inline]
2323 fn type_check(token: &Self::Token<'_>) -> alloy_sol_types::Result<()> {
2324 <alloy::sol_types::sol_data::Uint<
2325 8,
2326 > as alloy_sol_types::SolType>::type_check(token)
2327 }
2328 #[inline]
2329 fn detokenize(token: Self::Token<'_>) -> Self::RustType {
2330 <alloy::sol_types::sol_data::Uint<
2331 8,
2332 > as alloy_sol_types::SolType>::detokenize(token)
2333 }
2334 }
2335 #[automatically_derived]
2336 impl alloy_sol_types::EventTopic for ValidatorStatus {
2337 #[inline]
2338 fn topic_preimage_length(rust: &Self::RustType) -> usize {
2339 <alloy::sol_types::sol_data::Uint<
2340 8,
2341 > as alloy_sol_types::EventTopic>::topic_preimage_length(rust)
2342 }
2343 #[inline]
2344 fn encode_topic_preimage(
2345 rust: &Self::RustType,
2346 out: &mut alloy_sol_types::private::Vec<u8>,
2347 ) {
2348 <alloy::sol_types::sol_data::Uint<
2349 8,
2350 > as alloy_sol_types::EventTopic>::encode_topic_preimage(rust, out)
2351 }
2352 #[inline]
2353 fn encode_topic(
2354 rust: &Self::RustType,
2355 ) -> alloy_sol_types::abi::token::WordToken {
2356 <alloy::sol_types::sol_data::Uint<
2357 8,
2358 > as alloy_sol_types::EventTopic>::encode_topic(rust)
2359 }
2360 }
2361 };
2362 #[derive(serde::Serialize, serde::Deserialize)]
2363 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2364 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2369 #[derive(Clone)]
2370 pub struct AddressEmptyCode {
2371 #[allow(missing_docs)]
2372 pub target: alloy::sol_types::private::Address,
2373 }
2374 #[allow(
2375 non_camel_case_types,
2376 non_snake_case,
2377 clippy::pub_underscore_fields,
2378 clippy::style
2379 )]
2380 const _: () = {
2381 use alloy::sol_types as alloy_sol_types;
2382 #[doc(hidden)]
2383 #[allow(dead_code)]
2384 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
2385 #[doc(hidden)]
2386 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
2387 #[cfg(test)]
2388 #[allow(dead_code, unreachable_patterns)]
2389 fn _type_assertion(
2390 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
2391 ) {
2392 match _t {
2393 alloy_sol_types::private::AssertTypeEq::<
2394 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2395 >(_) => {}
2396 }
2397 }
2398 #[automatically_derived]
2399 #[doc(hidden)]
2400 impl ::core::convert::From<AddressEmptyCode> for UnderlyingRustTuple<'_> {
2401 fn from(value: AddressEmptyCode) -> Self {
2402 (value.target,)
2403 }
2404 }
2405 #[automatically_derived]
2406 #[doc(hidden)]
2407 impl ::core::convert::From<UnderlyingRustTuple<'_>> for AddressEmptyCode {
2408 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2409 Self { target: tuple.0 }
2410 }
2411 }
2412 #[automatically_derived]
2413 impl alloy_sol_types::SolError for AddressEmptyCode {
2414 type Parameters<'a> = UnderlyingSolTuple<'a>;
2415 type Token<'a> = <Self::Parameters<
2416 'a,
2417 > as alloy_sol_types::SolType>::Token<'a>;
2418 const SIGNATURE: &'static str = "AddressEmptyCode(address)";
2419 const SELECTOR: [u8; 4] = [153u8, 150u8, 179u8, 21u8];
2420 #[inline]
2421 fn new<'a>(
2422 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2423 ) -> Self {
2424 tuple.into()
2425 }
2426 #[inline]
2427 fn tokenize(&self) -> Self::Token<'_> {
2428 (
2429 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
2430 &self.target,
2431 ),
2432 )
2433 }
2434 #[inline]
2435 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
2436 <Self::Parameters<
2437 '_,
2438 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
2439 .map(Self::new)
2440 }
2441 }
2442 };
2443 #[derive(serde::Serialize, serde::Deserialize)]
2444 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2445 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2450 #[derive(Clone)]
2451 pub struct BLSSigIsInfinity;
2452 #[allow(
2453 non_camel_case_types,
2454 non_snake_case,
2455 clippy::pub_underscore_fields,
2456 clippy::style
2457 )]
2458 const _: () = {
2459 use alloy::sol_types as alloy_sol_types;
2460 #[doc(hidden)]
2461 #[allow(dead_code)]
2462 type UnderlyingSolTuple<'a> = ();
2463 #[doc(hidden)]
2464 type UnderlyingRustTuple<'a> = ();
2465 #[cfg(test)]
2466 #[allow(dead_code, unreachable_patterns)]
2467 fn _type_assertion(
2468 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
2469 ) {
2470 match _t {
2471 alloy_sol_types::private::AssertTypeEq::<
2472 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2473 >(_) => {}
2474 }
2475 }
2476 #[automatically_derived]
2477 #[doc(hidden)]
2478 impl ::core::convert::From<BLSSigIsInfinity> for UnderlyingRustTuple<'_> {
2479 fn from(value: BLSSigIsInfinity) -> Self {
2480 ()
2481 }
2482 }
2483 #[automatically_derived]
2484 #[doc(hidden)]
2485 impl ::core::convert::From<UnderlyingRustTuple<'_>> for BLSSigIsInfinity {
2486 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2487 Self
2488 }
2489 }
2490 #[automatically_derived]
2491 impl alloy_sol_types::SolError for BLSSigIsInfinity {
2492 type Parameters<'a> = UnderlyingSolTuple<'a>;
2493 type Token<'a> = <Self::Parameters<
2494 'a,
2495 > as alloy_sol_types::SolType>::Token<'a>;
2496 const SIGNATURE: &'static str = "BLSSigIsInfinity()";
2497 const SELECTOR: [u8; 4] = [116u8, 39u8, 35u8, 50u8];
2498 #[inline]
2499 fn new<'a>(
2500 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2501 ) -> Self {
2502 tuple.into()
2503 }
2504 #[inline]
2505 fn tokenize(&self) -> Self::Token<'_> {
2506 ()
2507 }
2508 #[inline]
2509 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
2510 <Self::Parameters<
2511 '_,
2512 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
2513 .map(Self::new)
2514 }
2515 }
2516 };
2517 #[derive(serde::Serialize, serde::Deserialize)]
2518 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2519 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2524 #[derive(Clone)]
2525 pub struct BLSSigVerificationFailed;
2526 #[allow(
2527 non_camel_case_types,
2528 non_snake_case,
2529 clippy::pub_underscore_fields,
2530 clippy::style
2531 )]
2532 const _: () = {
2533 use alloy::sol_types as alloy_sol_types;
2534 #[doc(hidden)]
2535 #[allow(dead_code)]
2536 type UnderlyingSolTuple<'a> = ();
2537 #[doc(hidden)]
2538 type UnderlyingRustTuple<'a> = ();
2539 #[cfg(test)]
2540 #[allow(dead_code, unreachable_patterns)]
2541 fn _type_assertion(
2542 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
2543 ) {
2544 match _t {
2545 alloy_sol_types::private::AssertTypeEq::<
2546 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2547 >(_) => {}
2548 }
2549 }
2550 #[automatically_derived]
2551 #[doc(hidden)]
2552 impl ::core::convert::From<BLSSigVerificationFailed>
2553 for UnderlyingRustTuple<'_> {
2554 fn from(value: BLSSigVerificationFailed) -> Self {
2555 ()
2556 }
2557 }
2558 #[automatically_derived]
2559 #[doc(hidden)]
2560 impl ::core::convert::From<UnderlyingRustTuple<'_>>
2561 for BLSSigVerificationFailed {
2562 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2563 Self
2564 }
2565 }
2566 #[automatically_derived]
2567 impl alloy_sol_types::SolError for BLSSigVerificationFailed {
2568 type Parameters<'a> = UnderlyingSolTuple<'a>;
2569 type Token<'a> = <Self::Parameters<
2570 'a,
2571 > as alloy_sol_types::SolType>::Token<'a>;
2572 const SIGNATURE: &'static str = "BLSSigVerificationFailed()";
2573 const SELECTOR: [u8; 4] = [12u8, 237u8, 62u8, 80u8];
2574 #[inline]
2575 fn new<'a>(
2576 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2577 ) -> Self {
2578 tuple.into()
2579 }
2580 #[inline]
2581 fn tokenize(&self) -> Self::Token<'_> {
2582 ()
2583 }
2584 #[inline]
2585 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
2586 <Self::Parameters<
2587 '_,
2588 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
2589 .map(Self::new)
2590 }
2591 }
2592 };
2593 #[derive(serde::Serialize, serde::Deserialize)]
2594 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2595 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2600 #[derive(Clone)]
2601 pub struct BLSVKIsInfinity;
2602 #[allow(
2603 non_camel_case_types,
2604 non_snake_case,
2605 clippy::pub_underscore_fields,
2606 clippy::style
2607 )]
2608 const _: () = {
2609 use alloy::sol_types as alloy_sol_types;
2610 #[doc(hidden)]
2611 #[allow(dead_code)]
2612 type UnderlyingSolTuple<'a> = ();
2613 #[doc(hidden)]
2614 type UnderlyingRustTuple<'a> = ();
2615 #[cfg(test)]
2616 #[allow(dead_code, unreachable_patterns)]
2617 fn _type_assertion(
2618 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
2619 ) {
2620 match _t {
2621 alloy_sol_types::private::AssertTypeEq::<
2622 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2623 >(_) => {}
2624 }
2625 }
2626 #[automatically_derived]
2627 #[doc(hidden)]
2628 impl ::core::convert::From<BLSVKIsInfinity> for UnderlyingRustTuple<'_> {
2629 fn from(value: BLSVKIsInfinity) -> Self {
2630 ()
2631 }
2632 }
2633 #[automatically_derived]
2634 #[doc(hidden)]
2635 impl ::core::convert::From<UnderlyingRustTuple<'_>> for BLSVKIsInfinity {
2636 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2637 Self
2638 }
2639 }
2640 #[automatically_derived]
2641 impl alloy_sol_types::SolError for BLSVKIsInfinity {
2642 type Parameters<'a> = UnderlyingSolTuple<'a>;
2643 type Token<'a> = <Self::Parameters<
2644 'a,
2645 > as alloy_sol_types::SolType>::Token<'a>;
2646 const SIGNATURE: &'static str = "BLSVKIsInfinity()";
2647 const SELECTOR: [u8; 4] = [188u8, 134u8, 197u8, 154u8];
2648 #[inline]
2649 fn new<'a>(
2650 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2651 ) -> Self {
2652 tuple.into()
2653 }
2654 #[inline]
2655 fn tokenize(&self) -> Self::Token<'_> {
2656 ()
2657 }
2658 #[inline]
2659 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
2660 <Self::Parameters<
2661 '_,
2662 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
2663 .map(Self::new)
2664 }
2665 }
2666 };
2667 #[derive(serde::Serialize, serde::Deserialize)]
2668 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2669 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2674 #[derive(Clone)]
2675 pub struct BN254PairingProdFailed;
2676 #[allow(
2677 non_camel_case_types,
2678 non_snake_case,
2679 clippy::pub_underscore_fields,
2680 clippy::style
2681 )]
2682 const _: () = {
2683 use alloy::sol_types as alloy_sol_types;
2684 #[doc(hidden)]
2685 #[allow(dead_code)]
2686 type UnderlyingSolTuple<'a> = ();
2687 #[doc(hidden)]
2688 type UnderlyingRustTuple<'a> = ();
2689 #[cfg(test)]
2690 #[allow(dead_code, unreachable_patterns)]
2691 fn _type_assertion(
2692 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
2693 ) {
2694 match _t {
2695 alloy_sol_types::private::AssertTypeEq::<
2696 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2697 >(_) => {}
2698 }
2699 }
2700 #[automatically_derived]
2701 #[doc(hidden)]
2702 impl ::core::convert::From<BN254PairingProdFailed> for UnderlyingRustTuple<'_> {
2703 fn from(value: BN254PairingProdFailed) -> Self {
2704 ()
2705 }
2706 }
2707 #[automatically_derived]
2708 #[doc(hidden)]
2709 impl ::core::convert::From<UnderlyingRustTuple<'_>> for BN254PairingProdFailed {
2710 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2711 Self
2712 }
2713 }
2714 #[automatically_derived]
2715 impl alloy_sol_types::SolError for BN254PairingProdFailed {
2716 type Parameters<'a> = UnderlyingSolTuple<'a>;
2717 type Token<'a> = <Self::Parameters<
2718 'a,
2719 > as alloy_sol_types::SolType>::Token<'a>;
2720 const SIGNATURE: &'static str = "BN254PairingProdFailed()";
2721 const SELECTOR: [u8; 4] = [194u8, 6u8, 51u8, 79u8];
2722 #[inline]
2723 fn new<'a>(
2724 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2725 ) -> Self {
2726 tuple.into()
2727 }
2728 #[inline]
2729 fn tokenize(&self) -> Self::Token<'_> {
2730 ()
2731 }
2732 #[inline]
2733 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
2734 <Self::Parameters<
2735 '_,
2736 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
2737 .map(Self::new)
2738 }
2739 }
2740 };
2741 #[derive(serde::Serialize, serde::Deserialize)]
2742 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2743 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2748 #[derive(Clone)]
2749 pub struct BlsKeyAlreadyUsed;
2750 #[allow(
2751 non_camel_case_types,
2752 non_snake_case,
2753 clippy::pub_underscore_fields,
2754 clippy::style
2755 )]
2756 const _: () = {
2757 use alloy::sol_types as alloy_sol_types;
2758 #[doc(hidden)]
2759 #[allow(dead_code)]
2760 type UnderlyingSolTuple<'a> = ();
2761 #[doc(hidden)]
2762 type UnderlyingRustTuple<'a> = ();
2763 #[cfg(test)]
2764 #[allow(dead_code, unreachable_patterns)]
2765 fn _type_assertion(
2766 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
2767 ) {
2768 match _t {
2769 alloy_sol_types::private::AssertTypeEq::<
2770 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2771 >(_) => {}
2772 }
2773 }
2774 #[automatically_derived]
2775 #[doc(hidden)]
2776 impl ::core::convert::From<BlsKeyAlreadyUsed> for UnderlyingRustTuple<'_> {
2777 fn from(value: BlsKeyAlreadyUsed) -> Self {
2778 ()
2779 }
2780 }
2781 #[automatically_derived]
2782 #[doc(hidden)]
2783 impl ::core::convert::From<UnderlyingRustTuple<'_>> for BlsKeyAlreadyUsed {
2784 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2785 Self
2786 }
2787 }
2788 #[automatically_derived]
2789 impl alloy_sol_types::SolError for BlsKeyAlreadyUsed {
2790 type Parameters<'a> = UnderlyingSolTuple<'a>;
2791 type Token<'a> = <Self::Parameters<
2792 'a,
2793 > as alloy_sol_types::SolType>::Token<'a>;
2794 const SIGNATURE: &'static str = "BlsKeyAlreadyUsed()";
2795 const SELECTOR: [u8; 4] = [1u8, 181u8, 20u8, 174u8];
2796 #[inline]
2797 fn new<'a>(
2798 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2799 ) -> Self {
2800 tuple.into()
2801 }
2802 #[inline]
2803 fn tokenize(&self) -> Self::Token<'_> {
2804 ()
2805 }
2806 #[inline]
2807 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
2808 <Self::Parameters<
2809 '_,
2810 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
2811 .map(Self::new)
2812 }
2813 }
2814 };
2815 #[derive(serde::Serialize, serde::Deserialize)]
2816 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2817 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2822 #[derive(Clone)]
2823 pub struct ERC1967InvalidImplementation {
2824 #[allow(missing_docs)]
2825 pub implementation: alloy::sol_types::private::Address,
2826 }
2827 #[allow(
2828 non_camel_case_types,
2829 non_snake_case,
2830 clippy::pub_underscore_fields,
2831 clippy::style
2832 )]
2833 const _: () = {
2834 use alloy::sol_types as alloy_sol_types;
2835 #[doc(hidden)]
2836 #[allow(dead_code)]
2837 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
2838 #[doc(hidden)]
2839 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
2840 #[cfg(test)]
2841 #[allow(dead_code, unreachable_patterns)]
2842 fn _type_assertion(
2843 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
2844 ) {
2845 match _t {
2846 alloy_sol_types::private::AssertTypeEq::<
2847 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2848 >(_) => {}
2849 }
2850 }
2851 #[automatically_derived]
2852 #[doc(hidden)]
2853 impl ::core::convert::From<ERC1967InvalidImplementation>
2854 for UnderlyingRustTuple<'_> {
2855 fn from(value: ERC1967InvalidImplementation) -> Self {
2856 (value.implementation,)
2857 }
2858 }
2859 #[automatically_derived]
2860 #[doc(hidden)]
2861 impl ::core::convert::From<UnderlyingRustTuple<'_>>
2862 for ERC1967InvalidImplementation {
2863 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2864 Self { implementation: tuple.0 }
2865 }
2866 }
2867 #[automatically_derived]
2868 impl alloy_sol_types::SolError for ERC1967InvalidImplementation {
2869 type Parameters<'a> = UnderlyingSolTuple<'a>;
2870 type Token<'a> = <Self::Parameters<
2871 'a,
2872 > as alloy_sol_types::SolType>::Token<'a>;
2873 const SIGNATURE: &'static str = "ERC1967InvalidImplementation(address)";
2874 const SELECTOR: [u8; 4] = [76u8, 156u8, 140u8, 227u8];
2875 #[inline]
2876 fn new<'a>(
2877 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2878 ) -> Self {
2879 tuple.into()
2880 }
2881 #[inline]
2882 fn tokenize(&self) -> Self::Token<'_> {
2883 (
2884 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
2885 &self.implementation,
2886 ),
2887 )
2888 }
2889 #[inline]
2890 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
2891 <Self::Parameters<
2892 '_,
2893 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
2894 .map(Self::new)
2895 }
2896 }
2897 };
2898 #[derive(serde::Serialize, serde::Deserialize)]
2899 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2900 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2905 #[derive(Clone)]
2906 pub struct ERC1967NonPayable;
2907 #[allow(
2908 non_camel_case_types,
2909 non_snake_case,
2910 clippy::pub_underscore_fields,
2911 clippy::style
2912 )]
2913 const _: () = {
2914 use alloy::sol_types as alloy_sol_types;
2915 #[doc(hidden)]
2916 #[allow(dead_code)]
2917 type UnderlyingSolTuple<'a> = ();
2918 #[doc(hidden)]
2919 type UnderlyingRustTuple<'a> = ();
2920 #[cfg(test)]
2921 #[allow(dead_code, unreachable_patterns)]
2922 fn _type_assertion(
2923 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
2924 ) {
2925 match _t {
2926 alloy_sol_types::private::AssertTypeEq::<
2927 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
2928 >(_) => {}
2929 }
2930 }
2931 #[automatically_derived]
2932 #[doc(hidden)]
2933 impl ::core::convert::From<ERC1967NonPayable> for UnderlyingRustTuple<'_> {
2934 fn from(value: ERC1967NonPayable) -> Self {
2935 ()
2936 }
2937 }
2938 #[automatically_derived]
2939 #[doc(hidden)]
2940 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ERC1967NonPayable {
2941 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
2942 Self
2943 }
2944 }
2945 #[automatically_derived]
2946 impl alloy_sol_types::SolError for ERC1967NonPayable {
2947 type Parameters<'a> = UnderlyingSolTuple<'a>;
2948 type Token<'a> = <Self::Parameters<
2949 'a,
2950 > as alloy_sol_types::SolType>::Token<'a>;
2951 const SIGNATURE: &'static str = "ERC1967NonPayable()";
2952 const SELECTOR: [u8; 4] = [179u8, 152u8, 151u8, 159u8];
2953 #[inline]
2954 fn new<'a>(
2955 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
2956 ) -> Self {
2957 tuple.into()
2958 }
2959 #[inline]
2960 fn tokenize(&self) -> Self::Token<'_> {
2961 ()
2962 }
2963 #[inline]
2964 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
2965 <Self::Parameters<
2966 '_,
2967 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
2968 .map(Self::new)
2969 }
2970 }
2971 };
2972 #[derive(serde::Serialize, serde::Deserialize)]
2973 #[derive(Default, Debug, PartialEq, Eq, Hash)]
2974 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
2979 #[derive(Clone)]
2980 pub struct ExitEscrowPeriodInvalid;
2981 #[allow(
2982 non_camel_case_types,
2983 non_snake_case,
2984 clippy::pub_underscore_fields,
2985 clippy::style
2986 )]
2987 const _: () = {
2988 use alloy::sol_types as alloy_sol_types;
2989 #[doc(hidden)]
2990 #[allow(dead_code)]
2991 type UnderlyingSolTuple<'a> = ();
2992 #[doc(hidden)]
2993 type UnderlyingRustTuple<'a> = ();
2994 #[cfg(test)]
2995 #[allow(dead_code, unreachable_patterns)]
2996 fn _type_assertion(
2997 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
2998 ) {
2999 match _t {
3000 alloy_sol_types::private::AssertTypeEq::<
3001 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3002 >(_) => {}
3003 }
3004 }
3005 #[automatically_derived]
3006 #[doc(hidden)]
3007 impl ::core::convert::From<ExitEscrowPeriodInvalid> for UnderlyingRustTuple<'_> {
3008 fn from(value: ExitEscrowPeriodInvalid) -> Self {
3009 ()
3010 }
3011 }
3012 #[automatically_derived]
3013 #[doc(hidden)]
3014 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ExitEscrowPeriodInvalid {
3015 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3016 Self
3017 }
3018 }
3019 #[automatically_derived]
3020 impl alloy_sol_types::SolError for ExitEscrowPeriodInvalid {
3021 type Parameters<'a> = UnderlyingSolTuple<'a>;
3022 type Token<'a> = <Self::Parameters<
3023 'a,
3024 > as alloy_sol_types::SolType>::Token<'a>;
3025 const SIGNATURE: &'static str = "ExitEscrowPeriodInvalid()";
3026 const SELECTOR: [u8; 4] = [181u8, 126u8, 33u8, 223u8];
3027 #[inline]
3028 fn new<'a>(
3029 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3030 ) -> Self {
3031 tuple.into()
3032 }
3033 #[inline]
3034 fn tokenize(&self) -> Self::Token<'_> {
3035 ()
3036 }
3037 #[inline]
3038 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3039 <Self::Parameters<
3040 '_,
3041 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3042 .map(Self::new)
3043 }
3044 }
3045 };
3046 #[derive(serde::Serialize, serde::Deserialize)]
3047 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3048 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3053 #[derive(Clone)]
3054 pub struct FailedInnerCall;
3055 #[allow(
3056 non_camel_case_types,
3057 non_snake_case,
3058 clippy::pub_underscore_fields,
3059 clippy::style
3060 )]
3061 const _: () = {
3062 use alloy::sol_types as alloy_sol_types;
3063 #[doc(hidden)]
3064 #[allow(dead_code)]
3065 type UnderlyingSolTuple<'a> = ();
3066 #[doc(hidden)]
3067 type UnderlyingRustTuple<'a> = ();
3068 #[cfg(test)]
3069 #[allow(dead_code, unreachable_patterns)]
3070 fn _type_assertion(
3071 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3072 ) {
3073 match _t {
3074 alloy_sol_types::private::AssertTypeEq::<
3075 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3076 >(_) => {}
3077 }
3078 }
3079 #[automatically_derived]
3080 #[doc(hidden)]
3081 impl ::core::convert::From<FailedInnerCall> for UnderlyingRustTuple<'_> {
3082 fn from(value: FailedInnerCall) -> Self {
3083 ()
3084 }
3085 }
3086 #[automatically_derived]
3087 #[doc(hidden)]
3088 impl ::core::convert::From<UnderlyingRustTuple<'_>> for FailedInnerCall {
3089 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3090 Self
3091 }
3092 }
3093 #[automatically_derived]
3094 impl alloy_sol_types::SolError for FailedInnerCall {
3095 type Parameters<'a> = UnderlyingSolTuple<'a>;
3096 type Token<'a> = <Self::Parameters<
3097 'a,
3098 > as alloy_sol_types::SolType>::Token<'a>;
3099 const SIGNATURE: &'static str = "FailedInnerCall()";
3100 const SELECTOR: [u8; 4] = [20u8, 37u8, 234u8, 66u8];
3101 #[inline]
3102 fn new<'a>(
3103 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3104 ) -> Self {
3105 tuple.into()
3106 }
3107 #[inline]
3108 fn tokenize(&self) -> Self::Token<'_> {
3109 ()
3110 }
3111 #[inline]
3112 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3113 <Self::Parameters<
3114 '_,
3115 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3116 .map(Self::new)
3117 }
3118 }
3119 };
3120 #[derive(serde::Serialize, serde::Deserialize)]
3121 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3122 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3127 #[derive(Clone)]
3128 pub struct InsufficientAllowance {
3129 #[allow(missing_docs)]
3130 pub _0: alloy::sol_types::private::primitives::aliases::U256,
3131 #[allow(missing_docs)]
3132 pub _1: alloy::sol_types::private::primitives::aliases::U256,
3133 }
3134 #[allow(
3135 non_camel_case_types,
3136 non_snake_case,
3137 clippy::pub_underscore_fields,
3138 clippy::style
3139 )]
3140 const _: () = {
3141 use alloy::sol_types as alloy_sol_types;
3142 #[doc(hidden)]
3143 #[allow(dead_code)]
3144 type UnderlyingSolTuple<'a> = (
3145 alloy::sol_types::sol_data::Uint<256>,
3146 alloy::sol_types::sol_data::Uint<256>,
3147 );
3148 #[doc(hidden)]
3149 type UnderlyingRustTuple<'a> = (
3150 alloy::sol_types::private::primitives::aliases::U256,
3151 alloy::sol_types::private::primitives::aliases::U256,
3152 );
3153 #[cfg(test)]
3154 #[allow(dead_code, unreachable_patterns)]
3155 fn _type_assertion(
3156 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3157 ) {
3158 match _t {
3159 alloy_sol_types::private::AssertTypeEq::<
3160 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3161 >(_) => {}
3162 }
3163 }
3164 #[automatically_derived]
3165 #[doc(hidden)]
3166 impl ::core::convert::From<InsufficientAllowance> for UnderlyingRustTuple<'_> {
3167 fn from(value: InsufficientAllowance) -> Self {
3168 (value._0, value._1)
3169 }
3170 }
3171 #[automatically_derived]
3172 #[doc(hidden)]
3173 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InsufficientAllowance {
3174 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3175 Self { _0: tuple.0, _1: tuple.1 }
3176 }
3177 }
3178 #[automatically_derived]
3179 impl alloy_sol_types::SolError for InsufficientAllowance {
3180 type Parameters<'a> = UnderlyingSolTuple<'a>;
3181 type Token<'a> = <Self::Parameters<
3182 'a,
3183 > as alloy_sol_types::SolType>::Token<'a>;
3184 const SIGNATURE: &'static str = "InsufficientAllowance(uint256,uint256)";
3185 const SELECTOR: [u8; 4] = [42u8, 27u8, 45u8, 216u8];
3186 #[inline]
3187 fn new<'a>(
3188 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3189 ) -> Self {
3190 tuple.into()
3191 }
3192 #[inline]
3193 fn tokenize(&self) -> Self::Token<'_> {
3194 (
3195 <alloy::sol_types::sol_data::Uint<
3196 256,
3197 > as alloy_sol_types::SolType>::tokenize(&self._0),
3198 <alloy::sol_types::sol_data::Uint<
3199 256,
3200 > as alloy_sol_types::SolType>::tokenize(&self._1),
3201 )
3202 }
3203 #[inline]
3204 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3205 <Self::Parameters<
3206 '_,
3207 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3208 .map(Self::new)
3209 }
3210 }
3211 };
3212 #[derive(serde::Serialize, serde::Deserialize)]
3213 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3214 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3219 #[derive(Clone)]
3220 pub struct InsufficientBalance(
3221 pub alloy::sol_types::private::primitives::aliases::U256,
3222 );
3223 #[allow(
3224 non_camel_case_types,
3225 non_snake_case,
3226 clippy::pub_underscore_fields,
3227 clippy::style
3228 )]
3229 const _: () = {
3230 use alloy::sol_types as alloy_sol_types;
3231 #[doc(hidden)]
3232 #[allow(dead_code)]
3233 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
3234 #[doc(hidden)]
3235 type UnderlyingRustTuple<'a> = (
3236 alloy::sol_types::private::primitives::aliases::U256,
3237 );
3238 #[cfg(test)]
3239 #[allow(dead_code, unreachable_patterns)]
3240 fn _type_assertion(
3241 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3242 ) {
3243 match _t {
3244 alloy_sol_types::private::AssertTypeEq::<
3245 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3246 >(_) => {}
3247 }
3248 }
3249 #[automatically_derived]
3250 #[doc(hidden)]
3251 impl ::core::convert::From<InsufficientBalance> for UnderlyingRustTuple<'_> {
3252 fn from(value: InsufficientBalance) -> Self {
3253 (value.0,)
3254 }
3255 }
3256 #[automatically_derived]
3257 #[doc(hidden)]
3258 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InsufficientBalance {
3259 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3260 Self(tuple.0)
3261 }
3262 }
3263 #[automatically_derived]
3264 impl alloy_sol_types::SolError for InsufficientBalance {
3265 type Parameters<'a> = UnderlyingSolTuple<'a>;
3266 type Token<'a> = <Self::Parameters<
3267 'a,
3268 > as alloy_sol_types::SolType>::Token<'a>;
3269 const SIGNATURE: &'static str = "InsufficientBalance(uint256)";
3270 const SELECTOR: [u8; 4] = [146u8, 102u8, 83u8, 81u8];
3271 #[inline]
3272 fn new<'a>(
3273 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3274 ) -> Self {
3275 tuple.into()
3276 }
3277 #[inline]
3278 fn tokenize(&self) -> Self::Token<'_> {
3279 (
3280 <alloy::sol_types::sol_data::Uint<
3281 256,
3282 > as alloy_sol_types::SolType>::tokenize(&self.0),
3283 )
3284 }
3285 #[inline]
3286 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3287 <Self::Parameters<
3288 '_,
3289 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3290 .map(Self::new)
3291 }
3292 }
3293 };
3294 #[derive(serde::Serialize, serde::Deserialize)]
3295 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3296 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3301 #[derive(Clone)]
3302 pub struct InvalidCommission;
3303 #[allow(
3304 non_camel_case_types,
3305 non_snake_case,
3306 clippy::pub_underscore_fields,
3307 clippy::style
3308 )]
3309 const _: () = {
3310 use alloy::sol_types as alloy_sol_types;
3311 #[doc(hidden)]
3312 #[allow(dead_code)]
3313 type UnderlyingSolTuple<'a> = ();
3314 #[doc(hidden)]
3315 type UnderlyingRustTuple<'a> = ();
3316 #[cfg(test)]
3317 #[allow(dead_code, unreachable_patterns)]
3318 fn _type_assertion(
3319 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3320 ) {
3321 match _t {
3322 alloy_sol_types::private::AssertTypeEq::<
3323 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3324 >(_) => {}
3325 }
3326 }
3327 #[automatically_derived]
3328 #[doc(hidden)]
3329 impl ::core::convert::From<InvalidCommission> for UnderlyingRustTuple<'_> {
3330 fn from(value: InvalidCommission) -> Self {
3331 ()
3332 }
3333 }
3334 #[automatically_derived]
3335 #[doc(hidden)]
3336 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidCommission {
3337 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3338 Self
3339 }
3340 }
3341 #[automatically_derived]
3342 impl alloy_sol_types::SolError for InvalidCommission {
3343 type Parameters<'a> = UnderlyingSolTuple<'a>;
3344 type Token<'a> = <Self::Parameters<
3345 'a,
3346 > as alloy_sol_types::SolType>::Token<'a>;
3347 const SIGNATURE: &'static str = "InvalidCommission()";
3348 const SELECTOR: [u8; 4] = [220u8, 129u8, 219u8, 133u8];
3349 #[inline]
3350 fn new<'a>(
3351 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3352 ) -> Self {
3353 tuple.into()
3354 }
3355 #[inline]
3356 fn tokenize(&self) -> Self::Token<'_> {
3357 ()
3358 }
3359 #[inline]
3360 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3361 <Self::Parameters<
3362 '_,
3363 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3364 .map(Self::new)
3365 }
3366 }
3367 };
3368 #[derive(serde::Serialize, serde::Deserialize)]
3369 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3370 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3375 #[derive(Clone)]
3376 pub struct InvalidG1;
3377 #[allow(
3378 non_camel_case_types,
3379 non_snake_case,
3380 clippy::pub_underscore_fields,
3381 clippy::style
3382 )]
3383 const _: () = {
3384 use alloy::sol_types as alloy_sol_types;
3385 #[doc(hidden)]
3386 #[allow(dead_code)]
3387 type UnderlyingSolTuple<'a> = ();
3388 #[doc(hidden)]
3389 type UnderlyingRustTuple<'a> = ();
3390 #[cfg(test)]
3391 #[allow(dead_code, unreachable_patterns)]
3392 fn _type_assertion(
3393 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3394 ) {
3395 match _t {
3396 alloy_sol_types::private::AssertTypeEq::<
3397 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3398 >(_) => {}
3399 }
3400 }
3401 #[automatically_derived]
3402 #[doc(hidden)]
3403 impl ::core::convert::From<InvalidG1> for UnderlyingRustTuple<'_> {
3404 fn from(value: InvalidG1) -> Self {
3405 ()
3406 }
3407 }
3408 #[automatically_derived]
3409 #[doc(hidden)]
3410 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidG1 {
3411 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3412 Self
3413 }
3414 }
3415 #[automatically_derived]
3416 impl alloy_sol_types::SolError for InvalidG1 {
3417 type Parameters<'a> = UnderlyingSolTuple<'a>;
3418 type Token<'a> = <Self::Parameters<
3419 'a,
3420 > as alloy_sol_types::SolType>::Token<'a>;
3421 const SIGNATURE: &'static str = "InvalidG1()";
3422 const SELECTOR: [u8; 4] = [158u8, 120u8, 209u8, 76u8];
3423 #[inline]
3424 fn new<'a>(
3425 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3426 ) -> Self {
3427 tuple.into()
3428 }
3429 #[inline]
3430 fn tokenize(&self) -> Self::Token<'_> {
3431 ()
3432 }
3433 #[inline]
3434 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3435 <Self::Parameters<
3436 '_,
3437 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3438 .map(Self::new)
3439 }
3440 }
3441 };
3442 #[derive(serde::Serialize, serde::Deserialize)]
3443 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3444 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3449 #[derive(Clone)]
3450 pub struct InvalidInitialization;
3451 #[allow(
3452 non_camel_case_types,
3453 non_snake_case,
3454 clippy::pub_underscore_fields,
3455 clippy::style
3456 )]
3457 const _: () = {
3458 use alloy::sol_types as alloy_sol_types;
3459 #[doc(hidden)]
3460 #[allow(dead_code)]
3461 type UnderlyingSolTuple<'a> = ();
3462 #[doc(hidden)]
3463 type UnderlyingRustTuple<'a> = ();
3464 #[cfg(test)]
3465 #[allow(dead_code, unreachable_patterns)]
3466 fn _type_assertion(
3467 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3468 ) {
3469 match _t {
3470 alloy_sol_types::private::AssertTypeEq::<
3471 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3472 >(_) => {}
3473 }
3474 }
3475 #[automatically_derived]
3476 #[doc(hidden)]
3477 impl ::core::convert::From<InvalidInitialization> for UnderlyingRustTuple<'_> {
3478 fn from(value: InvalidInitialization) -> Self {
3479 ()
3480 }
3481 }
3482 #[automatically_derived]
3483 #[doc(hidden)]
3484 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidInitialization {
3485 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3486 Self
3487 }
3488 }
3489 #[automatically_derived]
3490 impl alloy_sol_types::SolError for InvalidInitialization {
3491 type Parameters<'a> = UnderlyingSolTuple<'a>;
3492 type Token<'a> = <Self::Parameters<
3493 'a,
3494 > as alloy_sol_types::SolType>::Token<'a>;
3495 const SIGNATURE: &'static str = "InvalidInitialization()";
3496 const SELECTOR: [u8; 4] = [249u8, 46u8, 232u8, 169u8];
3497 #[inline]
3498 fn new<'a>(
3499 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3500 ) -> Self {
3501 tuple.into()
3502 }
3503 #[inline]
3504 fn tokenize(&self) -> Self::Token<'_> {
3505 ()
3506 }
3507 #[inline]
3508 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3509 <Self::Parameters<
3510 '_,
3511 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3512 .map(Self::new)
3513 }
3514 }
3515 };
3516 #[derive(serde::Serialize, serde::Deserialize)]
3517 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3518 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3523 #[derive(Clone)]
3524 pub struct InvalidSchnorrVK;
3525 #[allow(
3526 non_camel_case_types,
3527 non_snake_case,
3528 clippy::pub_underscore_fields,
3529 clippy::style
3530 )]
3531 const _: () = {
3532 use alloy::sol_types as alloy_sol_types;
3533 #[doc(hidden)]
3534 #[allow(dead_code)]
3535 type UnderlyingSolTuple<'a> = ();
3536 #[doc(hidden)]
3537 type UnderlyingRustTuple<'a> = ();
3538 #[cfg(test)]
3539 #[allow(dead_code, unreachable_patterns)]
3540 fn _type_assertion(
3541 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3542 ) {
3543 match _t {
3544 alloy_sol_types::private::AssertTypeEq::<
3545 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3546 >(_) => {}
3547 }
3548 }
3549 #[automatically_derived]
3550 #[doc(hidden)]
3551 impl ::core::convert::From<InvalidSchnorrVK> for UnderlyingRustTuple<'_> {
3552 fn from(value: InvalidSchnorrVK) -> Self {
3553 ()
3554 }
3555 }
3556 #[automatically_derived]
3557 #[doc(hidden)]
3558 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InvalidSchnorrVK {
3559 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3560 Self
3561 }
3562 }
3563 #[automatically_derived]
3564 impl alloy_sol_types::SolError for InvalidSchnorrVK {
3565 type Parameters<'a> = UnderlyingSolTuple<'a>;
3566 type Token<'a> = <Self::Parameters<
3567 'a,
3568 > as alloy_sol_types::SolType>::Token<'a>;
3569 const SIGNATURE: &'static str = "InvalidSchnorrVK()";
3570 const SELECTOR: [u8; 4] = [6u8, 207u8, 67u8, 143u8];
3571 #[inline]
3572 fn new<'a>(
3573 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3574 ) -> Self {
3575 tuple.into()
3576 }
3577 #[inline]
3578 fn tokenize(&self) -> Self::Token<'_> {
3579 ()
3580 }
3581 #[inline]
3582 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3583 <Self::Parameters<
3584 '_,
3585 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3586 .map(Self::new)
3587 }
3588 }
3589 };
3590 #[derive(serde::Serialize, serde::Deserialize)]
3591 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3592 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3597 #[derive(Clone)]
3598 pub struct NotInitializing;
3599 #[allow(
3600 non_camel_case_types,
3601 non_snake_case,
3602 clippy::pub_underscore_fields,
3603 clippy::style
3604 )]
3605 const _: () = {
3606 use alloy::sol_types as alloy_sol_types;
3607 #[doc(hidden)]
3608 #[allow(dead_code)]
3609 type UnderlyingSolTuple<'a> = ();
3610 #[doc(hidden)]
3611 type UnderlyingRustTuple<'a> = ();
3612 #[cfg(test)]
3613 #[allow(dead_code, unreachable_patterns)]
3614 fn _type_assertion(
3615 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3616 ) {
3617 match _t {
3618 alloy_sol_types::private::AssertTypeEq::<
3619 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3620 >(_) => {}
3621 }
3622 }
3623 #[automatically_derived]
3624 #[doc(hidden)]
3625 impl ::core::convert::From<NotInitializing> for UnderlyingRustTuple<'_> {
3626 fn from(value: NotInitializing) -> Self {
3627 ()
3628 }
3629 }
3630 #[automatically_derived]
3631 #[doc(hidden)]
3632 impl ::core::convert::From<UnderlyingRustTuple<'_>> for NotInitializing {
3633 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3634 Self
3635 }
3636 }
3637 #[automatically_derived]
3638 impl alloy_sol_types::SolError for NotInitializing {
3639 type Parameters<'a> = UnderlyingSolTuple<'a>;
3640 type Token<'a> = <Self::Parameters<
3641 'a,
3642 > as alloy_sol_types::SolType>::Token<'a>;
3643 const SIGNATURE: &'static str = "NotInitializing()";
3644 const SELECTOR: [u8; 4] = [215u8, 230u8, 188u8, 248u8];
3645 #[inline]
3646 fn new<'a>(
3647 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3648 ) -> Self {
3649 tuple.into()
3650 }
3651 #[inline]
3652 fn tokenize(&self) -> Self::Token<'_> {
3653 ()
3654 }
3655 #[inline]
3656 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3657 <Self::Parameters<
3658 '_,
3659 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3660 .map(Self::new)
3661 }
3662 }
3663 };
3664 #[derive(serde::Serialize, serde::Deserialize)]
3665 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3666 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3671 #[derive(Clone)]
3672 pub struct NothingToWithdraw;
3673 #[allow(
3674 non_camel_case_types,
3675 non_snake_case,
3676 clippy::pub_underscore_fields,
3677 clippy::style
3678 )]
3679 const _: () = {
3680 use alloy::sol_types as alloy_sol_types;
3681 #[doc(hidden)]
3682 #[allow(dead_code)]
3683 type UnderlyingSolTuple<'a> = ();
3684 #[doc(hidden)]
3685 type UnderlyingRustTuple<'a> = ();
3686 #[cfg(test)]
3687 #[allow(dead_code, unreachable_patterns)]
3688 fn _type_assertion(
3689 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3690 ) {
3691 match _t {
3692 alloy_sol_types::private::AssertTypeEq::<
3693 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3694 >(_) => {}
3695 }
3696 }
3697 #[automatically_derived]
3698 #[doc(hidden)]
3699 impl ::core::convert::From<NothingToWithdraw> for UnderlyingRustTuple<'_> {
3700 fn from(value: NothingToWithdraw) -> Self {
3701 ()
3702 }
3703 }
3704 #[automatically_derived]
3705 #[doc(hidden)]
3706 impl ::core::convert::From<UnderlyingRustTuple<'_>> for NothingToWithdraw {
3707 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3708 Self
3709 }
3710 }
3711 #[automatically_derived]
3712 impl alloy_sol_types::SolError for NothingToWithdraw {
3713 type Parameters<'a> = UnderlyingSolTuple<'a>;
3714 type Token<'a> = <Self::Parameters<
3715 'a,
3716 > as alloy_sol_types::SolType>::Token<'a>;
3717 const SIGNATURE: &'static str = "NothingToWithdraw()";
3718 const SELECTOR: [u8; 4] = [208u8, 208u8, 79u8, 96u8];
3719 #[inline]
3720 fn new<'a>(
3721 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3722 ) -> Self {
3723 tuple.into()
3724 }
3725 #[inline]
3726 fn tokenize(&self) -> Self::Token<'_> {
3727 ()
3728 }
3729 #[inline]
3730 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3731 <Self::Parameters<
3732 '_,
3733 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3734 .map(Self::new)
3735 }
3736 }
3737 };
3738 #[derive(serde::Serialize, serde::Deserialize)]
3739 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3740 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3745 #[derive(Clone)]
3746 pub struct OwnableInvalidOwner {
3747 #[allow(missing_docs)]
3748 pub owner: alloy::sol_types::private::Address,
3749 }
3750 #[allow(
3751 non_camel_case_types,
3752 non_snake_case,
3753 clippy::pub_underscore_fields,
3754 clippy::style
3755 )]
3756 const _: () = {
3757 use alloy::sol_types as alloy_sol_types;
3758 #[doc(hidden)]
3759 #[allow(dead_code)]
3760 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
3761 #[doc(hidden)]
3762 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
3763 #[cfg(test)]
3764 #[allow(dead_code, unreachable_patterns)]
3765 fn _type_assertion(
3766 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3767 ) {
3768 match _t {
3769 alloy_sol_types::private::AssertTypeEq::<
3770 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3771 >(_) => {}
3772 }
3773 }
3774 #[automatically_derived]
3775 #[doc(hidden)]
3776 impl ::core::convert::From<OwnableInvalidOwner> for UnderlyingRustTuple<'_> {
3777 fn from(value: OwnableInvalidOwner) -> Self {
3778 (value.owner,)
3779 }
3780 }
3781 #[automatically_derived]
3782 #[doc(hidden)]
3783 impl ::core::convert::From<UnderlyingRustTuple<'_>> for OwnableInvalidOwner {
3784 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3785 Self { owner: tuple.0 }
3786 }
3787 }
3788 #[automatically_derived]
3789 impl alloy_sol_types::SolError for OwnableInvalidOwner {
3790 type Parameters<'a> = UnderlyingSolTuple<'a>;
3791 type Token<'a> = <Self::Parameters<
3792 'a,
3793 > as alloy_sol_types::SolType>::Token<'a>;
3794 const SIGNATURE: &'static str = "OwnableInvalidOwner(address)";
3795 const SELECTOR: [u8; 4] = [30u8, 79u8, 189u8, 247u8];
3796 #[inline]
3797 fn new<'a>(
3798 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3799 ) -> Self {
3800 tuple.into()
3801 }
3802 #[inline]
3803 fn tokenize(&self) -> Self::Token<'_> {
3804 (
3805 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3806 &self.owner,
3807 ),
3808 )
3809 }
3810 #[inline]
3811 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3812 <Self::Parameters<
3813 '_,
3814 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3815 .map(Self::new)
3816 }
3817 }
3818 };
3819 #[derive(serde::Serialize, serde::Deserialize)]
3820 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3821 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3826 #[derive(Clone)]
3827 pub struct OwnableUnauthorizedAccount {
3828 #[allow(missing_docs)]
3829 pub account: alloy::sol_types::private::Address,
3830 }
3831 #[allow(
3832 non_camel_case_types,
3833 non_snake_case,
3834 clippy::pub_underscore_fields,
3835 clippy::style
3836 )]
3837 const _: () = {
3838 use alloy::sol_types as alloy_sol_types;
3839 #[doc(hidden)]
3840 #[allow(dead_code)]
3841 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
3842 #[doc(hidden)]
3843 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
3844 #[cfg(test)]
3845 #[allow(dead_code, unreachable_patterns)]
3846 fn _type_assertion(
3847 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3848 ) {
3849 match _t {
3850 alloy_sol_types::private::AssertTypeEq::<
3851 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3852 >(_) => {}
3853 }
3854 }
3855 #[automatically_derived]
3856 #[doc(hidden)]
3857 impl ::core::convert::From<OwnableUnauthorizedAccount>
3858 for UnderlyingRustTuple<'_> {
3859 fn from(value: OwnableUnauthorizedAccount) -> Self {
3860 (value.account,)
3861 }
3862 }
3863 #[automatically_derived]
3864 #[doc(hidden)]
3865 impl ::core::convert::From<UnderlyingRustTuple<'_>>
3866 for OwnableUnauthorizedAccount {
3867 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3868 Self { account: tuple.0 }
3869 }
3870 }
3871 #[automatically_derived]
3872 impl alloy_sol_types::SolError for OwnableUnauthorizedAccount {
3873 type Parameters<'a> = UnderlyingSolTuple<'a>;
3874 type Token<'a> = <Self::Parameters<
3875 'a,
3876 > as alloy_sol_types::SolType>::Token<'a>;
3877 const SIGNATURE: &'static str = "OwnableUnauthorizedAccount(address)";
3878 const SELECTOR: [u8; 4] = [17u8, 140u8, 218u8, 167u8];
3879 #[inline]
3880 fn new<'a>(
3881 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3882 ) -> Self {
3883 tuple.into()
3884 }
3885 #[inline]
3886 fn tokenize(&self) -> Self::Token<'_> {
3887 (
3888 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
3889 &self.account,
3890 ),
3891 )
3892 }
3893 #[inline]
3894 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3895 <Self::Parameters<
3896 '_,
3897 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3898 .map(Self::new)
3899 }
3900 }
3901 };
3902 #[derive(serde::Serialize, serde::Deserialize)]
3903 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3904 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3909 #[derive(Clone)]
3910 pub struct OwnershipCannotBeRenounced;
3911 #[allow(
3912 non_camel_case_types,
3913 non_snake_case,
3914 clippy::pub_underscore_fields,
3915 clippy::style
3916 )]
3917 const _: () = {
3918 use alloy::sol_types as alloy_sol_types;
3919 #[doc(hidden)]
3920 #[allow(dead_code)]
3921 type UnderlyingSolTuple<'a> = ();
3922 #[doc(hidden)]
3923 type UnderlyingRustTuple<'a> = ();
3924 #[cfg(test)]
3925 #[allow(dead_code, unreachable_patterns)]
3926 fn _type_assertion(
3927 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
3928 ) {
3929 match _t {
3930 alloy_sol_types::private::AssertTypeEq::<
3931 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
3932 >(_) => {}
3933 }
3934 }
3935 #[automatically_derived]
3936 #[doc(hidden)]
3937 impl ::core::convert::From<OwnershipCannotBeRenounced>
3938 for UnderlyingRustTuple<'_> {
3939 fn from(value: OwnershipCannotBeRenounced) -> Self {
3940 ()
3941 }
3942 }
3943 #[automatically_derived]
3944 #[doc(hidden)]
3945 impl ::core::convert::From<UnderlyingRustTuple<'_>>
3946 for OwnershipCannotBeRenounced {
3947 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
3948 Self
3949 }
3950 }
3951 #[automatically_derived]
3952 impl alloy_sol_types::SolError for OwnershipCannotBeRenounced {
3953 type Parameters<'a> = UnderlyingSolTuple<'a>;
3954 type Token<'a> = <Self::Parameters<
3955 'a,
3956 > as alloy_sol_types::SolType>::Token<'a>;
3957 const SIGNATURE: &'static str = "OwnershipCannotBeRenounced()";
3958 const SELECTOR: [u8; 4] = [47u8, 171u8, 146u8, 202u8];
3959 #[inline]
3960 fn new<'a>(
3961 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
3962 ) -> Self {
3963 tuple.into()
3964 }
3965 #[inline]
3966 fn tokenize(&self) -> Self::Token<'_> {
3967 ()
3968 }
3969 #[inline]
3970 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
3971 <Self::Parameters<
3972 '_,
3973 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
3974 .map(Self::new)
3975 }
3976 }
3977 };
3978 #[derive(serde::Serialize, serde::Deserialize)]
3979 #[derive(Default, Debug, PartialEq, Eq, Hash)]
3980 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
3985 #[derive(Clone)]
3986 pub struct PowPrecompileFailed;
3987 #[allow(
3988 non_camel_case_types,
3989 non_snake_case,
3990 clippy::pub_underscore_fields,
3991 clippy::style
3992 )]
3993 const _: () = {
3994 use alloy::sol_types as alloy_sol_types;
3995 #[doc(hidden)]
3996 #[allow(dead_code)]
3997 type UnderlyingSolTuple<'a> = ();
3998 #[doc(hidden)]
3999 type UnderlyingRustTuple<'a> = ();
4000 #[cfg(test)]
4001 #[allow(dead_code, unreachable_patterns)]
4002 fn _type_assertion(
4003 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4004 ) {
4005 match _t {
4006 alloy_sol_types::private::AssertTypeEq::<
4007 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4008 >(_) => {}
4009 }
4010 }
4011 #[automatically_derived]
4012 #[doc(hidden)]
4013 impl ::core::convert::From<PowPrecompileFailed> for UnderlyingRustTuple<'_> {
4014 fn from(value: PowPrecompileFailed) -> Self {
4015 ()
4016 }
4017 }
4018 #[automatically_derived]
4019 #[doc(hidden)]
4020 impl ::core::convert::From<UnderlyingRustTuple<'_>> for PowPrecompileFailed {
4021 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4022 Self
4023 }
4024 }
4025 #[automatically_derived]
4026 impl alloy_sol_types::SolError for PowPrecompileFailed {
4027 type Parameters<'a> = UnderlyingSolTuple<'a>;
4028 type Token<'a> = <Self::Parameters<
4029 'a,
4030 > as alloy_sol_types::SolType>::Token<'a>;
4031 const SIGNATURE: &'static str = "PowPrecompileFailed()";
4032 const SELECTOR: [u8; 4] = [50u8, 116u8, 250u8, 100u8];
4033 #[inline]
4034 fn new<'a>(
4035 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4036 ) -> Self {
4037 tuple.into()
4038 }
4039 #[inline]
4040 fn tokenize(&self) -> Self::Token<'_> {
4041 ()
4042 }
4043 #[inline]
4044 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4045 <Self::Parameters<
4046 '_,
4047 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4048 .map(Self::new)
4049 }
4050 }
4051 };
4052 #[derive(serde::Serialize, serde::Deserialize)]
4053 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4054 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4059 #[derive(Clone)]
4060 pub struct PrematureWithdrawal;
4061 #[allow(
4062 non_camel_case_types,
4063 non_snake_case,
4064 clippy::pub_underscore_fields,
4065 clippy::style
4066 )]
4067 const _: () = {
4068 use alloy::sol_types as alloy_sol_types;
4069 #[doc(hidden)]
4070 #[allow(dead_code)]
4071 type UnderlyingSolTuple<'a> = ();
4072 #[doc(hidden)]
4073 type UnderlyingRustTuple<'a> = ();
4074 #[cfg(test)]
4075 #[allow(dead_code, unreachable_patterns)]
4076 fn _type_assertion(
4077 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4078 ) {
4079 match _t {
4080 alloy_sol_types::private::AssertTypeEq::<
4081 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4082 >(_) => {}
4083 }
4084 }
4085 #[automatically_derived]
4086 #[doc(hidden)]
4087 impl ::core::convert::From<PrematureWithdrawal> for UnderlyingRustTuple<'_> {
4088 fn from(value: PrematureWithdrawal) -> Self {
4089 ()
4090 }
4091 }
4092 #[automatically_derived]
4093 #[doc(hidden)]
4094 impl ::core::convert::From<UnderlyingRustTuple<'_>> for PrematureWithdrawal {
4095 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4096 Self
4097 }
4098 }
4099 #[automatically_derived]
4100 impl alloy_sol_types::SolError for PrematureWithdrawal {
4101 type Parameters<'a> = UnderlyingSolTuple<'a>;
4102 type Token<'a> = <Self::Parameters<
4103 'a,
4104 > as alloy_sol_types::SolType>::Token<'a>;
4105 const SIGNATURE: &'static str = "PrematureWithdrawal()";
4106 const SELECTOR: [u8; 4] = [90u8, 119u8, 67u8, 87u8];
4107 #[inline]
4108 fn new<'a>(
4109 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4110 ) -> Self {
4111 tuple.into()
4112 }
4113 #[inline]
4114 fn tokenize(&self) -> Self::Token<'_> {
4115 ()
4116 }
4117 #[inline]
4118 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4119 <Self::Parameters<
4120 '_,
4121 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4122 .map(Self::new)
4123 }
4124 }
4125 };
4126 #[derive(serde::Serialize, serde::Deserialize)]
4127 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4128 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4133 #[derive(Clone)]
4134 pub struct UUPSUnauthorizedCallContext;
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 #[doc(hidden)]
4144 #[allow(dead_code)]
4145 type UnderlyingSolTuple<'a> = ();
4146 #[doc(hidden)]
4147 type UnderlyingRustTuple<'a> = ();
4148 #[cfg(test)]
4149 #[allow(dead_code, unreachable_patterns)]
4150 fn _type_assertion(
4151 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4152 ) {
4153 match _t {
4154 alloy_sol_types::private::AssertTypeEq::<
4155 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4156 >(_) => {}
4157 }
4158 }
4159 #[automatically_derived]
4160 #[doc(hidden)]
4161 impl ::core::convert::From<UUPSUnauthorizedCallContext>
4162 for UnderlyingRustTuple<'_> {
4163 fn from(value: UUPSUnauthorizedCallContext) -> Self {
4164 ()
4165 }
4166 }
4167 #[automatically_derived]
4168 #[doc(hidden)]
4169 impl ::core::convert::From<UnderlyingRustTuple<'_>>
4170 for UUPSUnauthorizedCallContext {
4171 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4172 Self
4173 }
4174 }
4175 #[automatically_derived]
4176 impl alloy_sol_types::SolError for UUPSUnauthorizedCallContext {
4177 type Parameters<'a> = UnderlyingSolTuple<'a>;
4178 type Token<'a> = <Self::Parameters<
4179 'a,
4180 > as alloy_sol_types::SolType>::Token<'a>;
4181 const SIGNATURE: &'static str = "UUPSUnauthorizedCallContext()";
4182 const SELECTOR: [u8; 4] = [224u8, 124u8, 141u8, 186u8];
4183 #[inline]
4184 fn new<'a>(
4185 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4186 ) -> Self {
4187 tuple.into()
4188 }
4189 #[inline]
4190 fn tokenize(&self) -> Self::Token<'_> {
4191 ()
4192 }
4193 #[inline]
4194 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4195 <Self::Parameters<
4196 '_,
4197 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4198 .map(Self::new)
4199 }
4200 }
4201 };
4202 #[derive(serde::Serialize, serde::Deserialize)]
4203 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4204 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4209 #[derive(Clone)]
4210 pub struct UUPSUnsupportedProxiableUUID {
4211 #[allow(missing_docs)]
4212 pub slot: alloy::sol_types::private::FixedBytes<32>,
4213 }
4214 #[allow(
4215 non_camel_case_types,
4216 non_snake_case,
4217 clippy::pub_underscore_fields,
4218 clippy::style
4219 )]
4220 const _: () = {
4221 use alloy::sol_types as alloy_sol_types;
4222 #[doc(hidden)]
4223 #[allow(dead_code)]
4224 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
4225 #[doc(hidden)]
4226 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
4227 #[cfg(test)]
4228 #[allow(dead_code, unreachable_patterns)]
4229 fn _type_assertion(
4230 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4231 ) {
4232 match _t {
4233 alloy_sol_types::private::AssertTypeEq::<
4234 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4235 >(_) => {}
4236 }
4237 }
4238 #[automatically_derived]
4239 #[doc(hidden)]
4240 impl ::core::convert::From<UUPSUnsupportedProxiableUUID>
4241 for UnderlyingRustTuple<'_> {
4242 fn from(value: UUPSUnsupportedProxiableUUID) -> Self {
4243 (value.slot,)
4244 }
4245 }
4246 #[automatically_derived]
4247 #[doc(hidden)]
4248 impl ::core::convert::From<UnderlyingRustTuple<'_>>
4249 for UUPSUnsupportedProxiableUUID {
4250 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4251 Self { slot: tuple.0 }
4252 }
4253 }
4254 #[automatically_derived]
4255 impl alloy_sol_types::SolError for UUPSUnsupportedProxiableUUID {
4256 type Parameters<'a> = UnderlyingSolTuple<'a>;
4257 type Token<'a> = <Self::Parameters<
4258 'a,
4259 > as alloy_sol_types::SolType>::Token<'a>;
4260 const SIGNATURE: &'static str = "UUPSUnsupportedProxiableUUID(bytes32)";
4261 const SELECTOR: [u8; 4] = [170u8, 29u8, 73u8, 164u8];
4262 #[inline]
4263 fn new<'a>(
4264 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4265 ) -> Self {
4266 tuple.into()
4267 }
4268 #[inline]
4269 fn tokenize(&self) -> Self::Token<'_> {
4270 (
4271 <alloy::sol_types::sol_data::FixedBytes<
4272 32,
4273 > as alloy_sol_types::SolType>::tokenize(&self.slot),
4274 )
4275 }
4276 #[inline]
4277 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4278 <Self::Parameters<
4279 '_,
4280 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4281 .map(Self::new)
4282 }
4283 }
4284 };
4285 #[derive(serde::Serialize, serde::Deserialize)]
4286 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4287 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4292 #[derive(Clone)]
4293 pub struct UndelegationAlreadyExists;
4294 #[allow(
4295 non_camel_case_types,
4296 non_snake_case,
4297 clippy::pub_underscore_fields,
4298 clippy::style
4299 )]
4300 const _: () = {
4301 use alloy::sol_types as alloy_sol_types;
4302 #[doc(hidden)]
4303 #[allow(dead_code)]
4304 type UnderlyingSolTuple<'a> = ();
4305 #[doc(hidden)]
4306 type UnderlyingRustTuple<'a> = ();
4307 #[cfg(test)]
4308 #[allow(dead_code, unreachable_patterns)]
4309 fn _type_assertion(
4310 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4311 ) {
4312 match _t {
4313 alloy_sol_types::private::AssertTypeEq::<
4314 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4315 >(_) => {}
4316 }
4317 }
4318 #[automatically_derived]
4319 #[doc(hidden)]
4320 impl ::core::convert::From<UndelegationAlreadyExists>
4321 for UnderlyingRustTuple<'_> {
4322 fn from(value: UndelegationAlreadyExists) -> Self {
4323 ()
4324 }
4325 }
4326 #[automatically_derived]
4327 #[doc(hidden)]
4328 impl ::core::convert::From<UnderlyingRustTuple<'_>>
4329 for UndelegationAlreadyExists {
4330 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4331 Self
4332 }
4333 }
4334 #[automatically_derived]
4335 impl alloy_sol_types::SolError for UndelegationAlreadyExists {
4336 type Parameters<'a> = UnderlyingSolTuple<'a>;
4337 type Token<'a> = <Self::Parameters<
4338 'a,
4339 > as alloy_sol_types::SolType>::Token<'a>;
4340 const SIGNATURE: &'static str = "UndelegationAlreadyExists()";
4341 const SELECTOR: [u8; 4] = [212u8, 35u8, 164u8, 241u8];
4342 #[inline]
4343 fn new<'a>(
4344 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4345 ) -> Self {
4346 tuple.into()
4347 }
4348 #[inline]
4349 fn tokenize(&self) -> Self::Token<'_> {
4350 ()
4351 }
4352 #[inline]
4353 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4354 <Self::Parameters<
4355 '_,
4356 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4357 .map(Self::new)
4358 }
4359 }
4360 };
4361 #[derive(serde::Serialize, serde::Deserialize)]
4362 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4363 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4368 #[derive(Clone)]
4369 pub struct ValidatorAlreadyExited;
4370 #[allow(
4371 non_camel_case_types,
4372 non_snake_case,
4373 clippy::pub_underscore_fields,
4374 clippy::style
4375 )]
4376 const _: () = {
4377 use alloy::sol_types as alloy_sol_types;
4378 #[doc(hidden)]
4379 #[allow(dead_code)]
4380 type UnderlyingSolTuple<'a> = ();
4381 #[doc(hidden)]
4382 type UnderlyingRustTuple<'a> = ();
4383 #[cfg(test)]
4384 #[allow(dead_code, unreachable_patterns)]
4385 fn _type_assertion(
4386 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4387 ) {
4388 match _t {
4389 alloy_sol_types::private::AssertTypeEq::<
4390 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4391 >(_) => {}
4392 }
4393 }
4394 #[automatically_derived]
4395 #[doc(hidden)]
4396 impl ::core::convert::From<ValidatorAlreadyExited> for UnderlyingRustTuple<'_> {
4397 fn from(value: ValidatorAlreadyExited) -> Self {
4398 ()
4399 }
4400 }
4401 #[automatically_derived]
4402 #[doc(hidden)]
4403 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ValidatorAlreadyExited {
4404 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4405 Self
4406 }
4407 }
4408 #[automatically_derived]
4409 impl alloy_sol_types::SolError for ValidatorAlreadyExited {
4410 type Parameters<'a> = UnderlyingSolTuple<'a>;
4411 type Token<'a> = <Self::Parameters<
4412 'a,
4413 > as alloy_sol_types::SolType>::Token<'a>;
4414 const SIGNATURE: &'static str = "ValidatorAlreadyExited()";
4415 const SELECTOR: [u8; 4] = [234u8, 180u8, 169u8, 99u8];
4416 #[inline]
4417 fn new<'a>(
4418 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4419 ) -> Self {
4420 tuple.into()
4421 }
4422 #[inline]
4423 fn tokenize(&self) -> Self::Token<'_> {
4424 ()
4425 }
4426 #[inline]
4427 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4428 <Self::Parameters<
4429 '_,
4430 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4431 .map(Self::new)
4432 }
4433 }
4434 };
4435 #[derive(serde::Serialize, serde::Deserialize)]
4436 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4437 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4442 #[derive(Clone)]
4443 pub struct ValidatorAlreadyRegistered;
4444 #[allow(
4445 non_camel_case_types,
4446 non_snake_case,
4447 clippy::pub_underscore_fields,
4448 clippy::style
4449 )]
4450 const _: () = {
4451 use alloy::sol_types as alloy_sol_types;
4452 #[doc(hidden)]
4453 #[allow(dead_code)]
4454 type UnderlyingSolTuple<'a> = ();
4455 #[doc(hidden)]
4456 type UnderlyingRustTuple<'a> = ();
4457 #[cfg(test)]
4458 #[allow(dead_code, unreachable_patterns)]
4459 fn _type_assertion(
4460 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4461 ) {
4462 match _t {
4463 alloy_sol_types::private::AssertTypeEq::<
4464 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4465 >(_) => {}
4466 }
4467 }
4468 #[automatically_derived]
4469 #[doc(hidden)]
4470 impl ::core::convert::From<ValidatorAlreadyRegistered>
4471 for UnderlyingRustTuple<'_> {
4472 fn from(value: ValidatorAlreadyRegistered) -> Self {
4473 ()
4474 }
4475 }
4476 #[automatically_derived]
4477 #[doc(hidden)]
4478 impl ::core::convert::From<UnderlyingRustTuple<'_>>
4479 for ValidatorAlreadyRegistered {
4480 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4481 Self
4482 }
4483 }
4484 #[automatically_derived]
4485 impl alloy_sol_types::SolError for ValidatorAlreadyRegistered {
4486 type Parameters<'a> = UnderlyingSolTuple<'a>;
4487 type Token<'a> = <Self::Parameters<
4488 'a,
4489 > as alloy_sol_types::SolType>::Token<'a>;
4490 const SIGNATURE: &'static str = "ValidatorAlreadyRegistered()";
4491 const SELECTOR: [u8; 4] = [153u8, 115u8, 247u8, 216u8];
4492 #[inline]
4493 fn new<'a>(
4494 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4495 ) -> Self {
4496 tuple.into()
4497 }
4498 #[inline]
4499 fn tokenize(&self) -> Self::Token<'_> {
4500 ()
4501 }
4502 #[inline]
4503 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4504 <Self::Parameters<
4505 '_,
4506 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4507 .map(Self::new)
4508 }
4509 }
4510 };
4511 #[derive(serde::Serialize, serde::Deserialize)]
4512 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4513 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4518 #[derive(Clone)]
4519 pub struct ValidatorInactive;
4520 #[allow(
4521 non_camel_case_types,
4522 non_snake_case,
4523 clippy::pub_underscore_fields,
4524 clippy::style
4525 )]
4526 const _: () = {
4527 use alloy::sol_types as alloy_sol_types;
4528 #[doc(hidden)]
4529 #[allow(dead_code)]
4530 type UnderlyingSolTuple<'a> = ();
4531 #[doc(hidden)]
4532 type UnderlyingRustTuple<'a> = ();
4533 #[cfg(test)]
4534 #[allow(dead_code, unreachable_patterns)]
4535 fn _type_assertion(
4536 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4537 ) {
4538 match _t {
4539 alloy_sol_types::private::AssertTypeEq::<
4540 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4541 >(_) => {}
4542 }
4543 }
4544 #[automatically_derived]
4545 #[doc(hidden)]
4546 impl ::core::convert::From<ValidatorInactive> for UnderlyingRustTuple<'_> {
4547 fn from(value: ValidatorInactive) -> Self {
4548 ()
4549 }
4550 }
4551 #[automatically_derived]
4552 #[doc(hidden)]
4553 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ValidatorInactive {
4554 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4555 Self
4556 }
4557 }
4558 #[automatically_derived]
4559 impl alloy_sol_types::SolError for ValidatorInactive {
4560 type Parameters<'a> = UnderlyingSolTuple<'a>;
4561 type Token<'a> = <Self::Parameters<
4562 'a,
4563 > as alloy_sol_types::SolType>::Token<'a>;
4564 const SIGNATURE: &'static str = "ValidatorInactive()";
4565 const SELECTOR: [u8; 4] = [80u8, 138u8, 121u8, 63u8];
4566 #[inline]
4567 fn new<'a>(
4568 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4569 ) -> Self {
4570 tuple.into()
4571 }
4572 #[inline]
4573 fn tokenize(&self) -> Self::Token<'_> {
4574 ()
4575 }
4576 #[inline]
4577 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4578 <Self::Parameters<
4579 '_,
4580 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4581 .map(Self::new)
4582 }
4583 }
4584 };
4585 #[derive(serde::Serialize, serde::Deserialize)]
4586 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4587 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4592 #[derive(Clone)]
4593 pub struct ValidatorNotExited;
4594 #[allow(
4595 non_camel_case_types,
4596 non_snake_case,
4597 clippy::pub_underscore_fields,
4598 clippy::style
4599 )]
4600 const _: () = {
4601 use alloy::sol_types as alloy_sol_types;
4602 #[doc(hidden)]
4603 #[allow(dead_code)]
4604 type UnderlyingSolTuple<'a> = ();
4605 #[doc(hidden)]
4606 type UnderlyingRustTuple<'a> = ();
4607 #[cfg(test)]
4608 #[allow(dead_code, unreachable_patterns)]
4609 fn _type_assertion(
4610 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4611 ) {
4612 match _t {
4613 alloy_sol_types::private::AssertTypeEq::<
4614 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4615 >(_) => {}
4616 }
4617 }
4618 #[automatically_derived]
4619 #[doc(hidden)]
4620 impl ::core::convert::From<ValidatorNotExited> for UnderlyingRustTuple<'_> {
4621 fn from(value: ValidatorNotExited) -> Self {
4622 ()
4623 }
4624 }
4625 #[automatically_derived]
4626 #[doc(hidden)]
4627 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ValidatorNotExited {
4628 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4629 Self
4630 }
4631 }
4632 #[automatically_derived]
4633 impl alloy_sol_types::SolError for ValidatorNotExited {
4634 type Parameters<'a> = UnderlyingSolTuple<'a>;
4635 type Token<'a> = <Self::Parameters<
4636 'a,
4637 > as alloy_sol_types::SolType>::Token<'a>;
4638 const SIGNATURE: &'static str = "ValidatorNotExited()";
4639 const SELECTOR: [u8; 4] = [242u8, 83u8, 20u8, 166u8];
4640 #[inline]
4641 fn new<'a>(
4642 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4643 ) -> Self {
4644 tuple.into()
4645 }
4646 #[inline]
4647 fn tokenize(&self) -> Self::Token<'_> {
4648 ()
4649 }
4650 #[inline]
4651 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4652 <Self::Parameters<
4653 '_,
4654 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4655 .map(Self::new)
4656 }
4657 }
4658 };
4659 #[derive(serde::Serialize, serde::Deserialize)]
4660 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4661 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4666 #[derive(Clone)]
4667 pub struct ZeroAddress;
4668 #[allow(
4669 non_camel_case_types,
4670 non_snake_case,
4671 clippy::pub_underscore_fields,
4672 clippy::style
4673 )]
4674 const _: () = {
4675 use alloy::sol_types as alloy_sol_types;
4676 #[doc(hidden)]
4677 #[allow(dead_code)]
4678 type UnderlyingSolTuple<'a> = ();
4679 #[doc(hidden)]
4680 type UnderlyingRustTuple<'a> = ();
4681 #[cfg(test)]
4682 #[allow(dead_code, unreachable_patterns)]
4683 fn _type_assertion(
4684 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4685 ) {
4686 match _t {
4687 alloy_sol_types::private::AssertTypeEq::<
4688 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4689 >(_) => {}
4690 }
4691 }
4692 #[automatically_derived]
4693 #[doc(hidden)]
4694 impl ::core::convert::From<ZeroAddress> for UnderlyingRustTuple<'_> {
4695 fn from(value: ZeroAddress) -> Self {
4696 ()
4697 }
4698 }
4699 #[automatically_derived]
4700 #[doc(hidden)]
4701 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ZeroAddress {
4702 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4703 Self
4704 }
4705 }
4706 #[automatically_derived]
4707 impl alloy_sol_types::SolError for ZeroAddress {
4708 type Parameters<'a> = UnderlyingSolTuple<'a>;
4709 type Token<'a> = <Self::Parameters<
4710 'a,
4711 > as alloy_sol_types::SolType>::Token<'a>;
4712 const SIGNATURE: &'static str = "ZeroAddress()";
4713 const SELECTOR: [u8; 4] = [217u8, 46u8, 35u8, 61u8];
4714 #[inline]
4715 fn new<'a>(
4716 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4717 ) -> Self {
4718 tuple.into()
4719 }
4720 #[inline]
4721 fn tokenize(&self) -> Self::Token<'_> {
4722 ()
4723 }
4724 #[inline]
4725 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4726 <Self::Parameters<
4727 '_,
4728 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4729 .map(Self::new)
4730 }
4731 }
4732 };
4733 #[derive(serde::Serialize, serde::Deserialize)]
4734 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4735 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
4740 #[derive(Clone)]
4741 pub struct ZeroAmount;
4742 #[allow(
4743 non_camel_case_types,
4744 non_snake_case,
4745 clippy::pub_underscore_fields,
4746 clippy::style
4747 )]
4748 const _: () = {
4749 use alloy::sol_types as alloy_sol_types;
4750 #[doc(hidden)]
4751 #[allow(dead_code)]
4752 type UnderlyingSolTuple<'a> = ();
4753 #[doc(hidden)]
4754 type UnderlyingRustTuple<'a> = ();
4755 #[cfg(test)]
4756 #[allow(dead_code, unreachable_patterns)]
4757 fn _type_assertion(
4758 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
4759 ) {
4760 match _t {
4761 alloy_sol_types::private::AssertTypeEq::<
4762 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
4763 >(_) => {}
4764 }
4765 }
4766 #[automatically_derived]
4767 #[doc(hidden)]
4768 impl ::core::convert::From<ZeroAmount> for UnderlyingRustTuple<'_> {
4769 fn from(value: ZeroAmount) -> Self {
4770 ()
4771 }
4772 }
4773 #[automatically_derived]
4774 #[doc(hidden)]
4775 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ZeroAmount {
4776 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
4777 Self
4778 }
4779 }
4780 #[automatically_derived]
4781 impl alloy_sol_types::SolError for ZeroAmount {
4782 type Parameters<'a> = UnderlyingSolTuple<'a>;
4783 type Token<'a> = <Self::Parameters<
4784 'a,
4785 > as alloy_sol_types::SolType>::Token<'a>;
4786 const SIGNATURE: &'static str = "ZeroAmount()";
4787 const SELECTOR: [u8; 4] = [31u8, 42u8, 32u8, 5u8];
4788 #[inline]
4789 fn new<'a>(
4790 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
4791 ) -> Self {
4792 tuple.into()
4793 }
4794 #[inline]
4795 fn tokenize(&self) -> Self::Token<'_> {
4796 ()
4797 }
4798 #[inline]
4799 fn abi_decode_raw_validate(data: &[u8]) -> alloy_sol_types::Result<Self> {
4800 <Self::Parameters<
4801 '_,
4802 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
4803 .map(Self::new)
4804 }
4805 }
4806 };
4807 #[derive(serde::Serialize, serde::Deserialize)]
4808 #[derive()]
4809 #[allow(
4814 non_camel_case_types,
4815 non_snake_case,
4816 clippy::pub_underscore_fields,
4817 clippy::style
4818 )]
4819 #[derive(Clone)]
4820 pub struct ConsensusKeysUpdated {
4821 #[allow(missing_docs)]
4822 pub account: alloy::sol_types::private::Address,
4823 #[allow(missing_docs)]
4824 pub blsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
4825 #[allow(missing_docs)]
4826 pub schnorrVK: <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
4827 }
4828 #[allow(
4829 non_camel_case_types,
4830 non_snake_case,
4831 clippy::pub_underscore_fields,
4832 clippy::style
4833 )]
4834 const _: () = {
4835 use alloy::sol_types as alloy_sol_types;
4836 #[automatically_derived]
4837 impl alloy_sol_types::SolEvent for ConsensusKeysUpdated {
4838 type DataTuple<'a> = (BN254::G2Point, EdOnBN254::EdOnBN254Point);
4839 type DataToken<'a> = <Self::DataTuple<
4840 'a,
4841 > as alloy_sol_types::SolType>::Token<'a>;
4842 type TopicList = (
4843 alloy_sol_types::sol_data::FixedBytes<32>,
4844 alloy::sol_types::sol_data::Address,
4845 );
4846 const SIGNATURE: &'static str = "ConsensusKeysUpdated(address,(uint256,uint256,uint256,uint256),(uint256,uint256))";
4847 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
4848 128u8, 216u8, 164u8, 161u8, 102u8, 51u8, 40u8, 169u8, 152u8, 212u8, 85u8,
4849 91u8, 162u8, 29u8, 139u8, 186u8, 110u8, 241u8, 87u8, 106u8, 140u8, 94u8,
4850 157u8, 39u8, 249u8, 197u8, 69u8, 241u8, 163u8, 213u8, 43u8, 29u8,
4851 ]);
4852 const ANONYMOUS: bool = false;
4853 #[allow(unused_variables)]
4854 #[inline]
4855 fn new(
4856 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
4857 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
4858 ) -> Self {
4859 Self {
4860 account: topics.1,
4861 blsVK: data.0,
4862 schnorrVK: data.1,
4863 }
4864 }
4865 #[inline]
4866 fn check_signature(
4867 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
4868 ) -> alloy_sol_types::Result<()> {
4869 if topics.0 != Self::SIGNATURE_HASH {
4870 return Err(
4871 alloy_sol_types::Error::invalid_event_signature_hash(
4872 Self::SIGNATURE,
4873 topics.0,
4874 Self::SIGNATURE_HASH,
4875 ),
4876 );
4877 }
4878 Ok(())
4879 }
4880 #[inline]
4881 fn tokenize_body(&self) -> Self::DataToken<'_> {
4882 (
4883 <BN254::G2Point as alloy_sol_types::SolType>::tokenize(&self.blsVK),
4884 <EdOnBN254::EdOnBN254Point as alloy_sol_types::SolType>::tokenize(
4885 &self.schnorrVK,
4886 ),
4887 )
4888 }
4889 #[inline]
4890 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
4891 (Self::SIGNATURE_HASH.into(), self.account.clone())
4892 }
4893 #[inline]
4894 fn encode_topics_raw(
4895 &self,
4896 out: &mut [alloy_sol_types::abi::token::WordToken],
4897 ) -> alloy_sol_types::Result<()> {
4898 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
4899 return Err(alloy_sol_types::Error::Overrun);
4900 }
4901 out[0usize] = alloy_sol_types::abi::token::WordToken(
4902 Self::SIGNATURE_HASH,
4903 );
4904 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
4905 &self.account,
4906 );
4907 Ok(())
4908 }
4909 }
4910 #[automatically_derived]
4911 impl alloy_sol_types::private::IntoLogData for ConsensusKeysUpdated {
4912 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
4913 From::from(self)
4914 }
4915 fn into_log_data(self) -> alloy_sol_types::private::LogData {
4916 From::from(&self)
4917 }
4918 }
4919 #[automatically_derived]
4920 impl From<&ConsensusKeysUpdated> for alloy_sol_types::private::LogData {
4921 #[inline]
4922 fn from(this: &ConsensusKeysUpdated) -> alloy_sol_types::private::LogData {
4923 alloy_sol_types::SolEvent::encode_log_data(this)
4924 }
4925 }
4926 };
4927 #[derive(serde::Serialize, serde::Deserialize)]
4928 #[derive(Default, Debug, PartialEq, Eq, Hash)]
4929 #[allow(
4934 non_camel_case_types,
4935 non_snake_case,
4936 clippy::pub_underscore_fields,
4937 clippy::style
4938 )]
4939 #[derive(Clone)]
4940 pub struct Delegated {
4941 #[allow(missing_docs)]
4942 pub delegator: alloy::sol_types::private::Address,
4943 #[allow(missing_docs)]
4944 pub validator: alloy::sol_types::private::Address,
4945 #[allow(missing_docs)]
4946 pub amount: alloy::sol_types::private::primitives::aliases::U256,
4947 }
4948 #[allow(
4949 non_camel_case_types,
4950 non_snake_case,
4951 clippy::pub_underscore_fields,
4952 clippy::style
4953 )]
4954 const _: () = {
4955 use alloy::sol_types as alloy_sol_types;
4956 #[automatically_derived]
4957 impl alloy_sol_types::SolEvent for Delegated {
4958 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
4959 type DataToken<'a> = <Self::DataTuple<
4960 'a,
4961 > as alloy_sol_types::SolType>::Token<'a>;
4962 type TopicList = (
4963 alloy_sol_types::sol_data::FixedBytes<32>,
4964 alloy::sol_types::sol_data::Address,
4965 alloy::sol_types::sol_data::Address,
4966 );
4967 const SIGNATURE: &'static str = "Delegated(address,address,uint256)";
4968 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
4969 229u8, 84u8, 26u8, 107u8, 97u8, 3u8, 212u8, 250u8, 126u8, 2u8, 30u8,
4970 213u8, 79u8, 173u8, 57u8, 198u8, 111u8, 39u8, 167u8, 107u8, 209u8, 61u8,
4971 55u8, 76u8, 246u8, 36u8, 10u8, 230u8, 189u8, 11u8, 183u8, 43u8,
4972 ]);
4973 const ANONYMOUS: bool = false;
4974 #[allow(unused_variables)]
4975 #[inline]
4976 fn new(
4977 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
4978 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
4979 ) -> Self {
4980 Self {
4981 delegator: topics.1,
4982 validator: topics.2,
4983 amount: data.0,
4984 }
4985 }
4986 #[inline]
4987 fn check_signature(
4988 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
4989 ) -> alloy_sol_types::Result<()> {
4990 if topics.0 != Self::SIGNATURE_HASH {
4991 return Err(
4992 alloy_sol_types::Error::invalid_event_signature_hash(
4993 Self::SIGNATURE,
4994 topics.0,
4995 Self::SIGNATURE_HASH,
4996 ),
4997 );
4998 }
4999 Ok(())
5000 }
5001 #[inline]
5002 fn tokenize_body(&self) -> Self::DataToken<'_> {
5003 (
5004 <alloy::sol_types::sol_data::Uint<
5005 256,
5006 > as alloy_sol_types::SolType>::tokenize(&self.amount),
5007 )
5008 }
5009 #[inline]
5010 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5011 (
5012 Self::SIGNATURE_HASH.into(),
5013 self.delegator.clone(),
5014 self.validator.clone(),
5015 )
5016 }
5017 #[inline]
5018 fn encode_topics_raw(
5019 &self,
5020 out: &mut [alloy_sol_types::abi::token::WordToken],
5021 ) -> alloy_sol_types::Result<()> {
5022 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5023 return Err(alloy_sol_types::Error::Overrun);
5024 }
5025 out[0usize] = alloy_sol_types::abi::token::WordToken(
5026 Self::SIGNATURE_HASH,
5027 );
5028 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5029 &self.delegator,
5030 );
5031 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5032 &self.validator,
5033 );
5034 Ok(())
5035 }
5036 }
5037 #[automatically_derived]
5038 impl alloy_sol_types::private::IntoLogData for Delegated {
5039 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5040 From::from(self)
5041 }
5042 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5043 From::from(&self)
5044 }
5045 }
5046 #[automatically_derived]
5047 impl From<&Delegated> for alloy_sol_types::private::LogData {
5048 #[inline]
5049 fn from(this: &Delegated) -> alloy_sol_types::private::LogData {
5050 alloy_sol_types::SolEvent::encode_log_data(this)
5051 }
5052 }
5053 };
5054 #[derive(serde::Serialize, serde::Deserialize)]
5055 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5056 #[allow(
5061 non_camel_case_types,
5062 non_snake_case,
5063 clippy::pub_underscore_fields,
5064 clippy::style
5065 )]
5066 #[derive(Clone)]
5067 pub struct Initialized {
5068 #[allow(missing_docs)]
5069 pub version: u64,
5070 }
5071 #[allow(
5072 non_camel_case_types,
5073 non_snake_case,
5074 clippy::pub_underscore_fields,
5075 clippy::style
5076 )]
5077 const _: () = {
5078 use alloy::sol_types as alloy_sol_types;
5079 #[automatically_derived]
5080 impl alloy_sol_types::SolEvent for Initialized {
5081 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<64>,);
5082 type DataToken<'a> = <Self::DataTuple<
5083 'a,
5084 > as alloy_sol_types::SolType>::Token<'a>;
5085 type TopicList = (alloy_sol_types::sol_data::FixedBytes<32>,);
5086 const SIGNATURE: &'static str = "Initialized(uint64)";
5087 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5088 199u8, 245u8, 5u8, 178u8, 243u8, 113u8, 174u8, 33u8, 117u8, 238u8, 73u8,
5089 19u8, 244u8, 73u8, 158u8, 31u8, 38u8, 51u8, 167u8, 181u8, 147u8, 99u8,
5090 33u8, 238u8, 209u8, 205u8, 174u8, 182u8, 17u8, 81u8, 129u8, 210u8,
5091 ]);
5092 const ANONYMOUS: bool = false;
5093 #[allow(unused_variables)]
5094 #[inline]
5095 fn new(
5096 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5097 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5098 ) -> Self {
5099 Self { version: data.0 }
5100 }
5101 #[inline]
5102 fn check_signature(
5103 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5104 ) -> alloy_sol_types::Result<()> {
5105 if topics.0 != Self::SIGNATURE_HASH {
5106 return Err(
5107 alloy_sol_types::Error::invalid_event_signature_hash(
5108 Self::SIGNATURE,
5109 topics.0,
5110 Self::SIGNATURE_HASH,
5111 ),
5112 );
5113 }
5114 Ok(())
5115 }
5116 #[inline]
5117 fn tokenize_body(&self) -> Self::DataToken<'_> {
5118 (
5119 <alloy::sol_types::sol_data::Uint<
5120 64,
5121 > as alloy_sol_types::SolType>::tokenize(&self.version),
5122 )
5123 }
5124 #[inline]
5125 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5126 (Self::SIGNATURE_HASH.into(),)
5127 }
5128 #[inline]
5129 fn encode_topics_raw(
5130 &self,
5131 out: &mut [alloy_sol_types::abi::token::WordToken],
5132 ) -> alloy_sol_types::Result<()> {
5133 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5134 return Err(alloy_sol_types::Error::Overrun);
5135 }
5136 out[0usize] = alloy_sol_types::abi::token::WordToken(
5137 Self::SIGNATURE_HASH,
5138 );
5139 Ok(())
5140 }
5141 }
5142 #[automatically_derived]
5143 impl alloy_sol_types::private::IntoLogData for Initialized {
5144 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5145 From::from(self)
5146 }
5147 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5148 From::from(&self)
5149 }
5150 }
5151 #[automatically_derived]
5152 impl From<&Initialized> for alloy_sol_types::private::LogData {
5153 #[inline]
5154 fn from(this: &Initialized) -> alloy_sol_types::private::LogData {
5155 alloy_sol_types::SolEvent::encode_log_data(this)
5156 }
5157 }
5158 };
5159 #[derive(serde::Serialize, serde::Deserialize)]
5160 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5161 #[allow(
5166 non_camel_case_types,
5167 non_snake_case,
5168 clippy::pub_underscore_fields,
5169 clippy::style
5170 )]
5171 #[derive(Clone)]
5172 pub struct OwnershipTransferred {
5173 #[allow(missing_docs)]
5174 pub previousOwner: alloy::sol_types::private::Address,
5175 #[allow(missing_docs)]
5176 pub newOwner: alloy::sol_types::private::Address,
5177 }
5178 #[allow(
5179 non_camel_case_types,
5180 non_snake_case,
5181 clippy::pub_underscore_fields,
5182 clippy::style
5183 )]
5184 const _: () = {
5185 use alloy::sol_types as alloy_sol_types;
5186 #[automatically_derived]
5187 impl alloy_sol_types::SolEvent for OwnershipTransferred {
5188 type DataTuple<'a> = ();
5189 type DataToken<'a> = <Self::DataTuple<
5190 'a,
5191 > as alloy_sol_types::SolType>::Token<'a>;
5192 type TopicList = (
5193 alloy_sol_types::sol_data::FixedBytes<32>,
5194 alloy::sol_types::sol_data::Address,
5195 alloy::sol_types::sol_data::Address,
5196 );
5197 const SIGNATURE: &'static str = "OwnershipTransferred(address,address)";
5198 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5199 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8,
5200 31u8, 208u8, 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8,
5201 218u8, 175u8, 227u8, 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8,
5202 ]);
5203 const ANONYMOUS: bool = false;
5204 #[allow(unused_variables)]
5205 #[inline]
5206 fn new(
5207 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5208 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5209 ) -> Self {
5210 Self {
5211 previousOwner: topics.1,
5212 newOwner: topics.2,
5213 }
5214 }
5215 #[inline]
5216 fn check_signature(
5217 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5218 ) -> alloy_sol_types::Result<()> {
5219 if topics.0 != Self::SIGNATURE_HASH {
5220 return Err(
5221 alloy_sol_types::Error::invalid_event_signature_hash(
5222 Self::SIGNATURE,
5223 topics.0,
5224 Self::SIGNATURE_HASH,
5225 ),
5226 );
5227 }
5228 Ok(())
5229 }
5230 #[inline]
5231 fn tokenize_body(&self) -> Self::DataToken<'_> {
5232 ()
5233 }
5234 #[inline]
5235 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5236 (
5237 Self::SIGNATURE_HASH.into(),
5238 self.previousOwner.clone(),
5239 self.newOwner.clone(),
5240 )
5241 }
5242 #[inline]
5243 fn encode_topics_raw(
5244 &self,
5245 out: &mut [alloy_sol_types::abi::token::WordToken],
5246 ) -> alloy_sol_types::Result<()> {
5247 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5248 return Err(alloy_sol_types::Error::Overrun);
5249 }
5250 out[0usize] = alloy_sol_types::abi::token::WordToken(
5251 Self::SIGNATURE_HASH,
5252 );
5253 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5254 &self.previousOwner,
5255 );
5256 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5257 &self.newOwner,
5258 );
5259 Ok(())
5260 }
5261 }
5262 #[automatically_derived]
5263 impl alloy_sol_types::private::IntoLogData for OwnershipTransferred {
5264 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5265 From::from(self)
5266 }
5267 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5268 From::from(&self)
5269 }
5270 }
5271 #[automatically_derived]
5272 impl From<&OwnershipTransferred> for alloy_sol_types::private::LogData {
5273 #[inline]
5274 fn from(this: &OwnershipTransferred) -> alloy_sol_types::private::LogData {
5275 alloy_sol_types::SolEvent::encode_log_data(this)
5276 }
5277 }
5278 };
5279 #[derive(serde::Serialize, serde::Deserialize)]
5280 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5281 #[allow(
5286 non_camel_case_types,
5287 non_snake_case,
5288 clippy::pub_underscore_fields,
5289 clippy::style
5290 )]
5291 #[derive(Clone)]
5292 pub struct Undelegated {
5293 #[allow(missing_docs)]
5294 pub delegator: alloy::sol_types::private::Address,
5295 #[allow(missing_docs)]
5296 pub validator: alloy::sol_types::private::Address,
5297 #[allow(missing_docs)]
5298 pub amount: alloy::sol_types::private::primitives::aliases::U256,
5299 }
5300 #[allow(
5301 non_camel_case_types,
5302 non_snake_case,
5303 clippy::pub_underscore_fields,
5304 clippy::style
5305 )]
5306 const _: () = {
5307 use alloy::sol_types as alloy_sol_types;
5308 #[automatically_derived]
5309 impl alloy_sol_types::SolEvent for Undelegated {
5310 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
5311 type DataToken<'a> = <Self::DataTuple<
5312 'a,
5313 > as alloy_sol_types::SolType>::Token<'a>;
5314 type TopicList = (
5315 alloy_sol_types::sol_data::FixedBytes<32>,
5316 alloy::sol_types::sol_data::Address,
5317 alloy::sol_types::sol_data::Address,
5318 );
5319 const SIGNATURE: &'static str = "Undelegated(address,address,uint256)";
5320 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5321 77u8, 16u8, 189u8, 4u8, 151u8, 117u8, 199u8, 123u8, 215u8, 242u8, 85u8,
5322 25u8, 90u8, 251u8, 165u8, 8u8, 128u8, 40u8, 236u8, 179u8, 199u8, 194u8,
5323 119u8, 211u8, 147u8, 204u8, 255u8, 121u8, 52u8, 242u8, 249u8, 44u8,
5324 ]);
5325 const ANONYMOUS: bool = false;
5326 #[allow(unused_variables)]
5327 #[inline]
5328 fn new(
5329 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5330 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5331 ) -> Self {
5332 Self {
5333 delegator: topics.1,
5334 validator: topics.2,
5335 amount: data.0,
5336 }
5337 }
5338 #[inline]
5339 fn check_signature(
5340 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5341 ) -> alloy_sol_types::Result<()> {
5342 if topics.0 != Self::SIGNATURE_HASH {
5343 return Err(
5344 alloy_sol_types::Error::invalid_event_signature_hash(
5345 Self::SIGNATURE,
5346 topics.0,
5347 Self::SIGNATURE_HASH,
5348 ),
5349 );
5350 }
5351 Ok(())
5352 }
5353 #[inline]
5354 fn tokenize_body(&self) -> Self::DataToken<'_> {
5355 (
5356 <alloy::sol_types::sol_data::Uint<
5357 256,
5358 > as alloy_sol_types::SolType>::tokenize(&self.amount),
5359 )
5360 }
5361 #[inline]
5362 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5363 (
5364 Self::SIGNATURE_HASH.into(),
5365 self.delegator.clone(),
5366 self.validator.clone(),
5367 )
5368 }
5369 #[inline]
5370 fn encode_topics_raw(
5371 &self,
5372 out: &mut [alloy_sol_types::abi::token::WordToken],
5373 ) -> alloy_sol_types::Result<()> {
5374 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5375 return Err(alloy_sol_types::Error::Overrun);
5376 }
5377 out[0usize] = alloy_sol_types::abi::token::WordToken(
5378 Self::SIGNATURE_HASH,
5379 );
5380 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5381 &self.delegator,
5382 );
5383 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5384 &self.validator,
5385 );
5386 Ok(())
5387 }
5388 }
5389 #[automatically_derived]
5390 impl alloy_sol_types::private::IntoLogData for Undelegated {
5391 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5392 From::from(self)
5393 }
5394 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5395 From::from(&self)
5396 }
5397 }
5398 #[automatically_derived]
5399 impl From<&Undelegated> for alloy_sol_types::private::LogData {
5400 #[inline]
5401 fn from(this: &Undelegated) -> alloy_sol_types::private::LogData {
5402 alloy_sol_types::SolEvent::encode_log_data(this)
5403 }
5404 }
5405 };
5406 #[derive(serde::Serialize, serde::Deserialize)]
5407 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5408 #[allow(
5413 non_camel_case_types,
5414 non_snake_case,
5415 clippy::pub_underscore_fields,
5416 clippy::style
5417 )]
5418 #[derive(Clone)]
5419 pub struct Upgraded {
5420 #[allow(missing_docs)]
5421 pub implementation: alloy::sol_types::private::Address,
5422 }
5423 #[allow(
5424 non_camel_case_types,
5425 non_snake_case,
5426 clippy::pub_underscore_fields,
5427 clippy::style
5428 )]
5429 const _: () = {
5430 use alloy::sol_types as alloy_sol_types;
5431 #[automatically_derived]
5432 impl alloy_sol_types::SolEvent for Upgraded {
5433 type DataTuple<'a> = ();
5434 type DataToken<'a> = <Self::DataTuple<
5435 'a,
5436 > as alloy_sol_types::SolType>::Token<'a>;
5437 type TopicList = (
5438 alloy_sol_types::sol_data::FixedBytes<32>,
5439 alloy::sol_types::sol_data::Address,
5440 );
5441 const SIGNATURE: &'static str = "Upgraded(address)";
5442 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5443 188u8, 124u8, 215u8, 90u8, 32u8, 238u8, 39u8, 253u8, 154u8, 222u8, 186u8,
5444 179u8, 32u8, 65u8, 247u8, 85u8, 33u8, 77u8, 188u8, 107u8, 255u8, 169u8,
5445 12u8, 192u8, 34u8, 91u8, 57u8, 218u8, 46u8, 92u8, 45u8, 59u8,
5446 ]);
5447 const ANONYMOUS: bool = false;
5448 #[allow(unused_variables)]
5449 #[inline]
5450 fn new(
5451 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5452 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5453 ) -> Self {
5454 Self { implementation: topics.1 }
5455 }
5456 #[inline]
5457 fn check_signature(
5458 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5459 ) -> alloy_sol_types::Result<()> {
5460 if topics.0 != Self::SIGNATURE_HASH {
5461 return Err(
5462 alloy_sol_types::Error::invalid_event_signature_hash(
5463 Self::SIGNATURE,
5464 topics.0,
5465 Self::SIGNATURE_HASH,
5466 ),
5467 );
5468 }
5469 Ok(())
5470 }
5471 #[inline]
5472 fn tokenize_body(&self) -> Self::DataToken<'_> {
5473 ()
5474 }
5475 #[inline]
5476 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5477 (Self::SIGNATURE_HASH.into(), self.implementation.clone())
5478 }
5479 #[inline]
5480 fn encode_topics_raw(
5481 &self,
5482 out: &mut [alloy_sol_types::abi::token::WordToken],
5483 ) -> alloy_sol_types::Result<()> {
5484 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5485 return Err(alloy_sol_types::Error::Overrun);
5486 }
5487 out[0usize] = alloy_sol_types::abi::token::WordToken(
5488 Self::SIGNATURE_HASH,
5489 );
5490 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5491 &self.implementation,
5492 );
5493 Ok(())
5494 }
5495 }
5496 #[automatically_derived]
5497 impl alloy_sol_types::private::IntoLogData for Upgraded {
5498 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5499 From::from(self)
5500 }
5501 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5502 From::from(&self)
5503 }
5504 }
5505 #[automatically_derived]
5506 impl From<&Upgraded> for alloy_sol_types::private::LogData {
5507 #[inline]
5508 fn from(this: &Upgraded) -> alloy_sol_types::private::LogData {
5509 alloy_sol_types::SolEvent::encode_log_data(this)
5510 }
5511 }
5512 };
5513 #[derive(serde::Serialize, serde::Deserialize)]
5514 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5515 #[allow(
5520 non_camel_case_types,
5521 non_snake_case,
5522 clippy::pub_underscore_fields,
5523 clippy::style
5524 )]
5525 #[derive(Clone)]
5526 pub struct ValidatorExit {
5527 #[allow(missing_docs)]
5528 pub validator: alloy::sol_types::private::Address,
5529 }
5530 #[allow(
5531 non_camel_case_types,
5532 non_snake_case,
5533 clippy::pub_underscore_fields,
5534 clippy::style
5535 )]
5536 const _: () = {
5537 use alloy::sol_types as alloy_sol_types;
5538 #[automatically_derived]
5539 impl alloy_sol_types::SolEvent for ValidatorExit {
5540 type DataTuple<'a> = ();
5541 type DataToken<'a> = <Self::DataTuple<
5542 'a,
5543 > as alloy_sol_types::SolType>::Token<'a>;
5544 type TopicList = (
5545 alloy_sol_types::sol_data::FixedBytes<32>,
5546 alloy::sol_types::sol_data::Address,
5547 );
5548 const SIGNATURE: &'static str = "ValidatorExit(address)";
5549 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5550 251u8, 36u8, 48u8, 83u8, 84u8, 200u8, 119u8, 98u8, 213u8, 87u8, 72u8,
5551 122u8, 228u8, 165u8, 100u8, 232u8, 208u8, 62u8, 203u8, 185u8, 169u8,
5552 125u8, 216u8, 175u8, 255u8, 142u8, 31u8, 111u8, 202u8, 240u8, 221u8, 22u8,
5553 ]);
5554 const ANONYMOUS: bool = false;
5555 #[allow(unused_variables)]
5556 #[inline]
5557 fn new(
5558 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5559 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5560 ) -> Self {
5561 Self { validator: topics.1 }
5562 }
5563 #[inline]
5564 fn check_signature(
5565 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5566 ) -> alloy_sol_types::Result<()> {
5567 if topics.0 != Self::SIGNATURE_HASH {
5568 return Err(
5569 alloy_sol_types::Error::invalid_event_signature_hash(
5570 Self::SIGNATURE,
5571 topics.0,
5572 Self::SIGNATURE_HASH,
5573 ),
5574 );
5575 }
5576 Ok(())
5577 }
5578 #[inline]
5579 fn tokenize_body(&self) -> Self::DataToken<'_> {
5580 ()
5581 }
5582 #[inline]
5583 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5584 (Self::SIGNATURE_HASH.into(), self.validator.clone())
5585 }
5586 #[inline]
5587 fn encode_topics_raw(
5588 &self,
5589 out: &mut [alloy_sol_types::abi::token::WordToken],
5590 ) -> alloy_sol_types::Result<()> {
5591 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5592 return Err(alloy_sol_types::Error::Overrun);
5593 }
5594 out[0usize] = alloy_sol_types::abi::token::WordToken(
5595 Self::SIGNATURE_HASH,
5596 );
5597 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5598 &self.validator,
5599 );
5600 Ok(())
5601 }
5602 }
5603 #[automatically_derived]
5604 impl alloy_sol_types::private::IntoLogData for ValidatorExit {
5605 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5606 From::from(self)
5607 }
5608 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5609 From::from(&self)
5610 }
5611 }
5612 #[automatically_derived]
5613 impl From<&ValidatorExit> for alloy_sol_types::private::LogData {
5614 #[inline]
5615 fn from(this: &ValidatorExit) -> alloy_sol_types::private::LogData {
5616 alloy_sol_types::SolEvent::encode_log_data(this)
5617 }
5618 }
5619 };
5620 #[derive(serde::Serialize, serde::Deserialize)]
5621 #[derive()]
5622 #[allow(
5627 non_camel_case_types,
5628 non_snake_case,
5629 clippy::pub_underscore_fields,
5630 clippy::style
5631 )]
5632 #[derive(Clone)]
5633 pub struct ValidatorRegistered {
5634 #[allow(missing_docs)]
5635 pub account: alloy::sol_types::private::Address,
5636 #[allow(missing_docs)]
5637 pub blsVk: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
5638 #[allow(missing_docs)]
5639 pub schnorrVk: <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
5640 #[allow(missing_docs)]
5641 pub commission: u16,
5642 }
5643 #[allow(
5644 non_camel_case_types,
5645 non_snake_case,
5646 clippy::pub_underscore_fields,
5647 clippy::style
5648 )]
5649 const _: () = {
5650 use alloy::sol_types as alloy_sol_types;
5651 #[automatically_derived]
5652 impl alloy_sol_types::SolEvent for ValidatorRegistered {
5653 type DataTuple<'a> = (
5654 BN254::G2Point,
5655 EdOnBN254::EdOnBN254Point,
5656 alloy::sol_types::sol_data::Uint<16>,
5657 );
5658 type DataToken<'a> = <Self::DataTuple<
5659 'a,
5660 > as alloy_sol_types::SolType>::Token<'a>;
5661 type TopicList = (
5662 alloy_sol_types::sol_data::FixedBytes<32>,
5663 alloy::sol_types::sol_data::Address,
5664 );
5665 const SIGNATURE: &'static str = "ValidatorRegistered(address,(uint256,uint256,uint256,uint256),(uint256,uint256),uint16)";
5666 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5667 246u8, 232u8, 53u8, 156u8, 87u8, 82u8, 11u8, 70u8, 150u8, 52u8, 115u8,
5668 107u8, 252u8, 59u8, 183u8, 236u8, 92u8, 189u8, 26u8, 11u8, 210u8, 139u8,
5669 16u8, 168u8, 39u8, 87u8, 147u8, 187u8, 115u8, 11u8, 121u8, 127u8,
5670 ]);
5671 const ANONYMOUS: bool = false;
5672 #[allow(unused_variables)]
5673 #[inline]
5674 fn new(
5675 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5676 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5677 ) -> Self {
5678 Self {
5679 account: topics.1,
5680 blsVk: data.0,
5681 schnorrVk: data.1,
5682 commission: data.2,
5683 }
5684 }
5685 #[inline]
5686 fn check_signature(
5687 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5688 ) -> alloy_sol_types::Result<()> {
5689 if topics.0 != Self::SIGNATURE_HASH {
5690 return Err(
5691 alloy_sol_types::Error::invalid_event_signature_hash(
5692 Self::SIGNATURE,
5693 topics.0,
5694 Self::SIGNATURE_HASH,
5695 ),
5696 );
5697 }
5698 Ok(())
5699 }
5700 #[inline]
5701 fn tokenize_body(&self) -> Self::DataToken<'_> {
5702 (
5703 <BN254::G2Point as alloy_sol_types::SolType>::tokenize(&self.blsVk),
5704 <EdOnBN254::EdOnBN254Point as alloy_sol_types::SolType>::tokenize(
5705 &self.schnorrVk,
5706 ),
5707 <alloy::sol_types::sol_data::Uint<
5708 16,
5709 > as alloy_sol_types::SolType>::tokenize(&self.commission),
5710 )
5711 }
5712 #[inline]
5713 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5714 (Self::SIGNATURE_HASH.into(), self.account.clone())
5715 }
5716 #[inline]
5717 fn encode_topics_raw(
5718 &self,
5719 out: &mut [alloy_sol_types::abi::token::WordToken],
5720 ) -> alloy_sol_types::Result<()> {
5721 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5722 return Err(alloy_sol_types::Error::Overrun);
5723 }
5724 out[0usize] = alloy_sol_types::abi::token::WordToken(
5725 Self::SIGNATURE_HASH,
5726 );
5727 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5728 &self.account,
5729 );
5730 Ok(())
5731 }
5732 }
5733 #[automatically_derived]
5734 impl alloy_sol_types::private::IntoLogData for ValidatorRegistered {
5735 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5736 From::from(self)
5737 }
5738 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5739 From::from(&self)
5740 }
5741 }
5742 #[automatically_derived]
5743 impl From<&ValidatorRegistered> for alloy_sol_types::private::LogData {
5744 #[inline]
5745 fn from(this: &ValidatorRegistered) -> alloy_sol_types::private::LogData {
5746 alloy_sol_types::SolEvent::encode_log_data(this)
5747 }
5748 }
5749 };
5750 #[derive(serde::Serialize, serde::Deserialize)]
5751 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5752 #[allow(
5757 non_camel_case_types,
5758 non_snake_case,
5759 clippy::pub_underscore_fields,
5760 clippy::style
5761 )]
5762 #[derive(Clone)]
5763 pub struct Withdrawal {
5764 #[allow(missing_docs)]
5765 pub account: alloy::sol_types::private::Address,
5766 #[allow(missing_docs)]
5767 pub amount: alloy::sol_types::private::primitives::aliases::U256,
5768 }
5769 #[allow(
5770 non_camel_case_types,
5771 non_snake_case,
5772 clippy::pub_underscore_fields,
5773 clippy::style
5774 )]
5775 const _: () = {
5776 use alloy::sol_types as alloy_sol_types;
5777 #[automatically_derived]
5778 impl alloy_sol_types::SolEvent for Withdrawal {
5779 type DataTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
5780 type DataToken<'a> = <Self::DataTuple<
5781 'a,
5782 > as alloy_sol_types::SolType>::Token<'a>;
5783 type TopicList = (
5784 alloy_sol_types::sol_data::FixedBytes<32>,
5785 alloy::sol_types::sol_data::Address,
5786 );
5787 const SIGNATURE: &'static str = "Withdrawal(address,uint256)";
5788 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
5789 127u8, 207u8, 83u8, 44u8, 21u8, 240u8, 166u8, 219u8, 11u8, 214u8, 208u8,
5790 224u8, 56u8, 190u8, 167u8, 29u8, 48u8, 216u8, 8u8, 199u8, 217u8, 140u8,
5791 179u8, 191u8, 114u8, 104u8, 169u8, 91u8, 245u8, 8u8, 27u8, 101u8,
5792 ]);
5793 const ANONYMOUS: bool = false;
5794 #[allow(unused_variables)]
5795 #[inline]
5796 fn new(
5797 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
5798 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
5799 ) -> Self {
5800 Self {
5801 account: topics.1,
5802 amount: data.0,
5803 }
5804 }
5805 #[inline]
5806 fn check_signature(
5807 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
5808 ) -> alloy_sol_types::Result<()> {
5809 if topics.0 != Self::SIGNATURE_HASH {
5810 return Err(
5811 alloy_sol_types::Error::invalid_event_signature_hash(
5812 Self::SIGNATURE,
5813 topics.0,
5814 Self::SIGNATURE_HASH,
5815 ),
5816 );
5817 }
5818 Ok(())
5819 }
5820 #[inline]
5821 fn tokenize_body(&self) -> Self::DataToken<'_> {
5822 (
5823 <alloy::sol_types::sol_data::Uint<
5824 256,
5825 > as alloy_sol_types::SolType>::tokenize(&self.amount),
5826 )
5827 }
5828 #[inline]
5829 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
5830 (Self::SIGNATURE_HASH.into(), self.account.clone())
5831 }
5832 #[inline]
5833 fn encode_topics_raw(
5834 &self,
5835 out: &mut [alloy_sol_types::abi::token::WordToken],
5836 ) -> alloy_sol_types::Result<()> {
5837 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
5838 return Err(alloy_sol_types::Error::Overrun);
5839 }
5840 out[0usize] = alloy_sol_types::abi::token::WordToken(
5841 Self::SIGNATURE_HASH,
5842 );
5843 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
5844 &self.account,
5845 );
5846 Ok(())
5847 }
5848 }
5849 #[automatically_derived]
5850 impl alloy_sol_types::private::IntoLogData for Withdrawal {
5851 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
5852 From::from(self)
5853 }
5854 fn into_log_data(self) -> alloy_sol_types::private::LogData {
5855 From::from(&self)
5856 }
5857 }
5858 #[automatically_derived]
5859 impl From<&Withdrawal> for alloy_sol_types::private::LogData {
5860 #[inline]
5861 fn from(this: &Withdrawal) -> alloy_sol_types::private::LogData {
5862 alloy_sol_types::SolEvent::encode_log_data(this)
5863 }
5864 }
5865 };
5866 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5871 #[derive(Clone)]
5872 pub struct constructorCall {}
5873 const _: () = {
5874 use alloy::sol_types as alloy_sol_types;
5875 {
5876 #[doc(hidden)]
5877 #[allow(dead_code)]
5878 type UnderlyingSolTuple<'a> = ();
5879 #[doc(hidden)]
5880 type UnderlyingRustTuple<'a> = ();
5881 #[cfg(test)]
5882 #[allow(dead_code, unreachable_patterns)]
5883 fn _type_assertion(
5884 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5885 ) {
5886 match _t {
5887 alloy_sol_types::private::AssertTypeEq::<
5888 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5889 >(_) => {}
5890 }
5891 }
5892 #[automatically_derived]
5893 #[doc(hidden)]
5894 impl ::core::convert::From<constructorCall> for UnderlyingRustTuple<'_> {
5895 fn from(value: constructorCall) -> Self {
5896 ()
5897 }
5898 }
5899 #[automatically_derived]
5900 #[doc(hidden)]
5901 impl ::core::convert::From<UnderlyingRustTuple<'_>> for constructorCall {
5902 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5903 Self {}
5904 }
5905 }
5906 }
5907 #[automatically_derived]
5908 impl alloy_sol_types::SolConstructor for constructorCall {
5909 type Parameters<'a> = ();
5910 type Token<'a> = <Self::Parameters<
5911 'a,
5912 > as alloy_sol_types::SolType>::Token<'a>;
5913 #[inline]
5914 fn new<'a>(
5915 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
5916 ) -> Self {
5917 tuple.into()
5918 }
5919 #[inline]
5920 fn tokenize(&self) -> Self::Token<'_> {
5921 ()
5922 }
5923 }
5924 };
5925 #[derive(serde::Serialize, serde::Deserialize)]
5926 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5927 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5932 #[derive(Clone)]
5933 pub struct UPGRADE_INTERFACE_VERSIONCall;
5934 #[derive(serde::Serialize, serde::Deserialize)]
5935 #[derive(Default, Debug, PartialEq, Eq, Hash)]
5936 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
5938 #[derive(Clone)]
5939 pub struct UPGRADE_INTERFACE_VERSIONReturn {
5940 #[allow(missing_docs)]
5941 pub _0: alloy::sol_types::private::String,
5942 }
5943 #[allow(
5944 non_camel_case_types,
5945 non_snake_case,
5946 clippy::pub_underscore_fields,
5947 clippy::style
5948 )]
5949 const _: () = {
5950 use alloy::sol_types as alloy_sol_types;
5951 {
5952 #[doc(hidden)]
5953 #[allow(dead_code)]
5954 type UnderlyingSolTuple<'a> = ();
5955 #[doc(hidden)]
5956 type UnderlyingRustTuple<'a> = ();
5957 #[cfg(test)]
5958 #[allow(dead_code, unreachable_patterns)]
5959 fn _type_assertion(
5960 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5961 ) {
5962 match _t {
5963 alloy_sol_types::private::AssertTypeEq::<
5964 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5965 >(_) => {}
5966 }
5967 }
5968 #[automatically_derived]
5969 #[doc(hidden)]
5970 impl ::core::convert::From<UPGRADE_INTERFACE_VERSIONCall>
5971 for UnderlyingRustTuple<'_> {
5972 fn from(value: UPGRADE_INTERFACE_VERSIONCall) -> Self {
5973 ()
5974 }
5975 }
5976 #[automatically_derived]
5977 #[doc(hidden)]
5978 impl ::core::convert::From<UnderlyingRustTuple<'_>>
5979 for UPGRADE_INTERFACE_VERSIONCall {
5980 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
5981 Self
5982 }
5983 }
5984 }
5985 {
5986 #[doc(hidden)]
5987 #[allow(dead_code)]
5988 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::String,);
5989 #[doc(hidden)]
5990 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::String,);
5991 #[cfg(test)]
5992 #[allow(dead_code, unreachable_patterns)]
5993 fn _type_assertion(
5994 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
5995 ) {
5996 match _t {
5997 alloy_sol_types::private::AssertTypeEq::<
5998 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
5999 >(_) => {}
6000 }
6001 }
6002 #[automatically_derived]
6003 #[doc(hidden)]
6004 impl ::core::convert::From<UPGRADE_INTERFACE_VERSIONReturn>
6005 for UnderlyingRustTuple<'_> {
6006 fn from(value: UPGRADE_INTERFACE_VERSIONReturn) -> Self {
6007 (value._0,)
6008 }
6009 }
6010 #[automatically_derived]
6011 #[doc(hidden)]
6012 impl ::core::convert::From<UnderlyingRustTuple<'_>>
6013 for UPGRADE_INTERFACE_VERSIONReturn {
6014 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6015 Self { _0: tuple.0 }
6016 }
6017 }
6018 }
6019 #[automatically_derived]
6020 impl alloy_sol_types::SolCall for UPGRADE_INTERFACE_VERSIONCall {
6021 type Parameters<'a> = ();
6022 type Token<'a> = <Self::Parameters<
6023 'a,
6024 > as alloy_sol_types::SolType>::Token<'a>;
6025 type Return = alloy::sol_types::private::String;
6026 type ReturnTuple<'a> = (alloy::sol_types::sol_data::String,);
6027 type ReturnToken<'a> = <Self::ReturnTuple<
6028 'a,
6029 > as alloy_sol_types::SolType>::Token<'a>;
6030 const SIGNATURE: &'static str = "UPGRADE_INTERFACE_VERSION()";
6031 const SELECTOR: [u8; 4] = [173u8, 60u8, 177u8, 204u8];
6032 #[inline]
6033 fn new<'a>(
6034 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6035 ) -> Self {
6036 tuple.into()
6037 }
6038 #[inline]
6039 fn tokenize(&self) -> Self::Token<'_> {
6040 ()
6041 }
6042 #[inline]
6043 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6044 (
6045 <alloy::sol_types::sol_data::String as alloy_sol_types::SolType>::tokenize(
6046 ret,
6047 ),
6048 )
6049 }
6050 #[inline]
6051 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6052 <Self::ReturnTuple<
6053 '_,
6054 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
6055 .map(|r| {
6056 let r: UPGRADE_INTERFACE_VERSIONReturn = r.into();
6057 r._0
6058 })
6059 }
6060 #[inline]
6061 fn abi_decode_returns_validate(
6062 data: &[u8],
6063 ) -> alloy_sol_types::Result<Self::Return> {
6064 <Self::ReturnTuple<
6065 '_,
6066 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6067 .map(|r| {
6068 let r: UPGRADE_INTERFACE_VERSIONReturn = r.into();
6069 r._0
6070 })
6071 }
6072 }
6073 };
6074 #[derive(serde::Serialize, serde::Deserialize)]
6075 #[derive()]
6076 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6081 #[derive(Clone)]
6082 pub struct _hashBlsKeyCall {
6083 #[allow(missing_docs)]
6084 pub blsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
6085 }
6086 #[derive(serde::Serialize, serde::Deserialize)]
6087 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6088 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6090 #[derive(Clone)]
6091 pub struct _hashBlsKeyReturn {
6092 #[allow(missing_docs)]
6093 pub _0: alloy::sol_types::private::FixedBytes<32>,
6094 }
6095 #[allow(
6096 non_camel_case_types,
6097 non_snake_case,
6098 clippy::pub_underscore_fields,
6099 clippy::style
6100 )]
6101 const _: () = {
6102 use alloy::sol_types as alloy_sol_types;
6103 {
6104 #[doc(hidden)]
6105 #[allow(dead_code)]
6106 type UnderlyingSolTuple<'a> = (BN254::G2Point,);
6107 #[doc(hidden)]
6108 type UnderlyingRustTuple<'a> = (
6109 <BN254::G2Point as alloy::sol_types::SolType>::RustType,
6110 );
6111 #[cfg(test)]
6112 #[allow(dead_code, unreachable_patterns)]
6113 fn _type_assertion(
6114 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6115 ) {
6116 match _t {
6117 alloy_sol_types::private::AssertTypeEq::<
6118 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6119 >(_) => {}
6120 }
6121 }
6122 #[automatically_derived]
6123 #[doc(hidden)]
6124 impl ::core::convert::From<_hashBlsKeyCall> for UnderlyingRustTuple<'_> {
6125 fn from(value: _hashBlsKeyCall) -> Self {
6126 (value.blsVK,)
6127 }
6128 }
6129 #[automatically_derived]
6130 #[doc(hidden)]
6131 impl ::core::convert::From<UnderlyingRustTuple<'_>> for _hashBlsKeyCall {
6132 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6133 Self { blsVK: tuple.0 }
6134 }
6135 }
6136 }
6137 {
6138 #[doc(hidden)]
6139 #[allow(dead_code)]
6140 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
6141 #[doc(hidden)]
6142 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
6143 #[cfg(test)]
6144 #[allow(dead_code, unreachable_patterns)]
6145 fn _type_assertion(
6146 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6147 ) {
6148 match _t {
6149 alloy_sol_types::private::AssertTypeEq::<
6150 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6151 >(_) => {}
6152 }
6153 }
6154 #[automatically_derived]
6155 #[doc(hidden)]
6156 impl ::core::convert::From<_hashBlsKeyReturn> for UnderlyingRustTuple<'_> {
6157 fn from(value: _hashBlsKeyReturn) -> Self {
6158 (value._0,)
6159 }
6160 }
6161 #[automatically_derived]
6162 #[doc(hidden)]
6163 impl ::core::convert::From<UnderlyingRustTuple<'_>> for _hashBlsKeyReturn {
6164 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6165 Self { _0: tuple.0 }
6166 }
6167 }
6168 }
6169 #[automatically_derived]
6170 impl alloy_sol_types::SolCall for _hashBlsKeyCall {
6171 type Parameters<'a> = (BN254::G2Point,);
6172 type Token<'a> = <Self::Parameters<
6173 'a,
6174 > as alloy_sol_types::SolType>::Token<'a>;
6175 type Return = alloy::sol_types::private::FixedBytes<32>;
6176 type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
6177 type ReturnToken<'a> = <Self::ReturnTuple<
6178 'a,
6179 > as alloy_sol_types::SolType>::Token<'a>;
6180 const SIGNATURE: &'static str = "_hashBlsKey((uint256,uint256,uint256,uint256))";
6181 const SELECTOR: [u8; 4] = [155u8, 48u8, 165u8, 230u8];
6182 #[inline]
6183 fn new<'a>(
6184 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6185 ) -> Self {
6186 tuple.into()
6187 }
6188 #[inline]
6189 fn tokenize(&self) -> Self::Token<'_> {
6190 (<BN254::G2Point as alloy_sol_types::SolType>::tokenize(&self.blsVK),)
6191 }
6192 #[inline]
6193 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6194 (
6195 <alloy::sol_types::sol_data::FixedBytes<
6196 32,
6197 > as alloy_sol_types::SolType>::tokenize(ret),
6198 )
6199 }
6200 #[inline]
6201 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6202 <Self::ReturnTuple<
6203 '_,
6204 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
6205 .map(|r| {
6206 let r: _hashBlsKeyReturn = r.into();
6207 r._0
6208 })
6209 }
6210 #[inline]
6211 fn abi_decode_returns_validate(
6212 data: &[u8],
6213 ) -> alloy_sol_types::Result<Self::Return> {
6214 <Self::ReturnTuple<
6215 '_,
6216 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6217 .map(|r| {
6218 let r: _hashBlsKeyReturn = r.into();
6219 r._0
6220 })
6221 }
6222 }
6223 };
6224 #[derive(serde::Serialize, serde::Deserialize)]
6225 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6226 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6231 #[derive(Clone)]
6232 pub struct blsKeysCall {
6233 #[allow(missing_docs)]
6234 pub blsKeyHash: alloy::sol_types::private::FixedBytes<32>,
6235 }
6236 #[derive(serde::Serialize, serde::Deserialize)]
6237 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6238 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6240 #[derive(Clone)]
6241 pub struct blsKeysReturn {
6242 #[allow(missing_docs)]
6243 pub used: bool,
6244 }
6245 #[allow(
6246 non_camel_case_types,
6247 non_snake_case,
6248 clippy::pub_underscore_fields,
6249 clippy::style
6250 )]
6251 const _: () = {
6252 use alloy::sol_types as alloy_sol_types;
6253 {
6254 #[doc(hidden)]
6255 #[allow(dead_code)]
6256 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
6257 #[doc(hidden)]
6258 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
6259 #[cfg(test)]
6260 #[allow(dead_code, unreachable_patterns)]
6261 fn _type_assertion(
6262 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6263 ) {
6264 match _t {
6265 alloy_sol_types::private::AssertTypeEq::<
6266 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6267 >(_) => {}
6268 }
6269 }
6270 #[automatically_derived]
6271 #[doc(hidden)]
6272 impl ::core::convert::From<blsKeysCall> for UnderlyingRustTuple<'_> {
6273 fn from(value: blsKeysCall) -> Self {
6274 (value.blsKeyHash,)
6275 }
6276 }
6277 #[automatically_derived]
6278 #[doc(hidden)]
6279 impl ::core::convert::From<UnderlyingRustTuple<'_>> for blsKeysCall {
6280 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6281 Self { blsKeyHash: tuple.0 }
6282 }
6283 }
6284 }
6285 {
6286 #[doc(hidden)]
6287 #[allow(dead_code)]
6288 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Bool,);
6289 #[doc(hidden)]
6290 type UnderlyingRustTuple<'a> = (bool,);
6291 #[cfg(test)]
6292 #[allow(dead_code, unreachable_patterns)]
6293 fn _type_assertion(
6294 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6295 ) {
6296 match _t {
6297 alloy_sol_types::private::AssertTypeEq::<
6298 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6299 >(_) => {}
6300 }
6301 }
6302 #[automatically_derived]
6303 #[doc(hidden)]
6304 impl ::core::convert::From<blsKeysReturn> for UnderlyingRustTuple<'_> {
6305 fn from(value: blsKeysReturn) -> Self {
6306 (value.used,)
6307 }
6308 }
6309 #[automatically_derived]
6310 #[doc(hidden)]
6311 impl ::core::convert::From<UnderlyingRustTuple<'_>> for blsKeysReturn {
6312 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6313 Self { used: tuple.0 }
6314 }
6315 }
6316 }
6317 #[automatically_derived]
6318 impl alloy_sol_types::SolCall for blsKeysCall {
6319 type Parameters<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
6320 type Token<'a> = <Self::Parameters<
6321 'a,
6322 > as alloy_sol_types::SolType>::Token<'a>;
6323 type Return = bool;
6324 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Bool,);
6325 type ReturnToken<'a> = <Self::ReturnTuple<
6326 'a,
6327 > as alloy_sol_types::SolType>::Token<'a>;
6328 const SIGNATURE: &'static str = "blsKeys(bytes32)";
6329 const SELECTOR: [u8; 4] = [179u8, 230u8, 235u8, 213u8];
6330 #[inline]
6331 fn new<'a>(
6332 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6333 ) -> Self {
6334 tuple.into()
6335 }
6336 #[inline]
6337 fn tokenize(&self) -> Self::Token<'_> {
6338 (
6339 <alloy::sol_types::sol_data::FixedBytes<
6340 32,
6341 > as alloy_sol_types::SolType>::tokenize(&self.blsKeyHash),
6342 )
6343 }
6344 #[inline]
6345 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6346 (
6347 <alloy::sol_types::sol_data::Bool as alloy_sol_types::SolType>::tokenize(
6348 ret,
6349 ),
6350 )
6351 }
6352 #[inline]
6353 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6354 <Self::ReturnTuple<
6355 '_,
6356 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
6357 .map(|r| {
6358 let r: blsKeysReturn = r.into();
6359 r.used
6360 })
6361 }
6362 #[inline]
6363 fn abi_decode_returns_validate(
6364 data: &[u8],
6365 ) -> alloy_sol_types::Result<Self::Return> {
6366 <Self::ReturnTuple<
6367 '_,
6368 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6369 .map(|r| {
6370 let r: blsKeysReturn = r.into();
6371 r.used
6372 })
6373 }
6374 }
6375 };
6376 #[derive(serde::Serialize, serde::Deserialize)]
6377 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6378 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6383 #[derive(Clone)]
6384 pub struct claimValidatorExitCall {
6385 #[allow(missing_docs)]
6386 pub validator: alloy::sol_types::private::Address,
6387 }
6388 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6390 #[derive(Clone)]
6391 pub struct claimValidatorExitReturn {}
6392 #[allow(
6393 non_camel_case_types,
6394 non_snake_case,
6395 clippy::pub_underscore_fields,
6396 clippy::style
6397 )]
6398 const _: () = {
6399 use alloy::sol_types as alloy_sol_types;
6400 {
6401 #[doc(hidden)]
6402 #[allow(dead_code)]
6403 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
6404 #[doc(hidden)]
6405 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
6406 #[cfg(test)]
6407 #[allow(dead_code, unreachable_patterns)]
6408 fn _type_assertion(
6409 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6410 ) {
6411 match _t {
6412 alloy_sol_types::private::AssertTypeEq::<
6413 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6414 >(_) => {}
6415 }
6416 }
6417 #[automatically_derived]
6418 #[doc(hidden)]
6419 impl ::core::convert::From<claimValidatorExitCall>
6420 for UnderlyingRustTuple<'_> {
6421 fn from(value: claimValidatorExitCall) -> Self {
6422 (value.validator,)
6423 }
6424 }
6425 #[automatically_derived]
6426 #[doc(hidden)]
6427 impl ::core::convert::From<UnderlyingRustTuple<'_>>
6428 for claimValidatorExitCall {
6429 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6430 Self { validator: tuple.0 }
6431 }
6432 }
6433 }
6434 {
6435 #[doc(hidden)]
6436 #[allow(dead_code)]
6437 type UnderlyingSolTuple<'a> = ();
6438 #[doc(hidden)]
6439 type UnderlyingRustTuple<'a> = ();
6440 #[cfg(test)]
6441 #[allow(dead_code, unreachable_patterns)]
6442 fn _type_assertion(
6443 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6444 ) {
6445 match _t {
6446 alloy_sol_types::private::AssertTypeEq::<
6447 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6448 >(_) => {}
6449 }
6450 }
6451 #[automatically_derived]
6452 #[doc(hidden)]
6453 impl ::core::convert::From<claimValidatorExitReturn>
6454 for UnderlyingRustTuple<'_> {
6455 fn from(value: claimValidatorExitReturn) -> Self {
6456 ()
6457 }
6458 }
6459 #[automatically_derived]
6460 #[doc(hidden)]
6461 impl ::core::convert::From<UnderlyingRustTuple<'_>>
6462 for claimValidatorExitReturn {
6463 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6464 Self {}
6465 }
6466 }
6467 }
6468 impl claimValidatorExitReturn {
6469 fn _tokenize(
6470 &self,
6471 ) -> <claimValidatorExitCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
6472 ()
6473 }
6474 }
6475 #[automatically_derived]
6476 impl alloy_sol_types::SolCall for claimValidatorExitCall {
6477 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
6478 type Token<'a> = <Self::Parameters<
6479 'a,
6480 > as alloy_sol_types::SolType>::Token<'a>;
6481 type Return = claimValidatorExitReturn;
6482 type ReturnTuple<'a> = ();
6483 type ReturnToken<'a> = <Self::ReturnTuple<
6484 'a,
6485 > as alloy_sol_types::SolType>::Token<'a>;
6486 const SIGNATURE: &'static str = "claimValidatorExit(address)";
6487 const SELECTOR: [u8; 4] = [33u8, 64u8, 254u8, 205u8];
6488 #[inline]
6489 fn new<'a>(
6490 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6491 ) -> Self {
6492 tuple.into()
6493 }
6494 #[inline]
6495 fn tokenize(&self) -> Self::Token<'_> {
6496 (
6497 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6498 &self.validator,
6499 ),
6500 )
6501 }
6502 #[inline]
6503 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6504 claimValidatorExitReturn::_tokenize(ret)
6505 }
6506 #[inline]
6507 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6508 <Self::ReturnTuple<
6509 '_,
6510 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
6511 .map(Into::into)
6512 }
6513 #[inline]
6514 fn abi_decode_returns_validate(
6515 data: &[u8],
6516 ) -> alloy_sol_types::Result<Self::Return> {
6517 <Self::ReturnTuple<
6518 '_,
6519 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6520 .map(Into::into)
6521 }
6522 }
6523 };
6524 #[derive(serde::Serialize, serde::Deserialize)]
6525 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6526 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6531 #[derive(Clone)]
6532 pub struct claimWithdrawalCall {
6533 #[allow(missing_docs)]
6534 pub validator: alloy::sol_types::private::Address,
6535 }
6536 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6538 #[derive(Clone)]
6539 pub struct claimWithdrawalReturn {}
6540 #[allow(
6541 non_camel_case_types,
6542 non_snake_case,
6543 clippy::pub_underscore_fields,
6544 clippy::style
6545 )]
6546 const _: () = {
6547 use alloy::sol_types as alloy_sol_types;
6548 {
6549 #[doc(hidden)]
6550 #[allow(dead_code)]
6551 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
6552 #[doc(hidden)]
6553 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
6554 #[cfg(test)]
6555 #[allow(dead_code, unreachable_patterns)]
6556 fn _type_assertion(
6557 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6558 ) {
6559 match _t {
6560 alloy_sol_types::private::AssertTypeEq::<
6561 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6562 >(_) => {}
6563 }
6564 }
6565 #[automatically_derived]
6566 #[doc(hidden)]
6567 impl ::core::convert::From<claimWithdrawalCall> for UnderlyingRustTuple<'_> {
6568 fn from(value: claimWithdrawalCall) -> Self {
6569 (value.validator,)
6570 }
6571 }
6572 #[automatically_derived]
6573 #[doc(hidden)]
6574 impl ::core::convert::From<UnderlyingRustTuple<'_>> for claimWithdrawalCall {
6575 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6576 Self { validator: tuple.0 }
6577 }
6578 }
6579 }
6580 {
6581 #[doc(hidden)]
6582 #[allow(dead_code)]
6583 type UnderlyingSolTuple<'a> = ();
6584 #[doc(hidden)]
6585 type UnderlyingRustTuple<'a> = ();
6586 #[cfg(test)]
6587 #[allow(dead_code, unreachable_patterns)]
6588 fn _type_assertion(
6589 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6590 ) {
6591 match _t {
6592 alloy_sol_types::private::AssertTypeEq::<
6593 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6594 >(_) => {}
6595 }
6596 }
6597 #[automatically_derived]
6598 #[doc(hidden)]
6599 impl ::core::convert::From<claimWithdrawalReturn>
6600 for UnderlyingRustTuple<'_> {
6601 fn from(value: claimWithdrawalReturn) -> Self {
6602 ()
6603 }
6604 }
6605 #[automatically_derived]
6606 #[doc(hidden)]
6607 impl ::core::convert::From<UnderlyingRustTuple<'_>>
6608 for claimWithdrawalReturn {
6609 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6610 Self {}
6611 }
6612 }
6613 }
6614 impl claimWithdrawalReturn {
6615 fn _tokenize(
6616 &self,
6617 ) -> <claimWithdrawalCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
6618 ()
6619 }
6620 }
6621 #[automatically_derived]
6622 impl alloy_sol_types::SolCall for claimWithdrawalCall {
6623 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
6624 type Token<'a> = <Self::Parameters<
6625 'a,
6626 > as alloy_sol_types::SolType>::Token<'a>;
6627 type Return = claimWithdrawalReturn;
6628 type ReturnTuple<'a> = ();
6629 type ReturnToken<'a> = <Self::ReturnTuple<
6630 'a,
6631 > as alloy_sol_types::SolType>::Token<'a>;
6632 const SIGNATURE: &'static str = "claimWithdrawal(address)";
6633 const SELECTOR: [u8; 4] = [163u8, 6u8, 106u8, 171u8];
6634 #[inline]
6635 fn new<'a>(
6636 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6637 ) -> Self {
6638 tuple.into()
6639 }
6640 #[inline]
6641 fn tokenize(&self) -> Self::Token<'_> {
6642 (
6643 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6644 &self.validator,
6645 ),
6646 )
6647 }
6648 #[inline]
6649 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6650 claimWithdrawalReturn::_tokenize(ret)
6651 }
6652 #[inline]
6653 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6654 <Self::ReturnTuple<
6655 '_,
6656 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
6657 .map(Into::into)
6658 }
6659 #[inline]
6660 fn abi_decode_returns_validate(
6661 data: &[u8],
6662 ) -> alloy_sol_types::Result<Self::Return> {
6663 <Self::ReturnTuple<
6664 '_,
6665 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6666 .map(Into::into)
6667 }
6668 }
6669 };
6670 #[derive(serde::Serialize, serde::Deserialize)]
6671 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6672 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6677 #[derive(Clone)]
6678 pub struct delegateCall {
6679 #[allow(missing_docs)]
6680 pub validator: alloy::sol_types::private::Address,
6681 #[allow(missing_docs)]
6682 pub amount: alloy::sol_types::private::primitives::aliases::U256,
6683 }
6684 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6686 #[derive(Clone)]
6687 pub struct delegateReturn {}
6688 #[allow(
6689 non_camel_case_types,
6690 non_snake_case,
6691 clippy::pub_underscore_fields,
6692 clippy::style
6693 )]
6694 const _: () = {
6695 use alloy::sol_types as alloy_sol_types;
6696 {
6697 #[doc(hidden)]
6698 #[allow(dead_code)]
6699 type UnderlyingSolTuple<'a> = (
6700 alloy::sol_types::sol_data::Address,
6701 alloy::sol_types::sol_data::Uint<256>,
6702 );
6703 #[doc(hidden)]
6704 type UnderlyingRustTuple<'a> = (
6705 alloy::sol_types::private::Address,
6706 alloy::sol_types::private::primitives::aliases::U256,
6707 );
6708 #[cfg(test)]
6709 #[allow(dead_code, unreachable_patterns)]
6710 fn _type_assertion(
6711 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6712 ) {
6713 match _t {
6714 alloy_sol_types::private::AssertTypeEq::<
6715 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6716 >(_) => {}
6717 }
6718 }
6719 #[automatically_derived]
6720 #[doc(hidden)]
6721 impl ::core::convert::From<delegateCall> for UnderlyingRustTuple<'_> {
6722 fn from(value: delegateCall) -> Self {
6723 (value.validator, value.amount)
6724 }
6725 }
6726 #[automatically_derived]
6727 #[doc(hidden)]
6728 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegateCall {
6729 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6730 Self {
6731 validator: tuple.0,
6732 amount: tuple.1,
6733 }
6734 }
6735 }
6736 }
6737 {
6738 #[doc(hidden)]
6739 #[allow(dead_code)]
6740 type UnderlyingSolTuple<'a> = ();
6741 #[doc(hidden)]
6742 type UnderlyingRustTuple<'a> = ();
6743 #[cfg(test)]
6744 #[allow(dead_code, unreachable_patterns)]
6745 fn _type_assertion(
6746 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6747 ) {
6748 match _t {
6749 alloy_sol_types::private::AssertTypeEq::<
6750 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6751 >(_) => {}
6752 }
6753 }
6754 #[automatically_derived]
6755 #[doc(hidden)]
6756 impl ::core::convert::From<delegateReturn> for UnderlyingRustTuple<'_> {
6757 fn from(value: delegateReturn) -> Self {
6758 ()
6759 }
6760 }
6761 #[automatically_derived]
6762 #[doc(hidden)]
6763 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegateReturn {
6764 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6765 Self {}
6766 }
6767 }
6768 }
6769 impl delegateReturn {
6770 fn _tokenize(
6771 &self,
6772 ) -> <delegateCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
6773 ()
6774 }
6775 }
6776 #[automatically_derived]
6777 impl alloy_sol_types::SolCall for delegateCall {
6778 type Parameters<'a> = (
6779 alloy::sol_types::sol_data::Address,
6780 alloy::sol_types::sol_data::Uint<256>,
6781 );
6782 type Token<'a> = <Self::Parameters<
6783 'a,
6784 > as alloy_sol_types::SolType>::Token<'a>;
6785 type Return = delegateReturn;
6786 type ReturnTuple<'a> = ();
6787 type ReturnToken<'a> = <Self::ReturnTuple<
6788 'a,
6789 > as alloy_sol_types::SolType>::Token<'a>;
6790 const SIGNATURE: &'static str = "delegate(address,uint256)";
6791 const SELECTOR: [u8; 4] = [2u8, 110u8, 64u8, 43u8];
6792 #[inline]
6793 fn new<'a>(
6794 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6795 ) -> Self {
6796 tuple.into()
6797 }
6798 #[inline]
6799 fn tokenize(&self) -> Self::Token<'_> {
6800 (
6801 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6802 &self.validator,
6803 ),
6804 <alloy::sol_types::sol_data::Uint<
6805 256,
6806 > as alloy_sol_types::SolType>::tokenize(&self.amount),
6807 )
6808 }
6809 #[inline]
6810 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6811 delegateReturn::_tokenize(ret)
6812 }
6813 #[inline]
6814 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6815 <Self::ReturnTuple<
6816 '_,
6817 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
6818 .map(Into::into)
6819 }
6820 #[inline]
6821 fn abi_decode_returns_validate(
6822 data: &[u8],
6823 ) -> alloy_sol_types::Result<Self::Return> {
6824 <Self::ReturnTuple<
6825 '_,
6826 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6827 .map(Into::into)
6828 }
6829 }
6830 };
6831 #[derive(serde::Serialize, serde::Deserialize)]
6832 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6833 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6838 #[derive(Clone)]
6839 pub struct delegationsCall {
6840 #[allow(missing_docs)]
6841 pub validator: alloy::sol_types::private::Address,
6842 #[allow(missing_docs)]
6843 pub delegator: alloy::sol_types::private::Address,
6844 }
6845 #[derive(serde::Serialize, serde::Deserialize)]
6846 #[derive(Default, Debug, PartialEq, Eq, Hash)]
6847 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
6849 #[derive(Clone)]
6850 pub struct delegationsReturn {
6851 #[allow(missing_docs)]
6852 pub amount: alloy::sol_types::private::primitives::aliases::U256,
6853 }
6854 #[allow(
6855 non_camel_case_types,
6856 non_snake_case,
6857 clippy::pub_underscore_fields,
6858 clippy::style
6859 )]
6860 const _: () = {
6861 use alloy::sol_types as alloy_sol_types;
6862 {
6863 #[doc(hidden)]
6864 #[allow(dead_code)]
6865 type UnderlyingSolTuple<'a> = (
6866 alloy::sol_types::sol_data::Address,
6867 alloy::sol_types::sol_data::Address,
6868 );
6869 #[doc(hidden)]
6870 type UnderlyingRustTuple<'a> = (
6871 alloy::sol_types::private::Address,
6872 alloy::sol_types::private::Address,
6873 );
6874 #[cfg(test)]
6875 #[allow(dead_code, unreachable_patterns)]
6876 fn _type_assertion(
6877 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6878 ) {
6879 match _t {
6880 alloy_sol_types::private::AssertTypeEq::<
6881 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6882 >(_) => {}
6883 }
6884 }
6885 #[automatically_derived]
6886 #[doc(hidden)]
6887 impl ::core::convert::From<delegationsCall> for UnderlyingRustTuple<'_> {
6888 fn from(value: delegationsCall) -> Self {
6889 (value.validator, value.delegator)
6890 }
6891 }
6892 #[automatically_derived]
6893 #[doc(hidden)]
6894 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegationsCall {
6895 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6896 Self {
6897 validator: tuple.0,
6898 delegator: tuple.1,
6899 }
6900 }
6901 }
6902 }
6903 {
6904 #[doc(hidden)]
6905 #[allow(dead_code)]
6906 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6907 #[doc(hidden)]
6908 type UnderlyingRustTuple<'a> = (
6909 alloy::sol_types::private::primitives::aliases::U256,
6910 );
6911 #[cfg(test)]
6912 #[allow(dead_code, unreachable_patterns)]
6913 fn _type_assertion(
6914 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
6915 ) {
6916 match _t {
6917 alloy_sol_types::private::AssertTypeEq::<
6918 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
6919 >(_) => {}
6920 }
6921 }
6922 #[automatically_derived]
6923 #[doc(hidden)]
6924 impl ::core::convert::From<delegationsReturn> for UnderlyingRustTuple<'_> {
6925 fn from(value: delegationsReturn) -> Self {
6926 (value.amount,)
6927 }
6928 }
6929 #[automatically_derived]
6930 #[doc(hidden)]
6931 impl ::core::convert::From<UnderlyingRustTuple<'_>> for delegationsReturn {
6932 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
6933 Self { amount: tuple.0 }
6934 }
6935 }
6936 }
6937 #[automatically_derived]
6938 impl alloy_sol_types::SolCall for delegationsCall {
6939 type Parameters<'a> = (
6940 alloy::sol_types::sol_data::Address,
6941 alloy::sol_types::sol_data::Address,
6942 );
6943 type Token<'a> = <Self::Parameters<
6944 'a,
6945 > as alloy_sol_types::SolType>::Token<'a>;
6946 type Return = alloy::sol_types::private::primitives::aliases::U256;
6947 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
6948 type ReturnToken<'a> = <Self::ReturnTuple<
6949 'a,
6950 > as alloy_sol_types::SolType>::Token<'a>;
6951 const SIGNATURE: &'static str = "delegations(address,address)";
6952 const SELECTOR: [u8; 4] = [198u8, 72u8, 20u8, 221u8];
6953 #[inline]
6954 fn new<'a>(
6955 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
6956 ) -> Self {
6957 tuple.into()
6958 }
6959 #[inline]
6960 fn tokenize(&self) -> Self::Token<'_> {
6961 (
6962 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6963 &self.validator,
6964 ),
6965 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
6966 &self.delegator,
6967 ),
6968 )
6969 }
6970 #[inline]
6971 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
6972 (
6973 <alloy::sol_types::sol_data::Uint<
6974 256,
6975 > as alloy_sol_types::SolType>::tokenize(ret),
6976 )
6977 }
6978 #[inline]
6979 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
6980 <Self::ReturnTuple<
6981 '_,
6982 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
6983 .map(|r| {
6984 let r: delegationsReturn = r.into();
6985 r.amount
6986 })
6987 }
6988 #[inline]
6989 fn abi_decode_returns_validate(
6990 data: &[u8],
6991 ) -> alloy_sol_types::Result<Self::Return> {
6992 <Self::ReturnTuple<
6993 '_,
6994 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
6995 .map(|r| {
6996 let r: delegationsReturn = r.into();
6997 r.amount
6998 })
6999 }
7000 }
7001 };
7002 #[derive(serde::Serialize, serde::Deserialize)]
7003 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7004 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7009 #[derive(Clone)]
7010 pub struct deregisterValidatorCall;
7011 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7013 #[derive(Clone)]
7014 pub struct deregisterValidatorReturn {}
7015 #[allow(
7016 non_camel_case_types,
7017 non_snake_case,
7018 clippy::pub_underscore_fields,
7019 clippy::style
7020 )]
7021 const _: () = {
7022 use alloy::sol_types as alloy_sol_types;
7023 {
7024 #[doc(hidden)]
7025 #[allow(dead_code)]
7026 type UnderlyingSolTuple<'a> = ();
7027 #[doc(hidden)]
7028 type UnderlyingRustTuple<'a> = ();
7029 #[cfg(test)]
7030 #[allow(dead_code, unreachable_patterns)]
7031 fn _type_assertion(
7032 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7033 ) {
7034 match _t {
7035 alloy_sol_types::private::AssertTypeEq::<
7036 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7037 >(_) => {}
7038 }
7039 }
7040 #[automatically_derived]
7041 #[doc(hidden)]
7042 impl ::core::convert::From<deregisterValidatorCall>
7043 for UnderlyingRustTuple<'_> {
7044 fn from(value: deregisterValidatorCall) -> Self {
7045 ()
7046 }
7047 }
7048 #[automatically_derived]
7049 #[doc(hidden)]
7050 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7051 for deregisterValidatorCall {
7052 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7053 Self
7054 }
7055 }
7056 }
7057 {
7058 #[doc(hidden)]
7059 #[allow(dead_code)]
7060 type UnderlyingSolTuple<'a> = ();
7061 #[doc(hidden)]
7062 type UnderlyingRustTuple<'a> = ();
7063 #[cfg(test)]
7064 #[allow(dead_code, unreachable_patterns)]
7065 fn _type_assertion(
7066 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7067 ) {
7068 match _t {
7069 alloy_sol_types::private::AssertTypeEq::<
7070 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7071 >(_) => {}
7072 }
7073 }
7074 #[automatically_derived]
7075 #[doc(hidden)]
7076 impl ::core::convert::From<deregisterValidatorReturn>
7077 for UnderlyingRustTuple<'_> {
7078 fn from(value: deregisterValidatorReturn) -> Self {
7079 ()
7080 }
7081 }
7082 #[automatically_derived]
7083 #[doc(hidden)]
7084 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7085 for deregisterValidatorReturn {
7086 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7087 Self {}
7088 }
7089 }
7090 }
7091 impl deregisterValidatorReturn {
7092 fn _tokenize(
7093 &self,
7094 ) -> <deregisterValidatorCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
7095 ()
7096 }
7097 }
7098 #[automatically_derived]
7099 impl alloy_sol_types::SolCall for deregisterValidatorCall {
7100 type Parameters<'a> = ();
7101 type Token<'a> = <Self::Parameters<
7102 'a,
7103 > as alloy_sol_types::SolType>::Token<'a>;
7104 type Return = deregisterValidatorReturn;
7105 type ReturnTuple<'a> = ();
7106 type ReturnToken<'a> = <Self::ReturnTuple<
7107 'a,
7108 > as alloy_sol_types::SolType>::Token<'a>;
7109 const SIGNATURE: &'static str = "deregisterValidator()";
7110 const SELECTOR: [u8; 4] = [106u8, 145u8, 28u8, 207u8];
7111 #[inline]
7112 fn new<'a>(
7113 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7114 ) -> Self {
7115 tuple.into()
7116 }
7117 #[inline]
7118 fn tokenize(&self) -> Self::Token<'_> {
7119 ()
7120 }
7121 #[inline]
7122 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7123 deregisterValidatorReturn::_tokenize(ret)
7124 }
7125 #[inline]
7126 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7127 <Self::ReturnTuple<
7128 '_,
7129 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7130 .map(Into::into)
7131 }
7132 #[inline]
7133 fn abi_decode_returns_validate(
7134 data: &[u8],
7135 ) -> alloy_sol_types::Result<Self::Return> {
7136 <Self::ReturnTuple<
7137 '_,
7138 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
7139 .map(Into::into)
7140 }
7141 }
7142 };
7143 #[derive(serde::Serialize, serde::Deserialize)]
7144 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7145 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7150 #[derive(Clone)]
7151 pub struct exitEscrowPeriodCall;
7152 #[derive(serde::Serialize, serde::Deserialize)]
7153 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7154 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7156 #[derive(Clone)]
7157 pub struct exitEscrowPeriodReturn {
7158 #[allow(missing_docs)]
7159 pub _0: alloy::sol_types::private::primitives::aliases::U256,
7160 }
7161 #[allow(
7162 non_camel_case_types,
7163 non_snake_case,
7164 clippy::pub_underscore_fields,
7165 clippy::style
7166 )]
7167 const _: () = {
7168 use alloy::sol_types as alloy_sol_types;
7169 {
7170 #[doc(hidden)]
7171 #[allow(dead_code)]
7172 type UnderlyingSolTuple<'a> = ();
7173 #[doc(hidden)]
7174 type UnderlyingRustTuple<'a> = ();
7175 #[cfg(test)]
7176 #[allow(dead_code, unreachable_patterns)]
7177 fn _type_assertion(
7178 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7179 ) {
7180 match _t {
7181 alloy_sol_types::private::AssertTypeEq::<
7182 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7183 >(_) => {}
7184 }
7185 }
7186 #[automatically_derived]
7187 #[doc(hidden)]
7188 impl ::core::convert::From<exitEscrowPeriodCall>
7189 for UnderlyingRustTuple<'_> {
7190 fn from(value: exitEscrowPeriodCall) -> Self {
7191 ()
7192 }
7193 }
7194 #[automatically_derived]
7195 #[doc(hidden)]
7196 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7197 for exitEscrowPeriodCall {
7198 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7199 Self
7200 }
7201 }
7202 }
7203 {
7204 #[doc(hidden)]
7205 #[allow(dead_code)]
7206 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
7207 #[doc(hidden)]
7208 type UnderlyingRustTuple<'a> = (
7209 alloy::sol_types::private::primitives::aliases::U256,
7210 );
7211 #[cfg(test)]
7212 #[allow(dead_code, unreachable_patterns)]
7213 fn _type_assertion(
7214 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7215 ) {
7216 match _t {
7217 alloy_sol_types::private::AssertTypeEq::<
7218 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7219 >(_) => {}
7220 }
7221 }
7222 #[automatically_derived]
7223 #[doc(hidden)]
7224 impl ::core::convert::From<exitEscrowPeriodReturn>
7225 for UnderlyingRustTuple<'_> {
7226 fn from(value: exitEscrowPeriodReturn) -> Self {
7227 (value._0,)
7228 }
7229 }
7230 #[automatically_derived]
7231 #[doc(hidden)]
7232 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7233 for exitEscrowPeriodReturn {
7234 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7235 Self { _0: tuple.0 }
7236 }
7237 }
7238 }
7239 #[automatically_derived]
7240 impl alloy_sol_types::SolCall for exitEscrowPeriodCall {
7241 type Parameters<'a> = ();
7242 type Token<'a> = <Self::Parameters<
7243 'a,
7244 > as alloy_sol_types::SolType>::Token<'a>;
7245 type Return = alloy::sol_types::private::primitives::aliases::U256;
7246 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
7247 type ReturnToken<'a> = <Self::ReturnTuple<
7248 'a,
7249 > as alloy_sol_types::SolType>::Token<'a>;
7250 const SIGNATURE: &'static str = "exitEscrowPeriod()";
7251 const SELECTOR: [u8; 4] = [158u8, 154u8, 143u8, 49u8];
7252 #[inline]
7253 fn new<'a>(
7254 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7255 ) -> Self {
7256 tuple.into()
7257 }
7258 #[inline]
7259 fn tokenize(&self) -> Self::Token<'_> {
7260 ()
7261 }
7262 #[inline]
7263 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7264 (
7265 <alloy::sol_types::sol_data::Uint<
7266 256,
7267 > as alloy_sol_types::SolType>::tokenize(ret),
7268 )
7269 }
7270 #[inline]
7271 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7272 <Self::ReturnTuple<
7273 '_,
7274 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7275 .map(|r| {
7276 let r: exitEscrowPeriodReturn = r.into();
7277 r._0
7278 })
7279 }
7280 #[inline]
7281 fn abi_decode_returns_validate(
7282 data: &[u8],
7283 ) -> alloy_sol_types::Result<Self::Return> {
7284 <Self::ReturnTuple<
7285 '_,
7286 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
7287 .map(|r| {
7288 let r: exitEscrowPeriodReturn = r.into();
7289 r._0
7290 })
7291 }
7292 }
7293 };
7294 #[derive(serde::Serialize, serde::Deserialize)]
7295 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7296 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7301 #[derive(Clone)]
7302 pub struct getVersionCall;
7303 #[derive(serde::Serialize, serde::Deserialize)]
7304 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7305 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7307 #[derive(Clone)]
7308 pub struct getVersionReturn {
7309 #[allow(missing_docs)]
7310 pub majorVersion: u8,
7311 #[allow(missing_docs)]
7312 pub minorVersion: u8,
7313 #[allow(missing_docs)]
7314 pub patchVersion: u8,
7315 }
7316 #[allow(
7317 non_camel_case_types,
7318 non_snake_case,
7319 clippy::pub_underscore_fields,
7320 clippy::style
7321 )]
7322 const _: () = {
7323 use alloy::sol_types as alloy_sol_types;
7324 {
7325 #[doc(hidden)]
7326 #[allow(dead_code)]
7327 type UnderlyingSolTuple<'a> = ();
7328 #[doc(hidden)]
7329 type UnderlyingRustTuple<'a> = ();
7330 #[cfg(test)]
7331 #[allow(dead_code, unreachable_patterns)]
7332 fn _type_assertion(
7333 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7334 ) {
7335 match _t {
7336 alloy_sol_types::private::AssertTypeEq::<
7337 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7338 >(_) => {}
7339 }
7340 }
7341 #[automatically_derived]
7342 #[doc(hidden)]
7343 impl ::core::convert::From<getVersionCall> for UnderlyingRustTuple<'_> {
7344 fn from(value: getVersionCall) -> Self {
7345 ()
7346 }
7347 }
7348 #[automatically_derived]
7349 #[doc(hidden)]
7350 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getVersionCall {
7351 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7352 Self
7353 }
7354 }
7355 }
7356 {
7357 #[doc(hidden)]
7358 #[allow(dead_code)]
7359 type UnderlyingSolTuple<'a> = (
7360 alloy::sol_types::sol_data::Uint<8>,
7361 alloy::sol_types::sol_data::Uint<8>,
7362 alloy::sol_types::sol_data::Uint<8>,
7363 );
7364 #[doc(hidden)]
7365 type UnderlyingRustTuple<'a> = (u8, u8, u8);
7366 #[cfg(test)]
7367 #[allow(dead_code, unreachable_patterns)]
7368 fn _type_assertion(
7369 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7370 ) {
7371 match _t {
7372 alloy_sol_types::private::AssertTypeEq::<
7373 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7374 >(_) => {}
7375 }
7376 }
7377 #[automatically_derived]
7378 #[doc(hidden)]
7379 impl ::core::convert::From<getVersionReturn> for UnderlyingRustTuple<'_> {
7380 fn from(value: getVersionReturn) -> Self {
7381 (value.majorVersion, value.minorVersion, value.patchVersion)
7382 }
7383 }
7384 #[automatically_derived]
7385 #[doc(hidden)]
7386 impl ::core::convert::From<UnderlyingRustTuple<'_>> for getVersionReturn {
7387 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7388 Self {
7389 majorVersion: tuple.0,
7390 minorVersion: tuple.1,
7391 patchVersion: tuple.2,
7392 }
7393 }
7394 }
7395 }
7396 impl getVersionReturn {
7397 fn _tokenize(
7398 &self,
7399 ) -> <getVersionCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
7400 (
7401 <alloy::sol_types::sol_data::Uint<
7402 8,
7403 > as alloy_sol_types::SolType>::tokenize(&self.majorVersion),
7404 <alloy::sol_types::sol_data::Uint<
7405 8,
7406 > as alloy_sol_types::SolType>::tokenize(&self.minorVersion),
7407 <alloy::sol_types::sol_data::Uint<
7408 8,
7409 > as alloy_sol_types::SolType>::tokenize(&self.patchVersion),
7410 )
7411 }
7412 }
7413 #[automatically_derived]
7414 impl alloy_sol_types::SolCall for getVersionCall {
7415 type Parameters<'a> = ();
7416 type Token<'a> = <Self::Parameters<
7417 'a,
7418 > as alloy_sol_types::SolType>::Token<'a>;
7419 type Return = getVersionReturn;
7420 type ReturnTuple<'a> = (
7421 alloy::sol_types::sol_data::Uint<8>,
7422 alloy::sol_types::sol_data::Uint<8>,
7423 alloy::sol_types::sol_data::Uint<8>,
7424 );
7425 type ReturnToken<'a> = <Self::ReturnTuple<
7426 'a,
7427 > as alloy_sol_types::SolType>::Token<'a>;
7428 const SIGNATURE: &'static str = "getVersion()";
7429 const SELECTOR: [u8; 4] = [13u8, 142u8, 110u8, 44u8];
7430 #[inline]
7431 fn new<'a>(
7432 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7433 ) -> Self {
7434 tuple.into()
7435 }
7436 #[inline]
7437 fn tokenize(&self) -> Self::Token<'_> {
7438 ()
7439 }
7440 #[inline]
7441 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7442 getVersionReturn::_tokenize(ret)
7443 }
7444 #[inline]
7445 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7446 <Self::ReturnTuple<
7447 '_,
7448 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7449 .map(Into::into)
7450 }
7451 #[inline]
7452 fn abi_decode_returns_validate(
7453 data: &[u8],
7454 ) -> alloy_sol_types::Result<Self::Return> {
7455 <Self::ReturnTuple<
7456 '_,
7457 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
7458 .map(Into::into)
7459 }
7460 }
7461 };
7462 #[derive(serde::Serialize, serde::Deserialize)]
7463 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7464 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7469 #[derive(Clone)]
7470 pub struct initializeCall {
7471 #[allow(missing_docs)]
7472 pub _tokenAddress: alloy::sol_types::private::Address,
7473 #[allow(missing_docs)]
7474 pub _lightClientAddress: alloy::sol_types::private::Address,
7475 #[allow(missing_docs)]
7476 pub _exitEscrowPeriod: alloy::sol_types::private::primitives::aliases::U256,
7477 #[allow(missing_docs)]
7478 pub _timelock: alloy::sol_types::private::Address,
7479 }
7480 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7482 #[derive(Clone)]
7483 pub struct initializeReturn {}
7484 #[allow(
7485 non_camel_case_types,
7486 non_snake_case,
7487 clippy::pub_underscore_fields,
7488 clippy::style
7489 )]
7490 const _: () = {
7491 use alloy::sol_types as alloy_sol_types;
7492 {
7493 #[doc(hidden)]
7494 #[allow(dead_code)]
7495 type UnderlyingSolTuple<'a> = (
7496 alloy::sol_types::sol_data::Address,
7497 alloy::sol_types::sol_data::Address,
7498 alloy::sol_types::sol_data::Uint<256>,
7499 alloy::sol_types::sol_data::Address,
7500 );
7501 #[doc(hidden)]
7502 type UnderlyingRustTuple<'a> = (
7503 alloy::sol_types::private::Address,
7504 alloy::sol_types::private::Address,
7505 alloy::sol_types::private::primitives::aliases::U256,
7506 alloy::sol_types::private::Address,
7507 );
7508 #[cfg(test)]
7509 #[allow(dead_code, unreachable_patterns)]
7510 fn _type_assertion(
7511 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7512 ) {
7513 match _t {
7514 alloy_sol_types::private::AssertTypeEq::<
7515 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7516 >(_) => {}
7517 }
7518 }
7519 #[automatically_derived]
7520 #[doc(hidden)]
7521 impl ::core::convert::From<initializeCall> for UnderlyingRustTuple<'_> {
7522 fn from(value: initializeCall) -> Self {
7523 (
7524 value._tokenAddress,
7525 value._lightClientAddress,
7526 value._exitEscrowPeriod,
7527 value._timelock,
7528 )
7529 }
7530 }
7531 #[automatically_derived]
7532 #[doc(hidden)]
7533 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeCall {
7534 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7535 Self {
7536 _tokenAddress: tuple.0,
7537 _lightClientAddress: tuple.1,
7538 _exitEscrowPeriod: tuple.2,
7539 _timelock: tuple.3,
7540 }
7541 }
7542 }
7543 }
7544 {
7545 #[doc(hidden)]
7546 #[allow(dead_code)]
7547 type UnderlyingSolTuple<'a> = ();
7548 #[doc(hidden)]
7549 type UnderlyingRustTuple<'a> = ();
7550 #[cfg(test)]
7551 #[allow(dead_code, unreachable_patterns)]
7552 fn _type_assertion(
7553 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7554 ) {
7555 match _t {
7556 alloy_sol_types::private::AssertTypeEq::<
7557 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7558 >(_) => {}
7559 }
7560 }
7561 #[automatically_derived]
7562 #[doc(hidden)]
7563 impl ::core::convert::From<initializeReturn> for UnderlyingRustTuple<'_> {
7564 fn from(value: initializeReturn) -> Self {
7565 ()
7566 }
7567 }
7568 #[automatically_derived]
7569 #[doc(hidden)]
7570 impl ::core::convert::From<UnderlyingRustTuple<'_>> for initializeReturn {
7571 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7572 Self {}
7573 }
7574 }
7575 }
7576 impl initializeReturn {
7577 fn _tokenize(
7578 &self,
7579 ) -> <initializeCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
7580 ()
7581 }
7582 }
7583 #[automatically_derived]
7584 impl alloy_sol_types::SolCall for initializeCall {
7585 type Parameters<'a> = (
7586 alloy::sol_types::sol_data::Address,
7587 alloy::sol_types::sol_data::Address,
7588 alloy::sol_types::sol_data::Uint<256>,
7589 alloy::sol_types::sol_data::Address,
7590 );
7591 type Token<'a> = <Self::Parameters<
7592 'a,
7593 > as alloy_sol_types::SolType>::Token<'a>;
7594 type Return = initializeReturn;
7595 type ReturnTuple<'a> = ();
7596 type ReturnToken<'a> = <Self::ReturnTuple<
7597 'a,
7598 > as alloy_sol_types::SolType>::Token<'a>;
7599 const SIGNATURE: &'static str = "initialize(address,address,uint256,address)";
7600 const SELECTOR: [u8; 4] = [190u8, 32u8, 48u8, 148u8];
7601 #[inline]
7602 fn new<'a>(
7603 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7604 ) -> Self {
7605 tuple.into()
7606 }
7607 #[inline]
7608 fn tokenize(&self) -> Self::Token<'_> {
7609 (
7610 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7611 &self._tokenAddress,
7612 ),
7613 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7614 &self._lightClientAddress,
7615 ),
7616 <alloy::sol_types::sol_data::Uint<
7617 256,
7618 > as alloy_sol_types::SolType>::tokenize(&self._exitEscrowPeriod),
7619 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7620 &self._timelock,
7621 ),
7622 )
7623 }
7624 #[inline]
7625 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7626 initializeReturn::_tokenize(ret)
7627 }
7628 #[inline]
7629 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7630 <Self::ReturnTuple<
7631 '_,
7632 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7633 .map(Into::into)
7634 }
7635 #[inline]
7636 fn abi_decode_returns_validate(
7637 data: &[u8],
7638 ) -> alloy_sol_types::Result<Self::Return> {
7639 <Self::ReturnTuple<
7640 '_,
7641 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
7642 .map(Into::into)
7643 }
7644 }
7645 };
7646 #[derive(serde::Serialize, serde::Deserialize)]
7647 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7648 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7653 #[derive(Clone)]
7654 pub struct initializedAtBlockCall;
7655 #[derive(serde::Serialize, serde::Deserialize)]
7656 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7657 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7659 #[derive(Clone)]
7660 pub struct initializedAtBlockReturn {
7661 #[allow(missing_docs)]
7662 pub _0: alloy::sol_types::private::primitives::aliases::U256,
7663 }
7664 #[allow(
7665 non_camel_case_types,
7666 non_snake_case,
7667 clippy::pub_underscore_fields,
7668 clippy::style
7669 )]
7670 const _: () = {
7671 use alloy::sol_types as alloy_sol_types;
7672 {
7673 #[doc(hidden)]
7674 #[allow(dead_code)]
7675 type UnderlyingSolTuple<'a> = ();
7676 #[doc(hidden)]
7677 type UnderlyingRustTuple<'a> = ();
7678 #[cfg(test)]
7679 #[allow(dead_code, unreachable_patterns)]
7680 fn _type_assertion(
7681 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7682 ) {
7683 match _t {
7684 alloy_sol_types::private::AssertTypeEq::<
7685 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7686 >(_) => {}
7687 }
7688 }
7689 #[automatically_derived]
7690 #[doc(hidden)]
7691 impl ::core::convert::From<initializedAtBlockCall>
7692 for UnderlyingRustTuple<'_> {
7693 fn from(value: initializedAtBlockCall) -> Self {
7694 ()
7695 }
7696 }
7697 #[automatically_derived]
7698 #[doc(hidden)]
7699 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7700 for initializedAtBlockCall {
7701 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7702 Self
7703 }
7704 }
7705 }
7706 {
7707 #[doc(hidden)]
7708 #[allow(dead_code)]
7709 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
7710 #[doc(hidden)]
7711 type UnderlyingRustTuple<'a> = (
7712 alloy::sol_types::private::primitives::aliases::U256,
7713 );
7714 #[cfg(test)]
7715 #[allow(dead_code, unreachable_patterns)]
7716 fn _type_assertion(
7717 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7718 ) {
7719 match _t {
7720 alloy_sol_types::private::AssertTypeEq::<
7721 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7722 >(_) => {}
7723 }
7724 }
7725 #[automatically_derived]
7726 #[doc(hidden)]
7727 impl ::core::convert::From<initializedAtBlockReturn>
7728 for UnderlyingRustTuple<'_> {
7729 fn from(value: initializedAtBlockReturn) -> Self {
7730 (value._0,)
7731 }
7732 }
7733 #[automatically_derived]
7734 #[doc(hidden)]
7735 impl ::core::convert::From<UnderlyingRustTuple<'_>>
7736 for initializedAtBlockReturn {
7737 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7738 Self { _0: tuple.0 }
7739 }
7740 }
7741 }
7742 #[automatically_derived]
7743 impl alloy_sol_types::SolCall for initializedAtBlockCall {
7744 type Parameters<'a> = ();
7745 type Token<'a> = <Self::Parameters<
7746 'a,
7747 > as alloy_sol_types::SolType>::Token<'a>;
7748 type Return = alloy::sol_types::private::primitives::aliases::U256;
7749 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
7750 type ReturnToken<'a> = <Self::ReturnTuple<
7751 'a,
7752 > as alloy_sol_types::SolType>::Token<'a>;
7753 const SIGNATURE: &'static str = "initializedAtBlock()";
7754 const SELECTOR: [u8; 4] = [62u8, 157u8, 249u8, 181u8];
7755 #[inline]
7756 fn new<'a>(
7757 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7758 ) -> Self {
7759 tuple.into()
7760 }
7761 #[inline]
7762 fn tokenize(&self) -> Self::Token<'_> {
7763 ()
7764 }
7765 #[inline]
7766 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7767 (
7768 <alloy::sol_types::sol_data::Uint<
7769 256,
7770 > as alloy_sol_types::SolType>::tokenize(ret),
7771 )
7772 }
7773 #[inline]
7774 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7775 <Self::ReturnTuple<
7776 '_,
7777 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7778 .map(|r| {
7779 let r: initializedAtBlockReturn = r.into();
7780 r._0
7781 })
7782 }
7783 #[inline]
7784 fn abi_decode_returns_validate(
7785 data: &[u8],
7786 ) -> alloy_sol_types::Result<Self::Return> {
7787 <Self::ReturnTuple<
7788 '_,
7789 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
7790 .map(|r| {
7791 let r: initializedAtBlockReturn = r.into();
7792 r._0
7793 })
7794 }
7795 }
7796 };
7797 #[derive(serde::Serialize, serde::Deserialize)]
7798 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7799 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7804 #[derive(Clone)]
7805 pub struct lightClientCall;
7806 #[derive(serde::Serialize, serde::Deserialize)]
7807 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7808 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7810 #[derive(Clone)]
7811 pub struct lightClientReturn {
7812 #[allow(missing_docs)]
7813 pub _0: alloy::sol_types::private::Address,
7814 }
7815 #[allow(
7816 non_camel_case_types,
7817 non_snake_case,
7818 clippy::pub_underscore_fields,
7819 clippy::style
7820 )]
7821 const _: () = {
7822 use alloy::sol_types as alloy_sol_types;
7823 {
7824 #[doc(hidden)]
7825 #[allow(dead_code)]
7826 type UnderlyingSolTuple<'a> = ();
7827 #[doc(hidden)]
7828 type UnderlyingRustTuple<'a> = ();
7829 #[cfg(test)]
7830 #[allow(dead_code, unreachable_patterns)]
7831 fn _type_assertion(
7832 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7833 ) {
7834 match _t {
7835 alloy_sol_types::private::AssertTypeEq::<
7836 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7837 >(_) => {}
7838 }
7839 }
7840 #[automatically_derived]
7841 #[doc(hidden)]
7842 impl ::core::convert::From<lightClientCall> for UnderlyingRustTuple<'_> {
7843 fn from(value: lightClientCall) -> Self {
7844 ()
7845 }
7846 }
7847 #[automatically_derived]
7848 #[doc(hidden)]
7849 impl ::core::convert::From<UnderlyingRustTuple<'_>> for lightClientCall {
7850 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7851 Self
7852 }
7853 }
7854 }
7855 {
7856 #[doc(hidden)]
7857 #[allow(dead_code)]
7858 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
7859 #[doc(hidden)]
7860 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
7861 #[cfg(test)]
7862 #[allow(dead_code, unreachable_patterns)]
7863 fn _type_assertion(
7864 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7865 ) {
7866 match _t {
7867 alloy_sol_types::private::AssertTypeEq::<
7868 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7869 >(_) => {}
7870 }
7871 }
7872 #[automatically_derived]
7873 #[doc(hidden)]
7874 impl ::core::convert::From<lightClientReturn> for UnderlyingRustTuple<'_> {
7875 fn from(value: lightClientReturn) -> Self {
7876 (value._0,)
7877 }
7878 }
7879 #[automatically_derived]
7880 #[doc(hidden)]
7881 impl ::core::convert::From<UnderlyingRustTuple<'_>> for lightClientReturn {
7882 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7883 Self { _0: tuple.0 }
7884 }
7885 }
7886 }
7887 #[automatically_derived]
7888 impl alloy_sol_types::SolCall for lightClientCall {
7889 type Parameters<'a> = ();
7890 type Token<'a> = <Self::Parameters<
7891 'a,
7892 > as alloy_sol_types::SolType>::Token<'a>;
7893 type Return = alloy::sol_types::private::Address;
7894 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
7895 type ReturnToken<'a> = <Self::ReturnTuple<
7896 'a,
7897 > as alloy_sol_types::SolType>::Token<'a>;
7898 const SIGNATURE: &'static str = "lightClient()";
7899 const SELECTOR: [u8; 4] = [181u8, 112u8, 14u8, 104u8];
7900 #[inline]
7901 fn new<'a>(
7902 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
7903 ) -> Self {
7904 tuple.into()
7905 }
7906 #[inline]
7907 fn tokenize(&self) -> Self::Token<'_> {
7908 ()
7909 }
7910 #[inline]
7911 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
7912 (
7913 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
7914 ret,
7915 ),
7916 )
7917 }
7918 #[inline]
7919 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
7920 <Self::ReturnTuple<
7921 '_,
7922 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
7923 .map(|r| {
7924 let r: lightClientReturn = r.into();
7925 r._0
7926 })
7927 }
7928 #[inline]
7929 fn abi_decode_returns_validate(
7930 data: &[u8],
7931 ) -> alloy_sol_types::Result<Self::Return> {
7932 <Self::ReturnTuple<
7933 '_,
7934 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
7935 .map(|r| {
7936 let r: lightClientReturn = r.into();
7937 r._0
7938 })
7939 }
7940 }
7941 };
7942 #[derive(serde::Serialize, serde::Deserialize)]
7943 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7944 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7949 #[derive(Clone)]
7950 pub struct ownerCall;
7951 #[derive(serde::Serialize, serde::Deserialize)]
7952 #[derive(Default, Debug, PartialEq, Eq, Hash)]
7953 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
7955 #[derive(Clone)]
7956 pub struct ownerReturn {
7957 #[allow(missing_docs)]
7958 pub _0: alloy::sol_types::private::Address,
7959 }
7960 #[allow(
7961 non_camel_case_types,
7962 non_snake_case,
7963 clippy::pub_underscore_fields,
7964 clippy::style
7965 )]
7966 const _: () = {
7967 use alloy::sol_types as alloy_sol_types;
7968 {
7969 #[doc(hidden)]
7970 #[allow(dead_code)]
7971 type UnderlyingSolTuple<'a> = ();
7972 #[doc(hidden)]
7973 type UnderlyingRustTuple<'a> = ();
7974 #[cfg(test)]
7975 #[allow(dead_code, unreachable_patterns)]
7976 fn _type_assertion(
7977 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
7978 ) {
7979 match _t {
7980 alloy_sol_types::private::AssertTypeEq::<
7981 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
7982 >(_) => {}
7983 }
7984 }
7985 #[automatically_derived]
7986 #[doc(hidden)]
7987 impl ::core::convert::From<ownerCall> for UnderlyingRustTuple<'_> {
7988 fn from(value: ownerCall) -> Self {
7989 ()
7990 }
7991 }
7992 #[automatically_derived]
7993 #[doc(hidden)]
7994 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ownerCall {
7995 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
7996 Self
7997 }
7998 }
7999 }
8000 {
8001 #[doc(hidden)]
8002 #[allow(dead_code)]
8003 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
8004 #[doc(hidden)]
8005 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
8006 #[cfg(test)]
8007 #[allow(dead_code, unreachable_patterns)]
8008 fn _type_assertion(
8009 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8010 ) {
8011 match _t {
8012 alloy_sol_types::private::AssertTypeEq::<
8013 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8014 >(_) => {}
8015 }
8016 }
8017 #[automatically_derived]
8018 #[doc(hidden)]
8019 impl ::core::convert::From<ownerReturn> for UnderlyingRustTuple<'_> {
8020 fn from(value: ownerReturn) -> Self {
8021 (value._0,)
8022 }
8023 }
8024 #[automatically_derived]
8025 #[doc(hidden)]
8026 impl ::core::convert::From<UnderlyingRustTuple<'_>> for ownerReturn {
8027 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8028 Self { _0: tuple.0 }
8029 }
8030 }
8031 }
8032 #[automatically_derived]
8033 impl alloy_sol_types::SolCall for ownerCall {
8034 type Parameters<'a> = ();
8035 type Token<'a> = <Self::Parameters<
8036 'a,
8037 > as alloy_sol_types::SolType>::Token<'a>;
8038 type Return = alloy::sol_types::private::Address;
8039 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
8040 type ReturnToken<'a> = <Self::ReturnTuple<
8041 'a,
8042 > as alloy_sol_types::SolType>::Token<'a>;
8043 const SIGNATURE: &'static str = "owner()";
8044 const SELECTOR: [u8; 4] = [141u8, 165u8, 203u8, 91u8];
8045 #[inline]
8046 fn new<'a>(
8047 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8048 ) -> Self {
8049 tuple.into()
8050 }
8051 #[inline]
8052 fn tokenize(&self) -> Self::Token<'_> {
8053 ()
8054 }
8055 #[inline]
8056 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8057 (
8058 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8059 ret,
8060 ),
8061 )
8062 }
8063 #[inline]
8064 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8065 <Self::ReturnTuple<
8066 '_,
8067 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8068 .map(|r| {
8069 let r: ownerReturn = r.into();
8070 r._0
8071 })
8072 }
8073 #[inline]
8074 fn abi_decode_returns_validate(
8075 data: &[u8],
8076 ) -> alloy_sol_types::Result<Self::Return> {
8077 <Self::ReturnTuple<
8078 '_,
8079 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8080 .map(|r| {
8081 let r: ownerReturn = r.into();
8082 r._0
8083 })
8084 }
8085 }
8086 };
8087 #[derive(serde::Serialize, serde::Deserialize)]
8088 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8089 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8094 #[derive(Clone)]
8095 pub struct proxiableUUIDCall;
8096 #[derive(serde::Serialize, serde::Deserialize)]
8097 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8098 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8100 #[derive(Clone)]
8101 pub struct proxiableUUIDReturn {
8102 #[allow(missing_docs)]
8103 pub _0: alloy::sol_types::private::FixedBytes<32>,
8104 }
8105 #[allow(
8106 non_camel_case_types,
8107 non_snake_case,
8108 clippy::pub_underscore_fields,
8109 clippy::style
8110 )]
8111 const _: () = {
8112 use alloy::sol_types as alloy_sol_types;
8113 {
8114 #[doc(hidden)]
8115 #[allow(dead_code)]
8116 type UnderlyingSolTuple<'a> = ();
8117 #[doc(hidden)]
8118 type UnderlyingRustTuple<'a> = ();
8119 #[cfg(test)]
8120 #[allow(dead_code, unreachable_patterns)]
8121 fn _type_assertion(
8122 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8123 ) {
8124 match _t {
8125 alloy_sol_types::private::AssertTypeEq::<
8126 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8127 >(_) => {}
8128 }
8129 }
8130 #[automatically_derived]
8131 #[doc(hidden)]
8132 impl ::core::convert::From<proxiableUUIDCall> for UnderlyingRustTuple<'_> {
8133 fn from(value: proxiableUUIDCall) -> Self {
8134 ()
8135 }
8136 }
8137 #[automatically_derived]
8138 #[doc(hidden)]
8139 impl ::core::convert::From<UnderlyingRustTuple<'_>> for proxiableUUIDCall {
8140 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8141 Self
8142 }
8143 }
8144 }
8145 {
8146 #[doc(hidden)]
8147 #[allow(dead_code)]
8148 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
8149 #[doc(hidden)]
8150 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::FixedBytes<32>,);
8151 #[cfg(test)]
8152 #[allow(dead_code, unreachable_patterns)]
8153 fn _type_assertion(
8154 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8155 ) {
8156 match _t {
8157 alloy_sol_types::private::AssertTypeEq::<
8158 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8159 >(_) => {}
8160 }
8161 }
8162 #[automatically_derived]
8163 #[doc(hidden)]
8164 impl ::core::convert::From<proxiableUUIDReturn> for UnderlyingRustTuple<'_> {
8165 fn from(value: proxiableUUIDReturn) -> Self {
8166 (value._0,)
8167 }
8168 }
8169 #[automatically_derived]
8170 #[doc(hidden)]
8171 impl ::core::convert::From<UnderlyingRustTuple<'_>> for proxiableUUIDReturn {
8172 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8173 Self { _0: tuple.0 }
8174 }
8175 }
8176 }
8177 #[automatically_derived]
8178 impl alloy_sol_types::SolCall for proxiableUUIDCall {
8179 type Parameters<'a> = ();
8180 type Token<'a> = <Self::Parameters<
8181 'a,
8182 > as alloy_sol_types::SolType>::Token<'a>;
8183 type Return = alloy::sol_types::private::FixedBytes<32>;
8184 type ReturnTuple<'a> = (alloy::sol_types::sol_data::FixedBytes<32>,);
8185 type ReturnToken<'a> = <Self::ReturnTuple<
8186 'a,
8187 > as alloy_sol_types::SolType>::Token<'a>;
8188 const SIGNATURE: &'static str = "proxiableUUID()";
8189 const SELECTOR: [u8; 4] = [82u8, 209u8, 144u8, 45u8];
8190 #[inline]
8191 fn new<'a>(
8192 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8193 ) -> Self {
8194 tuple.into()
8195 }
8196 #[inline]
8197 fn tokenize(&self) -> Self::Token<'_> {
8198 ()
8199 }
8200 #[inline]
8201 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8202 (
8203 <alloy::sol_types::sol_data::FixedBytes<
8204 32,
8205 > as alloy_sol_types::SolType>::tokenize(ret),
8206 )
8207 }
8208 #[inline]
8209 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8210 <Self::ReturnTuple<
8211 '_,
8212 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8213 .map(|r| {
8214 let r: proxiableUUIDReturn = r.into();
8215 r._0
8216 })
8217 }
8218 #[inline]
8219 fn abi_decode_returns_validate(
8220 data: &[u8],
8221 ) -> alloy_sol_types::Result<Self::Return> {
8222 <Self::ReturnTuple<
8223 '_,
8224 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8225 .map(|r| {
8226 let r: proxiableUUIDReturn = r.into();
8227 r._0
8228 })
8229 }
8230 }
8231 };
8232 #[derive(serde::Serialize, serde::Deserialize)]
8233 #[derive()]
8234 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8239 #[derive(Clone)]
8240 pub struct registerValidatorCall {
8241 #[allow(missing_docs)]
8242 pub blsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
8243 #[allow(missing_docs)]
8244 pub schnorrVK: <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
8245 #[allow(missing_docs)]
8246 pub blsSig: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
8247 #[allow(missing_docs)]
8248 pub commission: u16,
8249 }
8250 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8252 #[derive(Clone)]
8253 pub struct registerValidatorReturn {}
8254 #[allow(
8255 non_camel_case_types,
8256 non_snake_case,
8257 clippy::pub_underscore_fields,
8258 clippy::style
8259 )]
8260 const _: () = {
8261 use alloy::sol_types as alloy_sol_types;
8262 {
8263 #[doc(hidden)]
8264 #[allow(dead_code)]
8265 type UnderlyingSolTuple<'a> = (
8266 BN254::G2Point,
8267 EdOnBN254::EdOnBN254Point,
8268 BN254::G1Point,
8269 alloy::sol_types::sol_data::Uint<16>,
8270 );
8271 #[doc(hidden)]
8272 type UnderlyingRustTuple<'a> = (
8273 <BN254::G2Point as alloy::sol_types::SolType>::RustType,
8274 <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
8275 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
8276 u16,
8277 );
8278 #[cfg(test)]
8279 #[allow(dead_code, unreachable_patterns)]
8280 fn _type_assertion(
8281 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8282 ) {
8283 match _t {
8284 alloy_sol_types::private::AssertTypeEq::<
8285 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8286 >(_) => {}
8287 }
8288 }
8289 #[automatically_derived]
8290 #[doc(hidden)]
8291 impl ::core::convert::From<registerValidatorCall>
8292 for UnderlyingRustTuple<'_> {
8293 fn from(value: registerValidatorCall) -> Self {
8294 (value.blsVK, value.schnorrVK, value.blsSig, value.commission)
8295 }
8296 }
8297 #[automatically_derived]
8298 #[doc(hidden)]
8299 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8300 for registerValidatorCall {
8301 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8302 Self {
8303 blsVK: tuple.0,
8304 schnorrVK: tuple.1,
8305 blsSig: tuple.2,
8306 commission: tuple.3,
8307 }
8308 }
8309 }
8310 }
8311 {
8312 #[doc(hidden)]
8313 #[allow(dead_code)]
8314 type UnderlyingSolTuple<'a> = ();
8315 #[doc(hidden)]
8316 type UnderlyingRustTuple<'a> = ();
8317 #[cfg(test)]
8318 #[allow(dead_code, unreachable_patterns)]
8319 fn _type_assertion(
8320 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8321 ) {
8322 match _t {
8323 alloy_sol_types::private::AssertTypeEq::<
8324 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8325 >(_) => {}
8326 }
8327 }
8328 #[automatically_derived]
8329 #[doc(hidden)]
8330 impl ::core::convert::From<registerValidatorReturn>
8331 for UnderlyingRustTuple<'_> {
8332 fn from(value: registerValidatorReturn) -> Self {
8333 ()
8334 }
8335 }
8336 #[automatically_derived]
8337 #[doc(hidden)]
8338 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8339 for registerValidatorReturn {
8340 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8341 Self {}
8342 }
8343 }
8344 }
8345 impl registerValidatorReturn {
8346 fn _tokenize(
8347 &self,
8348 ) -> <registerValidatorCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
8349 ()
8350 }
8351 }
8352 #[automatically_derived]
8353 impl alloy_sol_types::SolCall for registerValidatorCall {
8354 type Parameters<'a> = (
8355 BN254::G2Point,
8356 EdOnBN254::EdOnBN254Point,
8357 BN254::G1Point,
8358 alloy::sol_types::sol_data::Uint<16>,
8359 );
8360 type Token<'a> = <Self::Parameters<
8361 'a,
8362 > as alloy_sol_types::SolType>::Token<'a>;
8363 type Return = registerValidatorReturn;
8364 type ReturnTuple<'a> = ();
8365 type ReturnToken<'a> = <Self::ReturnTuple<
8366 'a,
8367 > as alloy_sol_types::SolType>::Token<'a>;
8368 const SIGNATURE: &'static str = "registerValidator((uint256,uint256,uint256,uint256),(uint256,uint256),(uint256,uint256),uint16)";
8369 const SELECTOR: [u8; 4] = [19u8, 185u8, 5u8, 122u8];
8370 #[inline]
8371 fn new<'a>(
8372 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8373 ) -> Self {
8374 tuple.into()
8375 }
8376 #[inline]
8377 fn tokenize(&self) -> Self::Token<'_> {
8378 (
8379 <BN254::G2Point as alloy_sol_types::SolType>::tokenize(&self.blsVK),
8380 <EdOnBN254::EdOnBN254Point as alloy_sol_types::SolType>::tokenize(
8381 &self.schnorrVK,
8382 ),
8383 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(&self.blsSig),
8384 <alloy::sol_types::sol_data::Uint<
8385 16,
8386 > as alloy_sol_types::SolType>::tokenize(&self.commission),
8387 )
8388 }
8389 #[inline]
8390 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8391 registerValidatorReturn::_tokenize(ret)
8392 }
8393 #[inline]
8394 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8395 <Self::ReturnTuple<
8396 '_,
8397 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8398 .map(Into::into)
8399 }
8400 #[inline]
8401 fn abi_decode_returns_validate(
8402 data: &[u8],
8403 ) -> alloy_sol_types::Result<Self::Return> {
8404 <Self::ReturnTuple<
8405 '_,
8406 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8407 .map(Into::into)
8408 }
8409 }
8410 };
8411 #[derive(serde::Serialize, serde::Deserialize)]
8412 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8413 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8418 #[derive(Clone)]
8419 pub struct renounceOwnershipCall;
8420 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8422 #[derive(Clone)]
8423 pub struct renounceOwnershipReturn {}
8424 #[allow(
8425 non_camel_case_types,
8426 non_snake_case,
8427 clippy::pub_underscore_fields,
8428 clippy::style
8429 )]
8430 const _: () = {
8431 use alloy::sol_types as alloy_sol_types;
8432 {
8433 #[doc(hidden)]
8434 #[allow(dead_code)]
8435 type UnderlyingSolTuple<'a> = ();
8436 #[doc(hidden)]
8437 type UnderlyingRustTuple<'a> = ();
8438 #[cfg(test)]
8439 #[allow(dead_code, unreachable_patterns)]
8440 fn _type_assertion(
8441 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8442 ) {
8443 match _t {
8444 alloy_sol_types::private::AssertTypeEq::<
8445 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8446 >(_) => {}
8447 }
8448 }
8449 #[automatically_derived]
8450 #[doc(hidden)]
8451 impl ::core::convert::From<renounceOwnershipCall>
8452 for UnderlyingRustTuple<'_> {
8453 fn from(value: renounceOwnershipCall) -> Self {
8454 ()
8455 }
8456 }
8457 #[automatically_derived]
8458 #[doc(hidden)]
8459 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8460 for renounceOwnershipCall {
8461 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8462 Self
8463 }
8464 }
8465 }
8466 {
8467 #[doc(hidden)]
8468 #[allow(dead_code)]
8469 type UnderlyingSolTuple<'a> = ();
8470 #[doc(hidden)]
8471 type UnderlyingRustTuple<'a> = ();
8472 #[cfg(test)]
8473 #[allow(dead_code, unreachable_patterns)]
8474 fn _type_assertion(
8475 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8476 ) {
8477 match _t {
8478 alloy_sol_types::private::AssertTypeEq::<
8479 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8480 >(_) => {}
8481 }
8482 }
8483 #[automatically_derived]
8484 #[doc(hidden)]
8485 impl ::core::convert::From<renounceOwnershipReturn>
8486 for UnderlyingRustTuple<'_> {
8487 fn from(value: renounceOwnershipReturn) -> Self {
8488 ()
8489 }
8490 }
8491 #[automatically_derived]
8492 #[doc(hidden)]
8493 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8494 for renounceOwnershipReturn {
8495 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8496 Self {}
8497 }
8498 }
8499 }
8500 impl renounceOwnershipReturn {
8501 fn _tokenize(
8502 &self,
8503 ) -> <renounceOwnershipCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
8504 ()
8505 }
8506 }
8507 #[automatically_derived]
8508 impl alloy_sol_types::SolCall for renounceOwnershipCall {
8509 type Parameters<'a> = ();
8510 type Token<'a> = <Self::Parameters<
8511 'a,
8512 > as alloy_sol_types::SolType>::Token<'a>;
8513 type Return = renounceOwnershipReturn;
8514 type ReturnTuple<'a> = ();
8515 type ReturnToken<'a> = <Self::ReturnTuple<
8516 'a,
8517 > as alloy_sol_types::SolType>::Token<'a>;
8518 const SIGNATURE: &'static str = "renounceOwnership()";
8519 const SELECTOR: [u8; 4] = [113u8, 80u8, 24u8, 166u8];
8520 #[inline]
8521 fn new<'a>(
8522 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8523 ) -> Self {
8524 tuple.into()
8525 }
8526 #[inline]
8527 fn tokenize(&self) -> Self::Token<'_> {
8528 ()
8529 }
8530 #[inline]
8531 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8532 renounceOwnershipReturn::_tokenize(ret)
8533 }
8534 #[inline]
8535 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8536 <Self::ReturnTuple<
8537 '_,
8538 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8539 .map(Into::into)
8540 }
8541 #[inline]
8542 fn abi_decode_returns_validate(
8543 data: &[u8],
8544 ) -> alloy_sol_types::Result<Self::Return> {
8545 <Self::ReturnTuple<
8546 '_,
8547 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8548 .map(Into::into)
8549 }
8550 }
8551 };
8552 #[derive(serde::Serialize, serde::Deserialize)]
8553 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8554 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8559 #[derive(Clone)]
8560 pub struct tokenCall;
8561 #[derive(serde::Serialize, serde::Deserialize)]
8562 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8563 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8565 #[derive(Clone)]
8566 pub struct tokenReturn {
8567 #[allow(missing_docs)]
8568 pub _0: alloy::sol_types::private::Address,
8569 }
8570 #[allow(
8571 non_camel_case_types,
8572 non_snake_case,
8573 clippy::pub_underscore_fields,
8574 clippy::style
8575 )]
8576 const _: () = {
8577 use alloy::sol_types as alloy_sol_types;
8578 {
8579 #[doc(hidden)]
8580 #[allow(dead_code)]
8581 type UnderlyingSolTuple<'a> = ();
8582 #[doc(hidden)]
8583 type UnderlyingRustTuple<'a> = ();
8584 #[cfg(test)]
8585 #[allow(dead_code, unreachable_patterns)]
8586 fn _type_assertion(
8587 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8588 ) {
8589 match _t {
8590 alloy_sol_types::private::AssertTypeEq::<
8591 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8592 >(_) => {}
8593 }
8594 }
8595 #[automatically_derived]
8596 #[doc(hidden)]
8597 impl ::core::convert::From<tokenCall> for UnderlyingRustTuple<'_> {
8598 fn from(value: tokenCall) -> Self {
8599 ()
8600 }
8601 }
8602 #[automatically_derived]
8603 #[doc(hidden)]
8604 impl ::core::convert::From<UnderlyingRustTuple<'_>> for tokenCall {
8605 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8606 Self
8607 }
8608 }
8609 }
8610 {
8611 #[doc(hidden)]
8612 #[allow(dead_code)]
8613 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
8614 #[doc(hidden)]
8615 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
8616 #[cfg(test)]
8617 #[allow(dead_code, unreachable_patterns)]
8618 fn _type_assertion(
8619 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8620 ) {
8621 match _t {
8622 alloy_sol_types::private::AssertTypeEq::<
8623 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8624 >(_) => {}
8625 }
8626 }
8627 #[automatically_derived]
8628 #[doc(hidden)]
8629 impl ::core::convert::From<tokenReturn> for UnderlyingRustTuple<'_> {
8630 fn from(value: tokenReturn) -> Self {
8631 (value._0,)
8632 }
8633 }
8634 #[automatically_derived]
8635 #[doc(hidden)]
8636 impl ::core::convert::From<UnderlyingRustTuple<'_>> for tokenReturn {
8637 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8638 Self { _0: tuple.0 }
8639 }
8640 }
8641 }
8642 #[automatically_derived]
8643 impl alloy_sol_types::SolCall for tokenCall {
8644 type Parameters<'a> = ();
8645 type Token<'a> = <Self::Parameters<
8646 'a,
8647 > as alloy_sol_types::SolType>::Token<'a>;
8648 type Return = alloy::sol_types::private::Address;
8649 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Address,);
8650 type ReturnToken<'a> = <Self::ReturnTuple<
8651 'a,
8652 > as alloy_sol_types::SolType>::Token<'a>;
8653 const SIGNATURE: &'static str = "token()";
8654 const SELECTOR: [u8; 4] = [252u8, 12u8, 84u8, 106u8];
8655 #[inline]
8656 fn new<'a>(
8657 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8658 ) -> Self {
8659 tuple.into()
8660 }
8661 #[inline]
8662 fn tokenize(&self) -> Self::Token<'_> {
8663 ()
8664 }
8665 #[inline]
8666 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8667 (
8668 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8669 ret,
8670 ),
8671 )
8672 }
8673 #[inline]
8674 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8675 <Self::ReturnTuple<
8676 '_,
8677 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8678 .map(|r| {
8679 let r: tokenReturn = r.into();
8680 r._0
8681 })
8682 }
8683 #[inline]
8684 fn abi_decode_returns_validate(
8685 data: &[u8],
8686 ) -> alloy_sol_types::Result<Self::Return> {
8687 <Self::ReturnTuple<
8688 '_,
8689 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8690 .map(|r| {
8691 let r: tokenReturn = r.into();
8692 r._0
8693 })
8694 }
8695 }
8696 };
8697 #[derive(serde::Serialize, serde::Deserialize)]
8698 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8699 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8704 #[derive(Clone)]
8705 pub struct transferOwnershipCall {
8706 #[allow(missing_docs)]
8707 pub newOwner: alloy::sol_types::private::Address,
8708 }
8709 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8711 #[derive(Clone)]
8712 pub struct transferOwnershipReturn {}
8713 #[allow(
8714 non_camel_case_types,
8715 non_snake_case,
8716 clippy::pub_underscore_fields,
8717 clippy::style
8718 )]
8719 const _: () = {
8720 use alloy::sol_types as alloy_sol_types;
8721 {
8722 #[doc(hidden)]
8723 #[allow(dead_code)]
8724 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
8725 #[doc(hidden)]
8726 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
8727 #[cfg(test)]
8728 #[allow(dead_code, unreachable_patterns)]
8729 fn _type_assertion(
8730 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8731 ) {
8732 match _t {
8733 alloy_sol_types::private::AssertTypeEq::<
8734 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8735 >(_) => {}
8736 }
8737 }
8738 #[automatically_derived]
8739 #[doc(hidden)]
8740 impl ::core::convert::From<transferOwnershipCall>
8741 for UnderlyingRustTuple<'_> {
8742 fn from(value: transferOwnershipCall) -> Self {
8743 (value.newOwner,)
8744 }
8745 }
8746 #[automatically_derived]
8747 #[doc(hidden)]
8748 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8749 for transferOwnershipCall {
8750 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8751 Self { newOwner: tuple.0 }
8752 }
8753 }
8754 }
8755 {
8756 #[doc(hidden)]
8757 #[allow(dead_code)]
8758 type UnderlyingSolTuple<'a> = ();
8759 #[doc(hidden)]
8760 type UnderlyingRustTuple<'a> = ();
8761 #[cfg(test)]
8762 #[allow(dead_code, unreachable_patterns)]
8763 fn _type_assertion(
8764 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8765 ) {
8766 match _t {
8767 alloy_sol_types::private::AssertTypeEq::<
8768 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8769 >(_) => {}
8770 }
8771 }
8772 #[automatically_derived]
8773 #[doc(hidden)]
8774 impl ::core::convert::From<transferOwnershipReturn>
8775 for UnderlyingRustTuple<'_> {
8776 fn from(value: transferOwnershipReturn) -> Self {
8777 ()
8778 }
8779 }
8780 #[automatically_derived]
8781 #[doc(hidden)]
8782 impl ::core::convert::From<UnderlyingRustTuple<'_>>
8783 for transferOwnershipReturn {
8784 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8785 Self {}
8786 }
8787 }
8788 }
8789 impl transferOwnershipReturn {
8790 fn _tokenize(
8791 &self,
8792 ) -> <transferOwnershipCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
8793 ()
8794 }
8795 }
8796 #[automatically_derived]
8797 impl alloy_sol_types::SolCall for transferOwnershipCall {
8798 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
8799 type Token<'a> = <Self::Parameters<
8800 'a,
8801 > as alloy_sol_types::SolType>::Token<'a>;
8802 type Return = transferOwnershipReturn;
8803 type ReturnTuple<'a> = ();
8804 type ReturnToken<'a> = <Self::ReturnTuple<
8805 'a,
8806 > as alloy_sol_types::SolType>::Token<'a>;
8807 const SIGNATURE: &'static str = "transferOwnership(address)";
8808 const SELECTOR: [u8; 4] = [242u8, 253u8, 227u8, 139u8];
8809 #[inline]
8810 fn new<'a>(
8811 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8812 ) -> Self {
8813 tuple.into()
8814 }
8815 #[inline]
8816 fn tokenize(&self) -> Self::Token<'_> {
8817 (
8818 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8819 &self.newOwner,
8820 ),
8821 )
8822 }
8823 #[inline]
8824 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8825 transferOwnershipReturn::_tokenize(ret)
8826 }
8827 #[inline]
8828 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8829 <Self::ReturnTuple<
8830 '_,
8831 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8832 .map(Into::into)
8833 }
8834 #[inline]
8835 fn abi_decode_returns_validate(
8836 data: &[u8],
8837 ) -> alloy_sol_types::Result<Self::Return> {
8838 <Self::ReturnTuple<
8839 '_,
8840 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
8841 .map(Into::into)
8842 }
8843 }
8844 };
8845 #[derive(serde::Serialize, serde::Deserialize)]
8846 #[derive(Default, Debug, PartialEq, Eq, Hash)]
8847 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8852 #[derive(Clone)]
8853 pub struct undelegateCall {
8854 #[allow(missing_docs)]
8855 pub validator: alloy::sol_types::private::Address,
8856 #[allow(missing_docs)]
8857 pub amount: alloy::sol_types::private::primitives::aliases::U256,
8858 }
8859 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
8861 #[derive(Clone)]
8862 pub struct undelegateReturn {}
8863 #[allow(
8864 non_camel_case_types,
8865 non_snake_case,
8866 clippy::pub_underscore_fields,
8867 clippy::style
8868 )]
8869 const _: () = {
8870 use alloy::sol_types as alloy_sol_types;
8871 {
8872 #[doc(hidden)]
8873 #[allow(dead_code)]
8874 type UnderlyingSolTuple<'a> = (
8875 alloy::sol_types::sol_data::Address,
8876 alloy::sol_types::sol_data::Uint<256>,
8877 );
8878 #[doc(hidden)]
8879 type UnderlyingRustTuple<'a> = (
8880 alloy::sol_types::private::Address,
8881 alloy::sol_types::private::primitives::aliases::U256,
8882 );
8883 #[cfg(test)]
8884 #[allow(dead_code, unreachable_patterns)]
8885 fn _type_assertion(
8886 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8887 ) {
8888 match _t {
8889 alloy_sol_types::private::AssertTypeEq::<
8890 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8891 >(_) => {}
8892 }
8893 }
8894 #[automatically_derived]
8895 #[doc(hidden)]
8896 impl ::core::convert::From<undelegateCall> for UnderlyingRustTuple<'_> {
8897 fn from(value: undelegateCall) -> Self {
8898 (value.validator, value.amount)
8899 }
8900 }
8901 #[automatically_derived]
8902 #[doc(hidden)]
8903 impl ::core::convert::From<UnderlyingRustTuple<'_>> for undelegateCall {
8904 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8905 Self {
8906 validator: tuple.0,
8907 amount: tuple.1,
8908 }
8909 }
8910 }
8911 }
8912 {
8913 #[doc(hidden)]
8914 #[allow(dead_code)]
8915 type UnderlyingSolTuple<'a> = ();
8916 #[doc(hidden)]
8917 type UnderlyingRustTuple<'a> = ();
8918 #[cfg(test)]
8919 #[allow(dead_code, unreachable_patterns)]
8920 fn _type_assertion(
8921 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
8922 ) {
8923 match _t {
8924 alloy_sol_types::private::AssertTypeEq::<
8925 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
8926 >(_) => {}
8927 }
8928 }
8929 #[automatically_derived]
8930 #[doc(hidden)]
8931 impl ::core::convert::From<undelegateReturn> for UnderlyingRustTuple<'_> {
8932 fn from(value: undelegateReturn) -> Self {
8933 ()
8934 }
8935 }
8936 #[automatically_derived]
8937 #[doc(hidden)]
8938 impl ::core::convert::From<UnderlyingRustTuple<'_>> for undelegateReturn {
8939 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
8940 Self {}
8941 }
8942 }
8943 }
8944 impl undelegateReturn {
8945 fn _tokenize(
8946 &self,
8947 ) -> <undelegateCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
8948 ()
8949 }
8950 }
8951 #[automatically_derived]
8952 impl alloy_sol_types::SolCall for undelegateCall {
8953 type Parameters<'a> = (
8954 alloy::sol_types::sol_data::Address,
8955 alloy::sol_types::sol_data::Uint<256>,
8956 );
8957 type Token<'a> = <Self::Parameters<
8958 'a,
8959 > as alloy_sol_types::SolType>::Token<'a>;
8960 type Return = undelegateReturn;
8961 type ReturnTuple<'a> = ();
8962 type ReturnToken<'a> = <Self::ReturnTuple<
8963 'a,
8964 > as alloy_sol_types::SolType>::Token<'a>;
8965 const SIGNATURE: &'static str = "undelegate(address,uint256)";
8966 const SELECTOR: [u8; 4] = [77u8, 153u8, 221u8, 22u8];
8967 #[inline]
8968 fn new<'a>(
8969 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
8970 ) -> Self {
8971 tuple.into()
8972 }
8973 #[inline]
8974 fn tokenize(&self) -> Self::Token<'_> {
8975 (
8976 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
8977 &self.validator,
8978 ),
8979 <alloy::sol_types::sol_data::Uint<
8980 256,
8981 > as alloy_sol_types::SolType>::tokenize(&self.amount),
8982 )
8983 }
8984 #[inline]
8985 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
8986 undelegateReturn::_tokenize(ret)
8987 }
8988 #[inline]
8989 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
8990 <Self::ReturnTuple<
8991 '_,
8992 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
8993 .map(Into::into)
8994 }
8995 #[inline]
8996 fn abi_decode_returns_validate(
8997 data: &[u8],
8998 ) -> alloy_sol_types::Result<Self::Return> {
8999 <Self::ReturnTuple<
9000 '_,
9001 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9002 .map(Into::into)
9003 }
9004 }
9005 };
9006 #[derive(serde::Serialize, serde::Deserialize)]
9007 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9008 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9013 #[derive(Clone)]
9014 pub struct undelegationsCall {
9015 #[allow(missing_docs)]
9016 pub validator: alloy::sol_types::private::Address,
9017 #[allow(missing_docs)]
9018 pub delegator: alloy::sol_types::private::Address,
9019 }
9020 #[derive(serde::Serialize, serde::Deserialize)]
9021 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9022 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9024 #[derive(Clone)]
9025 pub struct undelegationsReturn {
9026 #[allow(missing_docs)]
9027 pub amount: alloy::sol_types::private::primitives::aliases::U256,
9028 #[allow(missing_docs)]
9029 pub unlocksAt: alloy::sol_types::private::primitives::aliases::U256,
9030 }
9031 #[allow(
9032 non_camel_case_types,
9033 non_snake_case,
9034 clippy::pub_underscore_fields,
9035 clippy::style
9036 )]
9037 const _: () = {
9038 use alloy::sol_types as alloy_sol_types;
9039 {
9040 #[doc(hidden)]
9041 #[allow(dead_code)]
9042 type UnderlyingSolTuple<'a> = (
9043 alloy::sol_types::sol_data::Address,
9044 alloy::sol_types::sol_data::Address,
9045 );
9046 #[doc(hidden)]
9047 type UnderlyingRustTuple<'a> = (
9048 alloy::sol_types::private::Address,
9049 alloy::sol_types::private::Address,
9050 );
9051 #[cfg(test)]
9052 #[allow(dead_code, unreachable_patterns)]
9053 fn _type_assertion(
9054 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9055 ) {
9056 match _t {
9057 alloy_sol_types::private::AssertTypeEq::<
9058 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9059 >(_) => {}
9060 }
9061 }
9062 #[automatically_derived]
9063 #[doc(hidden)]
9064 impl ::core::convert::From<undelegationsCall> for UnderlyingRustTuple<'_> {
9065 fn from(value: undelegationsCall) -> Self {
9066 (value.validator, value.delegator)
9067 }
9068 }
9069 #[automatically_derived]
9070 #[doc(hidden)]
9071 impl ::core::convert::From<UnderlyingRustTuple<'_>> for undelegationsCall {
9072 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9073 Self {
9074 validator: tuple.0,
9075 delegator: tuple.1,
9076 }
9077 }
9078 }
9079 }
9080 {
9081 #[doc(hidden)]
9082 #[allow(dead_code)]
9083 type UnderlyingSolTuple<'a> = (
9084 alloy::sol_types::sol_data::Uint<256>,
9085 alloy::sol_types::sol_data::Uint<256>,
9086 );
9087 #[doc(hidden)]
9088 type UnderlyingRustTuple<'a> = (
9089 alloy::sol_types::private::primitives::aliases::U256,
9090 alloy::sol_types::private::primitives::aliases::U256,
9091 );
9092 #[cfg(test)]
9093 #[allow(dead_code, unreachable_patterns)]
9094 fn _type_assertion(
9095 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9096 ) {
9097 match _t {
9098 alloy_sol_types::private::AssertTypeEq::<
9099 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9100 >(_) => {}
9101 }
9102 }
9103 #[automatically_derived]
9104 #[doc(hidden)]
9105 impl ::core::convert::From<undelegationsReturn> for UnderlyingRustTuple<'_> {
9106 fn from(value: undelegationsReturn) -> Self {
9107 (value.amount, value.unlocksAt)
9108 }
9109 }
9110 #[automatically_derived]
9111 #[doc(hidden)]
9112 impl ::core::convert::From<UnderlyingRustTuple<'_>> for undelegationsReturn {
9113 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9114 Self {
9115 amount: tuple.0,
9116 unlocksAt: tuple.1,
9117 }
9118 }
9119 }
9120 }
9121 impl undelegationsReturn {
9122 fn _tokenize(
9123 &self,
9124 ) -> <undelegationsCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
9125 (
9126 <alloy::sol_types::sol_data::Uint<
9127 256,
9128 > as alloy_sol_types::SolType>::tokenize(&self.amount),
9129 <alloy::sol_types::sol_data::Uint<
9130 256,
9131 > as alloy_sol_types::SolType>::tokenize(&self.unlocksAt),
9132 )
9133 }
9134 }
9135 #[automatically_derived]
9136 impl alloy_sol_types::SolCall for undelegationsCall {
9137 type Parameters<'a> = (
9138 alloy::sol_types::sol_data::Address,
9139 alloy::sol_types::sol_data::Address,
9140 );
9141 type Token<'a> = <Self::Parameters<
9142 'a,
9143 > as alloy_sol_types::SolType>::Token<'a>;
9144 type Return = undelegationsReturn;
9145 type ReturnTuple<'a> = (
9146 alloy::sol_types::sol_data::Uint<256>,
9147 alloy::sol_types::sol_data::Uint<256>,
9148 );
9149 type ReturnToken<'a> = <Self::ReturnTuple<
9150 'a,
9151 > as alloy_sol_types::SolType>::Token<'a>;
9152 const SIGNATURE: &'static str = "undelegations(address,address)";
9153 const SELECTOR: [u8; 4] = [162u8, 215u8, 141u8, 213u8];
9154 #[inline]
9155 fn new<'a>(
9156 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9157 ) -> Self {
9158 tuple.into()
9159 }
9160 #[inline]
9161 fn tokenize(&self) -> Self::Token<'_> {
9162 (
9163 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9164 &self.validator,
9165 ),
9166 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9167 &self.delegator,
9168 ),
9169 )
9170 }
9171 #[inline]
9172 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9173 undelegationsReturn::_tokenize(ret)
9174 }
9175 #[inline]
9176 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9177 <Self::ReturnTuple<
9178 '_,
9179 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9180 .map(Into::into)
9181 }
9182 #[inline]
9183 fn abi_decode_returns_validate(
9184 data: &[u8],
9185 ) -> alloy_sol_types::Result<Self::Return> {
9186 <Self::ReturnTuple<
9187 '_,
9188 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9189 .map(Into::into)
9190 }
9191 }
9192 };
9193 #[derive(serde::Serialize, serde::Deserialize)]
9194 #[derive()]
9195 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9200 #[derive(Clone)]
9201 pub struct updateConsensusKeysCall {
9202 #[allow(missing_docs)]
9203 pub newBlsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
9204 #[allow(missing_docs)]
9205 pub newSchnorrVK: <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
9206 #[allow(missing_docs)]
9207 pub newBlsSig: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
9208 }
9209 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9211 #[derive(Clone)]
9212 pub struct updateConsensusKeysReturn {}
9213 #[allow(
9214 non_camel_case_types,
9215 non_snake_case,
9216 clippy::pub_underscore_fields,
9217 clippy::style
9218 )]
9219 const _: () = {
9220 use alloy::sol_types as alloy_sol_types;
9221 {
9222 #[doc(hidden)]
9223 #[allow(dead_code)]
9224 type UnderlyingSolTuple<'a> = (
9225 BN254::G2Point,
9226 EdOnBN254::EdOnBN254Point,
9227 BN254::G1Point,
9228 );
9229 #[doc(hidden)]
9230 type UnderlyingRustTuple<'a> = (
9231 <BN254::G2Point as alloy::sol_types::SolType>::RustType,
9232 <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
9233 <BN254::G1Point as alloy::sol_types::SolType>::RustType,
9234 );
9235 #[cfg(test)]
9236 #[allow(dead_code, unreachable_patterns)]
9237 fn _type_assertion(
9238 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9239 ) {
9240 match _t {
9241 alloy_sol_types::private::AssertTypeEq::<
9242 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9243 >(_) => {}
9244 }
9245 }
9246 #[automatically_derived]
9247 #[doc(hidden)]
9248 impl ::core::convert::From<updateConsensusKeysCall>
9249 for UnderlyingRustTuple<'_> {
9250 fn from(value: updateConsensusKeysCall) -> Self {
9251 (value.newBlsVK, value.newSchnorrVK, value.newBlsSig)
9252 }
9253 }
9254 #[automatically_derived]
9255 #[doc(hidden)]
9256 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9257 for updateConsensusKeysCall {
9258 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9259 Self {
9260 newBlsVK: tuple.0,
9261 newSchnorrVK: tuple.1,
9262 newBlsSig: tuple.2,
9263 }
9264 }
9265 }
9266 }
9267 {
9268 #[doc(hidden)]
9269 #[allow(dead_code)]
9270 type UnderlyingSolTuple<'a> = ();
9271 #[doc(hidden)]
9272 type UnderlyingRustTuple<'a> = ();
9273 #[cfg(test)]
9274 #[allow(dead_code, unreachable_patterns)]
9275 fn _type_assertion(
9276 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9277 ) {
9278 match _t {
9279 alloy_sol_types::private::AssertTypeEq::<
9280 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9281 >(_) => {}
9282 }
9283 }
9284 #[automatically_derived]
9285 #[doc(hidden)]
9286 impl ::core::convert::From<updateConsensusKeysReturn>
9287 for UnderlyingRustTuple<'_> {
9288 fn from(value: updateConsensusKeysReturn) -> Self {
9289 ()
9290 }
9291 }
9292 #[automatically_derived]
9293 #[doc(hidden)]
9294 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9295 for updateConsensusKeysReturn {
9296 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9297 Self {}
9298 }
9299 }
9300 }
9301 impl updateConsensusKeysReturn {
9302 fn _tokenize(
9303 &self,
9304 ) -> <updateConsensusKeysCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
9305 ()
9306 }
9307 }
9308 #[automatically_derived]
9309 impl alloy_sol_types::SolCall for updateConsensusKeysCall {
9310 type Parameters<'a> = (
9311 BN254::G2Point,
9312 EdOnBN254::EdOnBN254Point,
9313 BN254::G1Point,
9314 );
9315 type Token<'a> = <Self::Parameters<
9316 'a,
9317 > as alloy_sol_types::SolType>::Token<'a>;
9318 type Return = updateConsensusKeysReturn;
9319 type ReturnTuple<'a> = ();
9320 type ReturnToken<'a> = <Self::ReturnTuple<
9321 'a,
9322 > as alloy_sol_types::SolType>::Token<'a>;
9323 const SIGNATURE: &'static str = "updateConsensusKeys((uint256,uint256,uint256,uint256),(uint256,uint256),(uint256,uint256))";
9324 const SELECTOR: [u8; 4] = [85u8, 68u8, 194u8, 241u8];
9325 #[inline]
9326 fn new<'a>(
9327 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9328 ) -> Self {
9329 tuple.into()
9330 }
9331 #[inline]
9332 fn tokenize(&self) -> Self::Token<'_> {
9333 (
9334 <BN254::G2Point as alloy_sol_types::SolType>::tokenize(
9335 &self.newBlsVK,
9336 ),
9337 <EdOnBN254::EdOnBN254Point as alloy_sol_types::SolType>::tokenize(
9338 &self.newSchnorrVK,
9339 ),
9340 <BN254::G1Point as alloy_sol_types::SolType>::tokenize(
9341 &self.newBlsSig,
9342 ),
9343 )
9344 }
9345 #[inline]
9346 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9347 updateConsensusKeysReturn::_tokenize(ret)
9348 }
9349 #[inline]
9350 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9351 <Self::ReturnTuple<
9352 '_,
9353 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9354 .map(Into::into)
9355 }
9356 #[inline]
9357 fn abi_decode_returns_validate(
9358 data: &[u8],
9359 ) -> alloy_sol_types::Result<Self::Return> {
9360 <Self::ReturnTuple<
9361 '_,
9362 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9363 .map(Into::into)
9364 }
9365 }
9366 };
9367 #[derive(serde::Serialize, serde::Deserialize)]
9368 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9369 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9374 #[derive(Clone)]
9375 pub struct upgradeToAndCallCall {
9376 #[allow(missing_docs)]
9377 pub newImplementation: alloy::sol_types::private::Address,
9378 #[allow(missing_docs)]
9379 pub data: alloy::sol_types::private::Bytes,
9380 }
9381 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9383 #[derive(Clone)]
9384 pub struct upgradeToAndCallReturn {}
9385 #[allow(
9386 non_camel_case_types,
9387 non_snake_case,
9388 clippy::pub_underscore_fields,
9389 clippy::style
9390 )]
9391 const _: () = {
9392 use alloy::sol_types as alloy_sol_types;
9393 {
9394 #[doc(hidden)]
9395 #[allow(dead_code)]
9396 type UnderlyingSolTuple<'a> = (
9397 alloy::sol_types::sol_data::Address,
9398 alloy::sol_types::sol_data::Bytes,
9399 );
9400 #[doc(hidden)]
9401 type UnderlyingRustTuple<'a> = (
9402 alloy::sol_types::private::Address,
9403 alloy::sol_types::private::Bytes,
9404 );
9405 #[cfg(test)]
9406 #[allow(dead_code, unreachable_patterns)]
9407 fn _type_assertion(
9408 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9409 ) {
9410 match _t {
9411 alloy_sol_types::private::AssertTypeEq::<
9412 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9413 >(_) => {}
9414 }
9415 }
9416 #[automatically_derived]
9417 #[doc(hidden)]
9418 impl ::core::convert::From<upgradeToAndCallCall>
9419 for UnderlyingRustTuple<'_> {
9420 fn from(value: upgradeToAndCallCall) -> Self {
9421 (value.newImplementation, value.data)
9422 }
9423 }
9424 #[automatically_derived]
9425 #[doc(hidden)]
9426 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9427 for upgradeToAndCallCall {
9428 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9429 Self {
9430 newImplementation: tuple.0,
9431 data: tuple.1,
9432 }
9433 }
9434 }
9435 }
9436 {
9437 #[doc(hidden)]
9438 #[allow(dead_code)]
9439 type UnderlyingSolTuple<'a> = ();
9440 #[doc(hidden)]
9441 type UnderlyingRustTuple<'a> = ();
9442 #[cfg(test)]
9443 #[allow(dead_code, unreachable_patterns)]
9444 fn _type_assertion(
9445 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9446 ) {
9447 match _t {
9448 alloy_sol_types::private::AssertTypeEq::<
9449 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9450 >(_) => {}
9451 }
9452 }
9453 #[automatically_derived]
9454 #[doc(hidden)]
9455 impl ::core::convert::From<upgradeToAndCallReturn>
9456 for UnderlyingRustTuple<'_> {
9457 fn from(value: upgradeToAndCallReturn) -> Self {
9458 ()
9459 }
9460 }
9461 #[automatically_derived]
9462 #[doc(hidden)]
9463 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9464 for upgradeToAndCallReturn {
9465 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9466 Self {}
9467 }
9468 }
9469 }
9470 impl upgradeToAndCallReturn {
9471 fn _tokenize(
9472 &self,
9473 ) -> <upgradeToAndCallCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
9474 ()
9475 }
9476 }
9477 #[automatically_derived]
9478 impl alloy_sol_types::SolCall for upgradeToAndCallCall {
9479 type Parameters<'a> = (
9480 alloy::sol_types::sol_data::Address,
9481 alloy::sol_types::sol_data::Bytes,
9482 );
9483 type Token<'a> = <Self::Parameters<
9484 'a,
9485 > as alloy_sol_types::SolType>::Token<'a>;
9486 type Return = upgradeToAndCallReturn;
9487 type ReturnTuple<'a> = ();
9488 type ReturnToken<'a> = <Self::ReturnTuple<
9489 'a,
9490 > as alloy_sol_types::SolType>::Token<'a>;
9491 const SIGNATURE: &'static str = "upgradeToAndCall(address,bytes)";
9492 const SELECTOR: [u8; 4] = [79u8, 30u8, 242u8, 134u8];
9493 #[inline]
9494 fn new<'a>(
9495 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9496 ) -> Self {
9497 tuple.into()
9498 }
9499 #[inline]
9500 fn tokenize(&self) -> Self::Token<'_> {
9501 (
9502 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9503 &self.newImplementation,
9504 ),
9505 <alloy::sol_types::sol_data::Bytes as alloy_sol_types::SolType>::tokenize(
9506 &self.data,
9507 ),
9508 )
9509 }
9510 #[inline]
9511 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9512 upgradeToAndCallReturn::_tokenize(ret)
9513 }
9514 #[inline]
9515 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9516 <Self::ReturnTuple<
9517 '_,
9518 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9519 .map(Into::into)
9520 }
9521 #[inline]
9522 fn abi_decode_returns_validate(
9523 data: &[u8],
9524 ) -> alloy_sol_types::Result<Self::Return> {
9525 <Self::ReturnTuple<
9526 '_,
9527 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9528 .map(Into::into)
9529 }
9530 }
9531 };
9532 #[derive(serde::Serialize, serde::Deserialize)]
9533 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9534 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9539 #[derive(Clone)]
9540 pub struct validatorExitsCall {
9541 #[allow(missing_docs)]
9542 pub validator: alloy::sol_types::private::Address,
9543 }
9544 #[derive(serde::Serialize, serde::Deserialize)]
9545 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9546 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9548 #[derive(Clone)]
9549 pub struct validatorExitsReturn {
9550 #[allow(missing_docs)]
9551 pub unlocksAt: alloy::sol_types::private::primitives::aliases::U256,
9552 }
9553 #[allow(
9554 non_camel_case_types,
9555 non_snake_case,
9556 clippy::pub_underscore_fields,
9557 clippy::style
9558 )]
9559 const _: () = {
9560 use alloy::sol_types as alloy_sol_types;
9561 {
9562 #[doc(hidden)]
9563 #[allow(dead_code)]
9564 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
9565 #[doc(hidden)]
9566 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
9567 #[cfg(test)]
9568 #[allow(dead_code, unreachable_patterns)]
9569 fn _type_assertion(
9570 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9571 ) {
9572 match _t {
9573 alloy_sol_types::private::AssertTypeEq::<
9574 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9575 >(_) => {}
9576 }
9577 }
9578 #[automatically_derived]
9579 #[doc(hidden)]
9580 impl ::core::convert::From<validatorExitsCall> for UnderlyingRustTuple<'_> {
9581 fn from(value: validatorExitsCall) -> Self {
9582 (value.validator,)
9583 }
9584 }
9585 #[automatically_derived]
9586 #[doc(hidden)]
9587 impl ::core::convert::From<UnderlyingRustTuple<'_>> for validatorExitsCall {
9588 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9589 Self { validator: tuple.0 }
9590 }
9591 }
9592 }
9593 {
9594 #[doc(hidden)]
9595 #[allow(dead_code)]
9596 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
9597 #[doc(hidden)]
9598 type UnderlyingRustTuple<'a> = (
9599 alloy::sol_types::private::primitives::aliases::U256,
9600 );
9601 #[cfg(test)]
9602 #[allow(dead_code, unreachable_patterns)]
9603 fn _type_assertion(
9604 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9605 ) {
9606 match _t {
9607 alloy_sol_types::private::AssertTypeEq::<
9608 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9609 >(_) => {}
9610 }
9611 }
9612 #[automatically_derived]
9613 #[doc(hidden)]
9614 impl ::core::convert::From<validatorExitsReturn>
9615 for UnderlyingRustTuple<'_> {
9616 fn from(value: validatorExitsReturn) -> Self {
9617 (value.unlocksAt,)
9618 }
9619 }
9620 #[automatically_derived]
9621 #[doc(hidden)]
9622 impl ::core::convert::From<UnderlyingRustTuple<'_>>
9623 for validatorExitsReturn {
9624 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9625 Self { unlocksAt: tuple.0 }
9626 }
9627 }
9628 }
9629 #[automatically_derived]
9630 impl alloy_sol_types::SolCall for validatorExitsCall {
9631 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
9632 type Token<'a> = <Self::Parameters<
9633 'a,
9634 > as alloy_sol_types::SolType>::Token<'a>;
9635 type Return = alloy::sol_types::private::primitives::aliases::U256;
9636 type ReturnTuple<'a> = (alloy::sol_types::sol_data::Uint<256>,);
9637 type ReturnToken<'a> = <Self::ReturnTuple<
9638 'a,
9639 > as alloy_sol_types::SolType>::Token<'a>;
9640 const SIGNATURE: &'static str = "validatorExits(address)";
9641 const SELECTOR: [u8; 4] = [181u8, 236u8, 179u8, 68u8];
9642 #[inline]
9643 fn new<'a>(
9644 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9645 ) -> Self {
9646 tuple.into()
9647 }
9648 #[inline]
9649 fn tokenize(&self) -> Self::Token<'_> {
9650 (
9651 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9652 &self.validator,
9653 ),
9654 )
9655 }
9656 #[inline]
9657 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9658 (
9659 <alloy::sol_types::sol_data::Uint<
9660 256,
9661 > as alloy_sol_types::SolType>::tokenize(ret),
9662 )
9663 }
9664 #[inline]
9665 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9666 <Self::ReturnTuple<
9667 '_,
9668 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9669 .map(|r| {
9670 let r: validatorExitsReturn = r.into();
9671 r.unlocksAt
9672 })
9673 }
9674 #[inline]
9675 fn abi_decode_returns_validate(
9676 data: &[u8],
9677 ) -> alloy_sol_types::Result<Self::Return> {
9678 <Self::ReturnTuple<
9679 '_,
9680 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9681 .map(|r| {
9682 let r: validatorExitsReturn = r.into();
9683 r.unlocksAt
9684 })
9685 }
9686 }
9687 };
9688 #[derive(serde::Serialize, serde::Deserialize)]
9689 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9690 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9695 #[derive(Clone)]
9696 pub struct validatorsCall {
9697 #[allow(missing_docs)]
9698 pub account: alloy::sol_types::private::Address,
9699 }
9700 #[derive(serde::Serialize, serde::Deserialize)]
9701 #[derive(Default, Debug, PartialEq, Eq, Hash)]
9702 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
9704 #[derive(Clone)]
9705 pub struct validatorsReturn {
9706 #[allow(missing_docs)]
9707 pub delegatedAmount: alloy::sol_types::private::primitives::aliases::U256,
9708 #[allow(missing_docs)]
9709 pub status: <ValidatorStatus as alloy::sol_types::SolType>::RustType,
9710 }
9711 #[allow(
9712 non_camel_case_types,
9713 non_snake_case,
9714 clippy::pub_underscore_fields,
9715 clippy::style
9716 )]
9717 const _: () = {
9718 use alloy::sol_types as alloy_sol_types;
9719 {
9720 #[doc(hidden)]
9721 #[allow(dead_code)]
9722 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
9723 #[doc(hidden)]
9724 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
9725 #[cfg(test)]
9726 #[allow(dead_code, unreachable_patterns)]
9727 fn _type_assertion(
9728 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9729 ) {
9730 match _t {
9731 alloy_sol_types::private::AssertTypeEq::<
9732 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9733 >(_) => {}
9734 }
9735 }
9736 #[automatically_derived]
9737 #[doc(hidden)]
9738 impl ::core::convert::From<validatorsCall> for UnderlyingRustTuple<'_> {
9739 fn from(value: validatorsCall) -> Self {
9740 (value.account,)
9741 }
9742 }
9743 #[automatically_derived]
9744 #[doc(hidden)]
9745 impl ::core::convert::From<UnderlyingRustTuple<'_>> for validatorsCall {
9746 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9747 Self { account: tuple.0 }
9748 }
9749 }
9750 }
9751 {
9752 #[doc(hidden)]
9753 #[allow(dead_code)]
9754 type UnderlyingSolTuple<'a> = (
9755 alloy::sol_types::sol_data::Uint<256>,
9756 ValidatorStatus,
9757 );
9758 #[doc(hidden)]
9759 type UnderlyingRustTuple<'a> = (
9760 alloy::sol_types::private::primitives::aliases::U256,
9761 <ValidatorStatus as alloy::sol_types::SolType>::RustType,
9762 );
9763 #[cfg(test)]
9764 #[allow(dead_code, unreachable_patterns)]
9765 fn _type_assertion(
9766 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
9767 ) {
9768 match _t {
9769 alloy_sol_types::private::AssertTypeEq::<
9770 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
9771 >(_) => {}
9772 }
9773 }
9774 #[automatically_derived]
9775 #[doc(hidden)]
9776 impl ::core::convert::From<validatorsReturn> for UnderlyingRustTuple<'_> {
9777 fn from(value: validatorsReturn) -> Self {
9778 (value.delegatedAmount, value.status)
9779 }
9780 }
9781 #[automatically_derived]
9782 #[doc(hidden)]
9783 impl ::core::convert::From<UnderlyingRustTuple<'_>> for validatorsReturn {
9784 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
9785 Self {
9786 delegatedAmount: tuple.0,
9787 status: tuple.1,
9788 }
9789 }
9790 }
9791 }
9792 impl validatorsReturn {
9793 fn _tokenize(
9794 &self,
9795 ) -> <validatorsCall as alloy_sol_types::SolCall>::ReturnToken<'_> {
9796 (
9797 <alloy::sol_types::sol_data::Uint<
9798 256,
9799 > as alloy_sol_types::SolType>::tokenize(&self.delegatedAmount),
9800 <ValidatorStatus as alloy_sol_types::SolType>::tokenize(&self.status),
9801 )
9802 }
9803 }
9804 #[automatically_derived]
9805 impl alloy_sol_types::SolCall for validatorsCall {
9806 type Parameters<'a> = (alloy::sol_types::sol_data::Address,);
9807 type Token<'a> = <Self::Parameters<
9808 'a,
9809 > as alloy_sol_types::SolType>::Token<'a>;
9810 type Return = validatorsReturn;
9811 type ReturnTuple<'a> = (
9812 alloy::sol_types::sol_data::Uint<256>,
9813 ValidatorStatus,
9814 );
9815 type ReturnToken<'a> = <Self::ReturnTuple<
9816 'a,
9817 > as alloy_sol_types::SolType>::Token<'a>;
9818 const SIGNATURE: &'static str = "validators(address)";
9819 const SELECTOR: [u8; 4] = [250u8, 82u8, 199u8, 216u8];
9820 #[inline]
9821 fn new<'a>(
9822 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
9823 ) -> Self {
9824 tuple.into()
9825 }
9826 #[inline]
9827 fn tokenize(&self) -> Self::Token<'_> {
9828 (
9829 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
9830 &self.account,
9831 ),
9832 )
9833 }
9834 #[inline]
9835 fn tokenize_returns(ret: &Self::Return) -> Self::ReturnToken<'_> {
9836 validatorsReturn::_tokenize(ret)
9837 }
9838 #[inline]
9839 fn abi_decode_returns(data: &[u8]) -> alloy_sol_types::Result<Self::Return> {
9840 <Self::ReturnTuple<
9841 '_,
9842 > as alloy_sol_types::SolType>::abi_decode_sequence(data)
9843 .map(Into::into)
9844 }
9845 #[inline]
9846 fn abi_decode_returns_validate(
9847 data: &[u8],
9848 ) -> alloy_sol_types::Result<Self::Return> {
9849 <Self::ReturnTuple<
9850 '_,
9851 > as alloy_sol_types::SolType>::abi_decode_sequence_validate(data)
9852 .map(Into::into)
9853 }
9854 }
9855 };
9856 #[derive(Clone)]
9858 #[derive(serde::Serialize, serde::Deserialize)]
9859 #[derive()]
9860 pub enum StakeTableCalls {
9861 #[allow(missing_docs)]
9862 UPGRADE_INTERFACE_VERSION(UPGRADE_INTERFACE_VERSIONCall),
9863 #[allow(missing_docs)]
9864 _hashBlsKey(_hashBlsKeyCall),
9865 #[allow(missing_docs)]
9866 blsKeys(blsKeysCall),
9867 #[allow(missing_docs)]
9868 claimValidatorExit(claimValidatorExitCall),
9869 #[allow(missing_docs)]
9870 claimWithdrawal(claimWithdrawalCall),
9871 #[allow(missing_docs)]
9872 delegate(delegateCall),
9873 #[allow(missing_docs)]
9874 delegations(delegationsCall),
9875 #[allow(missing_docs)]
9876 deregisterValidator(deregisterValidatorCall),
9877 #[allow(missing_docs)]
9878 exitEscrowPeriod(exitEscrowPeriodCall),
9879 #[allow(missing_docs)]
9880 getVersion(getVersionCall),
9881 #[allow(missing_docs)]
9882 initialize(initializeCall),
9883 #[allow(missing_docs)]
9884 initializedAtBlock(initializedAtBlockCall),
9885 #[allow(missing_docs)]
9886 lightClient(lightClientCall),
9887 #[allow(missing_docs)]
9888 owner(ownerCall),
9889 #[allow(missing_docs)]
9890 proxiableUUID(proxiableUUIDCall),
9891 #[allow(missing_docs)]
9892 registerValidator(registerValidatorCall),
9893 #[allow(missing_docs)]
9894 renounceOwnership(renounceOwnershipCall),
9895 #[allow(missing_docs)]
9896 token(tokenCall),
9897 #[allow(missing_docs)]
9898 transferOwnership(transferOwnershipCall),
9899 #[allow(missing_docs)]
9900 undelegate(undelegateCall),
9901 #[allow(missing_docs)]
9902 undelegations(undelegationsCall),
9903 #[allow(missing_docs)]
9904 updateConsensusKeys(updateConsensusKeysCall),
9905 #[allow(missing_docs)]
9906 upgradeToAndCall(upgradeToAndCallCall),
9907 #[allow(missing_docs)]
9908 validatorExits(validatorExitsCall),
9909 #[allow(missing_docs)]
9910 validators(validatorsCall),
9911 }
9912 impl StakeTableCalls {
9913 pub const SELECTORS: &'static [[u8; 4usize]] = &[
9920 [2u8, 110u8, 64u8, 43u8],
9921 [13u8, 142u8, 110u8, 44u8],
9922 [19u8, 185u8, 5u8, 122u8],
9923 [33u8, 64u8, 254u8, 205u8],
9924 [62u8, 157u8, 249u8, 181u8],
9925 [77u8, 153u8, 221u8, 22u8],
9926 [79u8, 30u8, 242u8, 134u8],
9927 [82u8, 209u8, 144u8, 45u8],
9928 [85u8, 68u8, 194u8, 241u8],
9929 [106u8, 145u8, 28u8, 207u8],
9930 [113u8, 80u8, 24u8, 166u8],
9931 [141u8, 165u8, 203u8, 91u8],
9932 [155u8, 48u8, 165u8, 230u8],
9933 [158u8, 154u8, 143u8, 49u8],
9934 [162u8, 215u8, 141u8, 213u8],
9935 [163u8, 6u8, 106u8, 171u8],
9936 [173u8, 60u8, 177u8, 204u8],
9937 [179u8, 230u8, 235u8, 213u8],
9938 [181u8, 112u8, 14u8, 104u8],
9939 [181u8, 236u8, 179u8, 68u8],
9940 [190u8, 32u8, 48u8, 148u8],
9941 [198u8, 72u8, 20u8, 221u8],
9942 [242u8, 253u8, 227u8, 139u8],
9943 [250u8, 82u8, 199u8, 216u8],
9944 [252u8, 12u8, 84u8, 106u8],
9945 ];
9946 pub const VARIANT_NAMES: &'static [&'static str] = &[
9948 ::core::stringify!(delegate),
9949 ::core::stringify!(getVersion),
9950 ::core::stringify!(registerValidator),
9951 ::core::stringify!(claimValidatorExit),
9952 ::core::stringify!(initializedAtBlock),
9953 ::core::stringify!(undelegate),
9954 ::core::stringify!(upgradeToAndCall),
9955 ::core::stringify!(proxiableUUID),
9956 ::core::stringify!(updateConsensusKeys),
9957 ::core::stringify!(deregisterValidator),
9958 ::core::stringify!(renounceOwnership),
9959 ::core::stringify!(owner),
9960 ::core::stringify!(_hashBlsKey),
9961 ::core::stringify!(exitEscrowPeriod),
9962 ::core::stringify!(undelegations),
9963 ::core::stringify!(claimWithdrawal),
9964 ::core::stringify!(UPGRADE_INTERFACE_VERSION),
9965 ::core::stringify!(blsKeys),
9966 ::core::stringify!(lightClient),
9967 ::core::stringify!(validatorExits),
9968 ::core::stringify!(initialize),
9969 ::core::stringify!(delegations),
9970 ::core::stringify!(transferOwnership),
9971 ::core::stringify!(validators),
9972 ::core::stringify!(token),
9973 ];
9974 pub const SIGNATURES: &'static [&'static str] = &[
9976 <delegateCall as alloy_sol_types::SolCall>::SIGNATURE,
9977 <getVersionCall as alloy_sol_types::SolCall>::SIGNATURE,
9978 <registerValidatorCall as alloy_sol_types::SolCall>::SIGNATURE,
9979 <claimValidatorExitCall as alloy_sol_types::SolCall>::SIGNATURE,
9980 <initializedAtBlockCall as alloy_sol_types::SolCall>::SIGNATURE,
9981 <undelegateCall as alloy_sol_types::SolCall>::SIGNATURE,
9982 <upgradeToAndCallCall as alloy_sol_types::SolCall>::SIGNATURE,
9983 <proxiableUUIDCall as alloy_sol_types::SolCall>::SIGNATURE,
9984 <updateConsensusKeysCall as alloy_sol_types::SolCall>::SIGNATURE,
9985 <deregisterValidatorCall as alloy_sol_types::SolCall>::SIGNATURE,
9986 <renounceOwnershipCall as alloy_sol_types::SolCall>::SIGNATURE,
9987 <ownerCall as alloy_sol_types::SolCall>::SIGNATURE,
9988 <_hashBlsKeyCall as alloy_sol_types::SolCall>::SIGNATURE,
9989 <exitEscrowPeriodCall as alloy_sol_types::SolCall>::SIGNATURE,
9990 <undelegationsCall as alloy_sol_types::SolCall>::SIGNATURE,
9991 <claimWithdrawalCall as alloy_sol_types::SolCall>::SIGNATURE,
9992 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::SIGNATURE,
9993 <blsKeysCall as alloy_sol_types::SolCall>::SIGNATURE,
9994 <lightClientCall as alloy_sol_types::SolCall>::SIGNATURE,
9995 <validatorExitsCall as alloy_sol_types::SolCall>::SIGNATURE,
9996 <initializeCall as alloy_sol_types::SolCall>::SIGNATURE,
9997 <delegationsCall as alloy_sol_types::SolCall>::SIGNATURE,
9998 <transferOwnershipCall as alloy_sol_types::SolCall>::SIGNATURE,
9999 <validatorsCall as alloy_sol_types::SolCall>::SIGNATURE,
10000 <tokenCall as alloy_sol_types::SolCall>::SIGNATURE,
10001 ];
10002 #[inline]
10004 pub fn signature_by_selector(
10005 selector: [u8; 4usize],
10006 ) -> ::core::option::Option<&'static str> {
10007 match Self::SELECTORS.binary_search(&selector) {
10008 ::core::result::Result::Ok(idx) => {
10009 ::core::option::Option::Some(Self::SIGNATURES[idx])
10010 }
10011 ::core::result::Result::Err(_) => ::core::option::Option::None,
10012 }
10013 }
10014 #[inline]
10016 pub fn name_by_selector(
10017 selector: [u8; 4usize],
10018 ) -> ::core::option::Option<&'static str> {
10019 let sig = Self::signature_by_selector(selector)?;
10020 sig.split_once('(').map(|(name, _)| name)
10021 }
10022 }
10023 #[automatically_derived]
10024 impl alloy_sol_types::SolInterface for StakeTableCalls {
10025 const NAME: &'static str = "StakeTableCalls";
10026 const MIN_DATA_LENGTH: usize = 0usize;
10027 const COUNT: usize = 25usize;
10028 #[inline]
10029 fn selector(&self) -> [u8; 4] {
10030 match self {
10031 Self::UPGRADE_INTERFACE_VERSION(_) => {
10032 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::SELECTOR
10033 }
10034 Self::_hashBlsKey(_) => {
10035 <_hashBlsKeyCall as alloy_sol_types::SolCall>::SELECTOR
10036 }
10037 Self::blsKeys(_) => <blsKeysCall as alloy_sol_types::SolCall>::SELECTOR,
10038 Self::claimValidatorExit(_) => {
10039 <claimValidatorExitCall as alloy_sol_types::SolCall>::SELECTOR
10040 }
10041 Self::claimWithdrawal(_) => {
10042 <claimWithdrawalCall as alloy_sol_types::SolCall>::SELECTOR
10043 }
10044 Self::delegate(_) => <delegateCall as alloy_sol_types::SolCall>::SELECTOR,
10045 Self::delegations(_) => {
10046 <delegationsCall as alloy_sol_types::SolCall>::SELECTOR
10047 }
10048 Self::deregisterValidator(_) => {
10049 <deregisterValidatorCall as alloy_sol_types::SolCall>::SELECTOR
10050 }
10051 Self::exitEscrowPeriod(_) => {
10052 <exitEscrowPeriodCall as alloy_sol_types::SolCall>::SELECTOR
10053 }
10054 Self::getVersion(_) => {
10055 <getVersionCall as alloy_sol_types::SolCall>::SELECTOR
10056 }
10057 Self::initialize(_) => {
10058 <initializeCall as alloy_sol_types::SolCall>::SELECTOR
10059 }
10060 Self::initializedAtBlock(_) => {
10061 <initializedAtBlockCall as alloy_sol_types::SolCall>::SELECTOR
10062 }
10063 Self::lightClient(_) => {
10064 <lightClientCall as alloy_sol_types::SolCall>::SELECTOR
10065 }
10066 Self::owner(_) => <ownerCall as alloy_sol_types::SolCall>::SELECTOR,
10067 Self::proxiableUUID(_) => {
10068 <proxiableUUIDCall as alloy_sol_types::SolCall>::SELECTOR
10069 }
10070 Self::registerValidator(_) => {
10071 <registerValidatorCall as alloy_sol_types::SolCall>::SELECTOR
10072 }
10073 Self::renounceOwnership(_) => {
10074 <renounceOwnershipCall as alloy_sol_types::SolCall>::SELECTOR
10075 }
10076 Self::token(_) => <tokenCall as alloy_sol_types::SolCall>::SELECTOR,
10077 Self::transferOwnership(_) => {
10078 <transferOwnershipCall as alloy_sol_types::SolCall>::SELECTOR
10079 }
10080 Self::undelegate(_) => {
10081 <undelegateCall as alloy_sol_types::SolCall>::SELECTOR
10082 }
10083 Self::undelegations(_) => {
10084 <undelegationsCall as alloy_sol_types::SolCall>::SELECTOR
10085 }
10086 Self::updateConsensusKeys(_) => {
10087 <updateConsensusKeysCall as alloy_sol_types::SolCall>::SELECTOR
10088 }
10089 Self::upgradeToAndCall(_) => {
10090 <upgradeToAndCallCall as alloy_sol_types::SolCall>::SELECTOR
10091 }
10092 Self::validatorExits(_) => {
10093 <validatorExitsCall as alloy_sol_types::SolCall>::SELECTOR
10094 }
10095 Self::validators(_) => {
10096 <validatorsCall as alloy_sol_types::SolCall>::SELECTOR
10097 }
10098 }
10099 }
10100 #[inline]
10101 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
10102 Self::SELECTORS.get(i).copied()
10103 }
10104 #[inline]
10105 fn valid_selector(selector: [u8; 4]) -> bool {
10106 Self::SELECTORS.binary_search(&selector).is_ok()
10107 }
10108 #[inline]
10109 #[allow(non_snake_case)]
10110 fn abi_decode_raw(
10111 selector: [u8; 4],
10112 data: &[u8],
10113 ) -> alloy_sol_types::Result<Self> {
10114 static DECODE_SHIMS: &[fn(
10115 &[u8],
10116 ) -> alloy_sol_types::Result<StakeTableCalls>] = &[
10117 {
10118 fn delegate(
10119 data: &[u8],
10120 ) -> alloy_sol_types::Result<StakeTableCalls> {
10121 <delegateCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
10122 .map(StakeTableCalls::delegate)
10123 }
10124 delegate
10125 },
10126 {
10127 fn getVersion(
10128 data: &[u8],
10129 ) -> alloy_sol_types::Result<StakeTableCalls> {
10130 <getVersionCall as alloy_sol_types::SolCall>::abi_decode_raw(
10131 data,
10132 )
10133 .map(StakeTableCalls::getVersion)
10134 }
10135 getVersion
10136 },
10137 {
10138 fn registerValidator(
10139 data: &[u8],
10140 ) -> alloy_sol_types::Result<StakeTableCalls> {
10141 <registerValidatorCall as alloy_sol_types::SolCall>::abi_decode_raw(
10142 data,
10143 )
10144 .map(StakeTableCalls::registerValidator)
10145 }
10146 registerValidator
10147 },
10148 {
10149 fn claimValidatorExit(
10150 data: &[u8],
10151 ) -> alloy_sol_types::Result<StakeTableCalls> {
10152 <claimValidatorExitCall as alloy_sol_types::SolCall>::abi_decode_raw(
10153 data,
10154 )
10155 .map(StakeTableCalls::claimValidatorExit)
10156 }
10157 claimValidatorExit
10158 },
10159 {
10160 fn initializedAtBlock(
10161 data: &[u8],
10162 ) -> alloy_sol_types::Result<StakeTableCalls> {
10163 <initializedAtBlockCall as alloy_sol_types::SolCall>::abi_decode_raw(
10164 data,
10165 )
10166 .map(StakeTableCalls::initializedAtBlock)
10167 }
10168 initializedAtBlock
10169 },
10170 {
10171 fn undelegate(
10172 data: &[u8],
10173 ) -> alloy_sol_types::Result<StakeTableCalls> {
10174 <undelegateCall as alloy_sol_types::SolCall>::abi_decode_raw(
10175 data,
10176 )
10177 .map(StakeTableCalls::undelegate)
10178 }
10179 undelegate
10180 },
10181 {
10182 fn upgradeToAndCall(
10183 data: &[u8],
10184 ) -> alloy_sol_types::Result<StakeTableCalls> {
10185 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_decode_raw(
10186 data,
10187 )
10188 .map(StakeTableCalls::upgradeToAndCall)
10189 }
10190 upgradeToAndCall
10191 },
10192 {
10193 fn proxiableUUID(
10194 data: &[u8],
10195 ) -> alloy_sol_types::Result<StakeTableCalls> {
10196 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_decode_raw(
10197 data,
10198 )
10199 .map(StakeTableCalls::proxiableUUID)
10200 }
10201 proxiableUUID
10202 },
10203 {
10204 fn updateConsensusKeys(
10205 data: &[u8],
10206 ) -> alloy_sol_types::Result<StakeTableCalls> {
10207 <updateConsensusKeysCall as alloy_sol_types::SolCall>::abi_decode_raw(
10208 data,
10209 )
10210 .map(StakeTableCalls::updateConsensusKeys)
10211 }
10212 updateConsensusKeys
10213 },
10214 {
10215 fn deregisterValidator(
10216 data: &[u8],
10217 ) -> alloy_sol_types::Result<StakeTableCalls> {
10218 <deregisterValidatorCall as alloy_sol_types::SolCall>::abi_decode_raw(
10219 data,
10220 )
10221 .map(StakeTableCalls::deregisterValidator)
10222 }
10223 deregisterValidator
10224 },
10225 {
10226 fn renounceOwnership(
10227 data: &[u8],
10228 ) -> alloy_sol_types::Result<StakeTableCalls> {
10229 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw(
10230 data,
10231 )
10232 .map(StakeTableCalls::renounceOwnership)
10233 }
10234 renounceOwnership
10235 },
10236 {
10237 fn owner(data: &[u8]) -> alloy_sol_types::Result<StakeTableCalls> {
10238 <ownerCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
10239 .map(StakeTableCalls::owner)
10240 }
10241 owner
10242 },
10243 {
10244 fn _hashBlsKey(
10245 data: &[u8],
10246 ) -> alloy_sol_types::Result<StakeTableCalls> {
10247 <_hashBlsKeyCall as alloy_sol_types::SolCall>::abi_decode_raw(
10248 data,
10249 )
10250 .map(StakeTableCalls::_hashBlsKey)
10251 }
10252 _hashBlsKey
10253 },
10254 {
10255 fn exitEscrowPeriod(
10256 data: &[u8],
10257 ) -> alloy_sol_types::Result<StakeTableCalls> {
10258 <exitEscrowPeriodCall as alloy_sol_types::SolCall>::abi_decode_raw(
10259 data,
10260 )
10261 .map(StakeTableCalls::exitEscrowPeriod)
10262 }
10263 exitEscrowPeriod
10264 },
10265 {
10266 fn undelegations(
10267 data: &[u8],
10268 ) -> alloy_sol_types::Result<StakeTableCalls> {
10269 <undelegationsCall as alloy_sol_types::SolCall>::abi_decode_raw(
10270 data,
10271 )
10272 .map(StakeTableCalls::undelegations)
10273 }
10274 undelegations
10275 },
10276 {
10277 fn claimWithdrawal(
10278 data: &[u8],
10279 ) -> alloy_sol_types::Result<StakeTableCalls> {
10280 <claimWithdrawalCall as alloy_sol_types::SolCall>::abi_decode_raw(
10281 data,
10282 )
10283 .map(StakeTableCalls::claimWithdrawal)
10284 }
10285 claimWithdrawal
10286 },
10287 {
10288 fn UPGRADE_INTERFACE_VERSION(
10289 data: &[u8],
10290 ) -> alloy_sol_types::Result<StakeTableCalls> {
10291 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_decode_raw(
10292 data,
10293 )
10294 .map(StakeTableCalls::UPGRADE_INTERFACE_VERSION)
10295 }
10296 UPGRADE_INTERFACE_VERSION
10297 },
10298 {
10299 fn blsKeys(data: &[u8]) -> alloy_sol_types::Result<StakeTableCalls> {
10300 <blsKeysCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
10301 .map(StakeTableCalls::blsKeys)
10302 }
10303 blsKeys
10304 },
10305 {
10306 fn lightClient(
10307 data: &[u8],
10308 ) -> alloy_sol_types::Result<StakeTableCalls> {
10309 <lightClientCall as alloy_sol_types::SolCall>::abi_decode_raw(
10310 data,
10311 )
10312 .map(StakeTableCalls::lightClient)
10313 }
10314 lightClient
10315 },
10316 {
10317 fn validatorExits(
10318 data: &[u8],
10319 ) -> alloy_sol_types::Result<StakeTableCalls> {
10320 <validatorExitsCall as alloy_sol_types::SolCall>::abi_decode_raw(
10321 data,
10322 )
10323 .map(StakeTableCalls::validatorExits)
10324 }
10325 validatorExits
10326 },
10327 {
10328 fn initialize(
10329 data: &[u8],
10330 ) -> alloy_sol_types::Result<StakeTableCalls> {
10331 <initializeCall as alloy_sol_types::SolCall>::abi_decode_raw(
10332 data,
10333 )
10334 .map(StakeTableCalls::initialize)
10335 }
10336 initialize
10337 },
10338 {
10339 fn delegations(
10340 data: &[u8],
10341 ) -> alloy_sol_types::Result<StakeTableCalls> {
10342 <delegationsCall as alloy_sol_types::SolCall>::abi_decode_raw(
10343 data,
10344 )
10345 .map(StakeTableCalls::delegations)
10346 }
10347 delegations
10348 },
10349 {
10350 fn transferOwnership(
10351 data: &[u8],
10352 ) -> alloy_sol_types::Result<StakeTableCalls> {
10353 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw(
10354 data,
10355 )
10356 .map(StakeTableCalls::transferOwnership)
10357 }
10358 transferOwnership
10359 },
10360 {
10361 fn validators(
10362 data: &[u8],
10363 ) -> alloy_sol_types::Result<StakeTableCalls> {
10364 <validatorsCall as alloy_sol_types::SolCall>::abi_decode_raw(
10365 data,
10366 )
10367 .map(StakeTableCalls::validators)
10368 }
10369 validators
10370 },
10371 {
10372 fn token(data: &[u8]) -> alloy_sol_types::Result<StakeTableCalls> {
10373 <tokenCall as alloy_sol_types::SolCall>::abi_decode_raw(data)
10374 .map(StakeTableCalls::token)
10375 }
10376 token
10377 },
10378 ];
10379 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
10380 return Err(
10381 alloy_sol_types::Error::unknown_selector(
10382 <Self as alloy_sol_types::SolInterface>::NAME,
10383 selector,
10384 ),
10385 );
10386 };
10387 DECODE_SHIMS[idx](data)
10388 }
10389 #[inline]
10390 #[allow(non_snake_case)]
10391 fn abi_decode_raw_validate(
10392 selector: [u8; 4],
10393 data: &[u8],
10394 ) -> alloy_sol_types::Result<Self> {
10395 static DECODE_VALIDATE_SHIMS: &[fn(
10396 &[u8],
10397 ) -> alloy_sol_types::Result<StakeTableCalls>] = &[
10398 {
10399 fn delegate(
10400 data: &[u8],
10401 ) -> alloy_sol_types::Result<StakeTableCalls> {
10402 <delegateCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10403 data,
10404 )
10405 .map(StakeTableCalls::delegate)
10406 }
10407 delegate
10408 },
10409 {
10410 fn getVersion(
10411 data: &[u8],
10412 ) -> alloy_sol_types::Result<StakeTableCalls> {
10413 <getVersionCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10414 data,
10415 )
10416 .map(StakeTableCalls::getVersion)
10417 }
10418 getVersion
10419 },
10420 {
10421 fn registerValidator(
10422 data: &[u8],
10423 ) -> alloy_sol_types::Result<StakeTableCalls> {
10424 <registerValidatorCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10425 data,
10426 )
10427 .map(StakeTableCalls::registerValidator)
10428 }
10429 registerValidator
10430 },
10431 {
10432 fn claimValidatorExit(
10433 data: &[u8],
10434 ) -> alloy_sol_types::Result<StakeTableCalls> {
10435 <claimValidatorExitCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10436 data,
10437 )
10438 .map(StakeTableCalls::claimValidatorExit)
10439 }
10440 claimValidatorExit
10441 },
10442 {
10443 fn initializedAtBlock(
10444 data: &[u8],
10445 ) -> alloy_sol_types::Result<StakeTableCalls> {
10446 <initializedAtBlockCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10447 data,
10448 )
10449 .map(StakeTableCalls::initializedAtBlock)
10450 }
10451 initializedAtBlock
10452 },
10453 {
10454 fn undelegate(
10455 data: &[u8],
10456 ) -> alloy_sol_types::Result<StakeTableCalls> {
10457 <undelegateCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10458 data,
10459 )
10460 .map(StakeTableCalls::undelegate)
10461 }
10462 undelegate
10463 },
10464 {
10465 fn upgradeToAndCall(
10466 data: &[u8],
10467 ) -> alloy_sol_types::Result<StakeTableCalls> {
10468 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10469 data,
10470 )
10471 .map(StakeTableCalls::upgradeToAndCall)
10472 }
10473 upgradeToAndCall
10474 },
10475 {
10476 fn proxiableUUID(
10477 data: &[u8],
10478 ) -> alloy_sol_types::Result<StakeTableCalls> {
10479 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10480 data,
10481 )
10482 .map(StakeTableCalls::proxiableUUID)
10483 }
10484 proxiableUUID
10485 },
10486 {
10487 fn updateConsensusKeys(
10488 data: &[u8],
10489 ) -> alloy_sol_types::Result<StakeTableCalls> {
10490 <updateConsensusKeysCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10491 data,
10492 )
10493 .map(StakeTableCalls::updateConsensusKeys)
10494 }
10495 updateConsensusKeys
10496 },
10497 {
10498 fn deregisterValidator(
10499 data: &[u8],
10500 ) -> alloy_sol_types::Result<StakeTableCalls> {
10501 <deregisterValidatorCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10502 data,
10503 )
10504 .map(StakeTableCalls::deregisterValidator)
10505 }
10506 deregisterValidator
10507 },
10508 {
10509 fn renounceOwnership(
10510 data: &[u8],
10511 ) -> alloy_sol_types::Result<StakeTableCalls> {
10512 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10513 data,
10514 )
10515 .map(StakeTableCalls::renounceOwnership)
10516 }
10517 renounceOwnership
10518 },
10519 {
10520 fn owner(data: &[u8]) -> alloy_sol_types::Result<StakeTableCalls> {
10521 <ownerCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10522 data,
10523 )
10524 .map(StakeTableCalls::owner)
10525 }
10526 owner
10527 },
10528 {
10529 fn _hashBlsKey(
10530 data: &[u8],
10531 ) -> alloy_sol_types::Result<StakeTableCalls> {
10532 <_hashBlsKeyCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10533 data,
10534 )
10535 .map(StakeTableCalls::_hashBlsKey)
10536 }
10537 _hashBlsKey
10538 },
10539 {
10540 fn exitEscrowPeriod(
10541 data: &[u8],
10542 ) -> alloy_sol_types::Result<StakeTableCalls> {
10543 <exitEscrowPeriodCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10544 data,
10545 )
10546 .map(StakeTableCalls::exitEscrowPeriod)
10547 }
10548 exitEscrowPeriod
10549 },
10550 {
10551 fn undelegations(
10552 data: &[u8],
10553 ) -> alloy_sol_types::Result<StakeTableCalls> {
10554 <undelegationsCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10555 data,
10556 )
10557 .map(StakeTableCalls::undelegations)
10558 }
10559 undelegations
10560 },
10561 {
10562 fn claimWithdrawal(
10563 data: &[u8],
10564 ) -> alloy_sol_types::Result<StakeTableCalls> {
10565 <claimWithdrawalCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10566 data,
10567 )
10568 .map(StakeTableCalls::claimWithdrawal)
10569 }
10570 claimWithdrawal
10571 },
10572 {
10573 fn UPGRADE_INTERFACE_VERSION(
10574 data: &[u8],
10575 ) -> alloy_sol_types::Result<StakeTableCalls> {
10576 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10577 data,
10578 )
10579 .map(StakeTableCalls::UPGRADE_INTERFACE_VERSION)
10580 }
10581 UPGRADE_INTERFACE_VERSION
10582 },
10583 {
10584 fn blsKeys(data: &[u8]) -> alloy_sol_types::Result<StakeTableCalls> {
10585 <blsKeysCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10586 data,
10587 )
10588 .map(StakeTableCalls::blsKeys)
10589 }
10590 blsKeys
10591 },
10592 {
10593 fn lightClient(
10594 data: &[u8],
10595 ) -> alloy_sol_types::Result<StakeTableCalls> {
10596 <lightClientCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10597 data,
10598 )
10599 .map(StakeTableCalls::lightClient)
10600 }
10601 lightClient
10602 },
10603 {
10604 fn validatorExits(
10605 data: &[u8],
10606 ) -> alloy_sol_types::Result<StakeTableCalls> {
10607 <validatorExitsCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10608 data,
10609 )
10610 .map(StakeTableCalls::validatorExits)
10611 }
10612 validatorExits
10613 },
10614 {
10615 fn initialize(
10616 data: &[u8],
10617 ) -> alloy_sol_types::Result<StakeTableCalls> {
10618 <initializeCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10619 data,
10620 )
10621 .map(StakeTableCalls::initialize)
10622 }
10623 initialize
10624 },
10625 {
10626 fn delegations(
10627 data: &[u8],
10628 ) -> alloy_sol_types::Result<StakeTableCalls> {
10629 <delegationsCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10630 data,
10631 )
10632 .map(StakeTableCalls::delegations)
10633 }
10634 delegations
10635 },
10636 {
10637 fn transferOwnership(
10638 data: &[u8],
10639 ) -> alloy_sol_types::Result<StakeTableCalls> {
10640 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10641 data,
10642 )
10643 .map(StakeTableCalls::transferOwnership)
10644 }
10645 transferOwnership
10646 },
10647 {
10648 fn validators(
10649 data: &[u8],
10650 ) -> alloy_sol_types::Result<StakeTableCalls> {
10651 <validatorsCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10652 data,
10653 )
10654 .map(StakeTableCalls::validators)
10655 }
10656 validators
10657 },
10658 {
10659 fn token(data: &[u8]) -> alloy_sol_types::Result<StakeTableCalls> {
10660 <tokenCall as alloy_sol_types::SolCall>::abi_decode_raw_validate(
10661 data,
10662 )
10663 .map(StakeTableCalls::token)
10664 }
10665 token
10666 },
10667 ];
10668 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
10669 return Err(
10670 alloy_sol_types::Error::unknown_selector(
10671 <Self as alloy_sol_types::SolInterface>::NAME,
10672 selector,
10673 ),
10674 );
10675 };
10676 DECODE_VALIDATE_SHIMS[idx](data)
10677 }
10678 #[inline]
10679 fn abi_encoded_size(&self) -> usize {
10680 match self {
10681 Self::UPGRADE_INTERFACE_VERSION(inner) => {
10682 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_encoded_size(
10683 inner,
10684 )
10685 }
10686 Self::_hashBlsKey(inner) => {
10687 <_hashBlsKeyCall as alloy_sol_types::SolCall>::abi_encoded_size(
10688 inner,
10689 )
10690 }
10691 Self::blsKeys(inner) => {
10692 <blsKeysCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
10693 }
10694 Self::claimValidatorExit(inner) => {
10695 <claimValidatorExitCall as alloy_sol_types::SolCall>::abi_encoded_size(
10696 inner,
10697 )
10698 }
10699 Self::claimWithdrawal(inner) => {
10700 <claimWithdrawalCall as alloy_sol_types::SolCall>::abi_encoded_size(
10701 inner,
10702 )
10703 }
10704 Self::delegate(inner) => {
10705 <delegateCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
10706 }
10707 Self::delegations(inner) => {
10708 <delegationsCall as alloy_sol_types::SolCall>::abi_encoded_size(
10709 inner,
10710 )
10711 }
10712 Self::deregisterValidator(inner) => {
10713 <deregisterValidatorCall as alloy_sol_types::SolCall>::abi_encoded_size(
10714 inner,
10715 )
10716 }
10717 Self::exitEscrowPeriod(inner) => {
10718 <exitEscrowPeriodCall as alloy_sol_types::SolCall>::abi_encoded_size(
10719 inner,
10720 )
10721 }
10722 Self::getVersion(inner) => {
10723 <getVersionCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
10724 }
10725 Self::initialize(inner) => {
10726 <initializeCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
10727 }
10728 Self::initializedAtBlock(inner) => {
10729 <initializedAtBlockCall as alloy_sol_types::SolCall>::abi_encoded_size(
10730 inner,
10731 )
10732 }
10733 Self::lightClient(inner) => {
10734 <lightClientCall as alloy_sol_types::SolCall>::abi_encoded_size(
10735 inner,
10736 )
10737 }
10738 Self::owner(inner) => {
10739 <ownerCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
10740 }
10741 Self::proxiableUUID(inner) => {
10742 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_encoded_size(
10743 inner,
10744 )
10745 }
10746 Self::registerValidator(inner) => {
10747 <registerValidatorCall as alloy_sol_types::SolCall>::abi_encoded_size(
10748 inner,
10749 )
10750 }
10751 Self::renounceOwnership(inner) => {
10752 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_encoded_size(
10753 inner,
10754 )
10755 }
10756 Self::token(inner) => {
10757 <tokenCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
10758 }
10759 Self::transferOwnership(inner) => {
10760 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_encoded_size(
10761 inner,
10762 )
10763 }
10764 Self::undelegate(inner) => {
10765 <undelegateCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
10766 }
10767 Self::undelegations(inner) => {
10768 <undelegationsCall as alloy_sol_types::SolCall>::abi_encoded_size(
10769 inner,
10770 )
10771 }
10772 Self::updateConsensusKeys(inner) => {
10773 <updateConsensusKeysCall as alloy_sol_types::SolCall>::abi_encoded_size(
10774 inner,
10775 )
10776 }
10777 Self::upgradeToAndCall(inner) => {
10778 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_encoded_size(
10779 inner,
10780 )
10781 }
10782 Self::validatorExits(inner) => {
10783 <validatorExitsCall as alloy_sol_types::SolCall>::abi_encoded_size(
10784 inner,
10785 )
10786 }
10787 Self::validators(inner) => {
10788 <validatorsCall as alloy_sol_types::SolCall>::abi_encoded_size(inner)
10789 }
10790 }
10791 }
10792 #[inline]
10793 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
10794 match self {
10795 Self::UPGRADE_INTERFACE_VERSION(inner) => {
10796 <UPGRADE_INTERFACE_VERSIONCall as alloy_sol_types::SolCall>::abi_encode_raw(
10797 inner,
10798 out,
10799 )
10800 }
10801 Self::_hashBlsKey(inner) => {
10802 <_hashBlsKeyCall as alloy_sol_types::SolCall>::abi_encode_raw(
10803 inner,
10804 out,
10805 )
10806 }
10807 Self::blsKeys(inner) => {
10808 <blsKeysCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
10809 }
10810 Self::claimValidatorExit(inner) => {
10811 <claimValidatorExitCall as alloy_sol_types::SolCall>::abi_encode_raw(
10812 inner,
10813 out,
10814 )
10815 }
10816 Self::claimWithdrawal(inner) => {
10817 <claimWithdrawalCall as alloy_sol_types::SolCall>::abi_encode_raw(
10818 inner,
10819 out,
10820 )
10821 }
10822 Self::delegate(inner) => {
10823 <delegateCall as alloy_sol_types::SolCall>::abi_encode_raw(
10824 inner,
10825 out,
10826 )
10827 }
10828 Self::delegations(inner) => {
10829 <delegationsCall as alloy_sol_types::SolCall>::abi_encode_raw(
10830 inner,
10831 out,
10832 )
10833 }
10834 Self::deregisterValidator(inner) => {
10835 <deregisterValidatorCall as alloy_sol_types::SolCall>::abi_encode_raw(
10836 inner,
10837 out,
10838 )
10839 }
10840 Self::exitEscrowPeriod(inner) => {
10841 <exitEscrowPeriodCall as alloy_sol_types::SolCall>::abi_encode_raw(
10842 inner,
10843 out,
10844 )
10845 }
10846 Self::getVersion(inner) => {
10847 <getVersionCall as alloy_sol_types::SolCall>::abi_encode_raw(
10848 inner,
10849 out,
10850 )
10851 }
10852 Self::initialize(inner) => {
10853 <initializeCall as alloy_sol_types::SolCall>::abi_encode_raw(
10854 inner,
10855 out,
10856 )
10857 }
10858 Self::initializedAtBlock(inner) => {
10859 <initializedAtBlockCall as alloy_sol_types::SolCall>::abi_encode_raw(
10860 inner,
10861 out,
10862 )
10863 }
10864 Self::lightClient(inner) => {
10865 <lightClientCall as alloy_sol_types::SolCall>::abi_encode_raw(
10866 inner,
10867 out,
10868 )
10869 }
10870 Self::owner(inner) => {
10871 <ownerCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
10872 }
10873 Self::proxiableUUID(inner) => {
10874 <proxiableUUIDCall as alloy_sol_types::SolCall>::abi_encode_raw(
10875 inner,
10876 out,
10877 )
10878 }
10879 Self::registerValidator(inner) => {
10880 <registerValidatorCall as alloy_sol_types::SolCall>::abi_encode_raw(
10881 inner,
10882 out,
10883 )
10884 }
10885 Self::renounceOwnership(inner) => {
10886 <renounceOwnershipCall as alloy_sol_types::SolCall>::abi_encode_raw(
10887 inner,
10888 out,
10889 )
10890 }
10891 Self::token(inner) => {
10892 <tokenCall as alloy_sol_types::SolCall>::abi_encode_raw(inner, out)
10893 }
10894 Self::transferOwnership(inner) => {
10895 <transferOwnershipCall as alloy_sol_types::SolCall>::abi_encode_raw(
10896 inner,
10897 out,
10898 )
10899 }
10900 Self::undelegate(inner) => {
10901 <undelegateCall as alloy_sol_types::SolCall>::abi_encode_raw(
10902 inner,
10903 out,
10904 )
10905 }
10906 Self::undelegations(inner) => {
10907 <undelegationsCall as alloy_sol_types::SolCall>::abi_encode_raw(
10908 inner,
10909 out,
10910 )
10911 }
10912 Self::updateConsensusKeys(inner) => {
10913 <updateConsensusKeysCall as alloy_sol_types::SolCall>::abi_encode_raw(
10914 inner,
10915 out,
10916 )
10917 }
10918 Self::upgradeToAndCall(inner) => {
10919 <upgradeToAndCallCall as alloy_sol_types::SolCall>::abi_encode_raw(
10920 inner,
10921 out,
10922 )
10923 }
10924 Self::validatorExits(inner) => {
10925 <validatorExitsCall as alloy_sol_types::SolCall>::abi_encode_raw(
10926 inner,
10927 out,
10928 )
10929 }
10930 Self::validators(inner) => {
10931 <validatorsCall as alloy_sol_types::SolCall>::abi_encode_raw(
10932 inner,
10933 out,
10934 )
10935 }
10936 }
10937 }
10938 }
10939 #[derive(Clone)]
10941 #[derive(serde::Serialize, serde::Deserialize)]
10942 #[derive(Debug, PartialEq, Eq, Hash)]
10943 pub enum StakeTableErrors {
10944 #[allow(missing_docs)]
10945 AddressEmptyCode(AddressEmptyCode),
10946 #[allow(missing_docs)]
10947 BLSSigIsInfinity(BLSSigIsInfinity),
10948 #[allow(missing_docs)]
10949 BLSSigVerificationFailed(BLSSigVerificationFailed),
10950 #[allow(missing_docs)]
10951 BLSVKIsInfinity(BLSVKIsInfinity),
10952 #[allow(missing_docs)]
10953 BN254PairingProdFailed(BN254PairingProdFailed),
10954 #[allow(missing_docs)]
10955 BlsKeyAlreadyUsed(BlsKeyAlreadyUsed),
10956 #[allow(missing_docs)]
10957 ERC1967InvalidImplementation(ERC1967InvalidImplementation),
10958 #[allow(missing_docs)]
10959 ERC1967NonPayable(ERC1967NonPayable),
10960 #[allow(missing_docs)]
10961 ExitEscrowPeriodInvalid(ExitEscrowPeriodInvalid),
10962 #[allow(missing_docs)]
10963 FailedInnerCall(FailedInnerCall),
10964 #[allow(missing_docs)]
10965 InsufficientAllowance(InsufficientAllowance),
10966 #[allow(missing_docs)]
10967 InsufficientBalance(InsufficientBalance),
10968 #[allow(missing_docs)]
10969 InvalidCommission(InvalidCommission),
10970 #[allow(missing_docs)]
10971 InvalidG1(InvalidG1),
10972 #[allow(missing_docs)]
10973 InvalidInitialization(InvalidInitialization),
10974 #[allow(missing_docs)]
10975 InvalidSchnorrVK(InvalidSchnorrVK),
10976 #[allow(missing_docs)]
10977 NotInitializing(NotInitializing),
10978 #[allow(missing_docs)]
10979 NothingToWithdraw(NothingToWithdraw),
10980 #[allow(missing_docs)]
10981 OwnableInvalidOwner(OwnableInvalidOwner),
10982 #[allow(missing_docs)]
10983 OwnableUnauthorizedAccount(OwnableUnauthorizedAccount),
10984 #[allow(missing_docs)]
10985 OwnershipCannotBeRenounced(OwnershipCannotBeRenounced),
10986 #[allow(missing_docs)]
10987 PowPrecompileFailed(PowPrecompileFailed),
10988 #[allow(missing_docs)]
10989 PrematureWithdrawal(PrematureWithdrawal),
10990 #[allow(missing_docs)]
10991 UUPSUnauthorizedCallContext(UUPSUnauthorizedCallContext),
10992 #[allow(missing_docs)]
10993 UUPSUnsupportedProxiableUUID(UUPSUnsupportedProxiableUUID),
10994 #[allow(missing_docs)]
10995 UndelegationAlreadyExists(UndelegationAlreadyExists),
10996 #[allow(missing_docs)]
10997 ValidatorAlreadyExited(ValidatorAlreadyExited),
10998 #[allow(missing_docs)]
10999 ValidatorAlreadyRegistered(ValidatorAlreadyRegistered),
11000 #[allow(missing_docs)]
11001 ValidatorInactive(ValidatorInactive),
11002 #[allow(missing_docs)]
11003 ValidatorNotExited(ValidatorNotExited),
11004 #[allow(missing_docs)]
11005 ZeroAddress(ZeroAddress),
11006 #[allow(missing_docs)]
11007 ZeroAmount(ZeroAmount),
11008 }
11009 impl StakeTableErrors {
11010 pub const SELECTORS: &'static [[u8; 4usize]] = &[
11017 [1u8, 181u8, 20u8, 174u8],
11018 [6u8, 207u8, 67u8, 143u8],
11019 [12u8, 237u8, 62u8, 80u8],
11020 [17u8, 140u8, 218u8, 167u8],
11021 [20u8, 37u8, 234u8, 66u8],
11022 [30u8, 79u8, 189u8, 247u8],
11023 [31u8, 42u8, 32u8, 5u8],
11024 [42u8, 27u8, 45u8, 216u8],
11025 [47u8, 171u8, 146u8, 202u8],
11026 [50u8, 116u8, 250u8, 100u8],
11027 [76u8, 156u8, 140u8, 227u8],
11028 [80u8, 138u8, 121u8, 63u8],
11029 [90u8, 119u8, 67u8, 87u8],
11030 [116u8, 39u8, 35u8, 50u8],
11031 [146u8, 102u8, 83u8, 81u8],
11032 [153u8, 115u8, 247u8, 216u8],
11033 [153u8, 150u8, 179u8, 21u8],
11034 [158u8, 120u8, 209u8, 76u8],
11035 [170u8, 29u8, 73u8, 164u8],
11036 [179u8, 152u8, 151u8, 159u8],
11037 [181u8, 126u8, 33u8, 223u8],
11038 [188u8, 134u8, 197u8, 154u8],
11039 [194u8, 6u8, 51u8, 79u8],
11040 [208u8, 208u8, 79u8, 96u8],
11041 [212u8, 35u8, 164u8, 241u8],
11042 [215u8, 230u8, 188u8, 248u8],
11043 [217u8, 46u8, 35u8, 61u8],
11044 [220u8, 129u8, 219u8, 133u8],
11045 [224u8, 124u8, 141u8, 186u8],
11046 [234u8, 180u8, 169u8, 99u8],
11047 [242u8, 83u8, 20u8, 166u8],
11048 [249u8, 46u8, 232u8, 169u8],
11049 ];
11050 pub const VARIANT_NAMES: &'static [&'static str] = &[
11052 ::core::stringify!(BlsKeyAlreadyUsed),
11053 ::core::stringify!(InvalidSchnorrVK),
11054 ::core::stringify!(BLSSigVerificationFailed),
11055 ::core::stringify!(OwnableUnauthorizedAccount),
11056 ::core::stringify!(FailedInnerCall),
11057 ::core::stringify!(OwnableInvalidOwner),
11058 ::core::stringify!(ZeroAmount),
11059 ::core::stringify!(InsufficientAllowance),
11060 ::core::stringify!(OwnershipCannotBeRenounced),
11061 ::core::stringify!(PowPrecompileFailed),
11062 ::core::stringify!(ERC1967InvalidImplementation),
11063 ::core::stringify!(ValidatorInactive),
11064 ::core::stringify!(PrematureWithdrawal),
11065 ::core::stringify!(BLSSigIsInfinity),
11066 ::core::stringify!(InsufficientBalance),
11067 ::core::stringify!(ValidatorAlreadyRegistered),
11068 ::core::stringify!(AddressEmptyCode),
11069 ::core::stringify!(InvalidG1),
11070 ::core::stringify!(UUPSUnsupportedProxiableUUID),
11071 ::core::stringify!(ERC1967NonPayable),
11072 ::core::stringify!(ExitEscrowPeriodInvalid),
11073 ::core::stringify!(BLSVKIsInfinity),
11074 ::core::stringify!(BN254PairingProdFailed),
11075 ::core::stringify!(NothingToWithdraw),
11076 ::core::stringify!(UndelegationAlreadyExists),
11077 ::core::stringify!(NotInitializing),
11078 ::core::stringify!(ZeroAddress),
11079 ::core::stringify!(InvalidCommission),
11080 ::core::stringify!(UUPSUnauthorizedCallContext),
11081 ::core::stringify!(ValidatorAlreadyExited),
11082 ::core::stringify!(ValidatorNotExited),
11083 ::core::stringify!(InvalidInitialization),
11084 ];
11085 pub const SIGNATURES: &'static [&'static str] = &[
11087 <BlsKeyAlreadyUsed as alloy_sol_types::SolError>::SIGNATURE,
11088 <InvalidSchnorrVK as alloy_sol_types::SolError>::SIGNATURE,
11089 <BLSSigVerificationFailed as alloy_sol_types::SolError>::SIGNATURE,
11090 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::SIGNATURE,
11091 <FailedInnerCall as alloy_sol_types::SolError>::SIGNATURE,
11092 <OwnableInvalidOwner as alloy_sol_types::SolError>::SIGNATURE,
11093 <ZeroAmount as alloy_sol_types::SolError>::SIGNATURE,
11094 <InsufficientAllowance as alloy_sol_types::SolError>::SIGNATURE,
11095 <OwnershipCannotBeRenounced as alloy_sol_types::SolError>::SIGNATURE,
11096 <PowPrecompileFailed as alloy_sol_types::SolError>::SIGNATURE,
11097 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::SIGNATURE,
11098 <ValidatorInactive as alloy_sol_types::SolError>::SIGNATURE,
11099 <PrematureWithdrawal as alloy_sol_types::SolError>::SIGNATURE,
11100 <BLSSigIsInfinity as alloy_sol_types::SolError>::SIGNATURE,
11101 <InsufficientBalance as alloy_sol_types::SolError>::SIGNATURE,
11102 <ValidatorAlreadyRegistered as alloy_sol_types::SolError>::SIGNATURE,
11103 <AddressEmptyCode as alloy_sol_types::SolError>::SIGNATURE,
11104 <InvalidG1 as alloy_sol_types::SolError>::SIGNATURE,
11105 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::SIGNATURE,
11106 <ERC1967NonPayable as alloy_sol_types::SolError>::SIGNATURE,
11107 <ExitEscrowPeriodInvalid as alloy_sol_types::SolError>::SIGNATURE,
11108 <BLSVKIsInfinity as alloy_sol_types::SolError>::SIGNATURE,
11109 <BN254PairingProdFailed as alloy_sol_types::SolError>::SIGNATURE,
11110 <NothingToWithdraw as alloy_sol_types::SolError>::SIGNATURE,
11111 <UndelegationAlreadyExists as alloy_sol_types::SolError>::SIGNATURE,
11112 <NotInitializing as alloy_sol_types::SolError>::SIGNATURE,
11113 <ZeroAddress as alloy_sol_types::SolError>::SIGNATURE,
11114 <InvalidCommission as alloy_sol_types::SolError>::SIGNATURE,
11115 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::SIGNATURE,
11116 <ValidatorAlreadyExited as alloy_sol_types::SolError>::SIGNATURE,
11117 <ValidatorNotExited as alloy_sol_types::SolError>::SIGNATURE,
11118 <InvalidInitialization as alloy_sol_types::SolError>::SIGNATURE,
11119 ];
11120 #[inline]
11122 pub fn signature_by_selector(
11123 selector: [u8; 4usize],
11124 ) -> ::core::option::Option<&'static str> {
11125 match Self::SELECTORS.binary_search(&selector) {
11126 ::core::result::Result::Ok(idx) => {
11127 ::core::option::Option::Some(Self::SIGNATURES[idx])
11128 }
11129 ::core::result::Result::Err(_) => ::core::option::Option::None,
11130 }
11131 }
11132 #[inline]
11134 pub fn name_by_selector(
11135 selector: [u8; 4usize],
11136 ) -> ::core::option::Option<&'static str> {
11137 let sig = Self::signature_by_selector(selector)?;
11138 sig.split_once('(').map(|(name, _)| name)
11139 }
11140 }
11141 #[automatically_derived]
11142 impl alloy_sol_types::SolInterface for StakeTableErrors {
11143 const NAME: &'static str = "StakeTableErrors";
11144 const MIN_DATA_LENGTH: usize = 0usize;
11145 const COUNT: usize = 32usize;
11146 #[inline]
11147 fn selector(&self) -> [u8; 4] {
11148 match self {
11149 Self::AddressEmptyCode(_) => {
11150 <AddressEmptyCode as alloy_sol_types::SolError>::SELECTOR
11151 }
11152 Self::BLSSigIsInfinity(_) => {
11153 <BLSSigIsInfinity as alloy_sol_types::SolError>::SELECTOR
11154 }
11155 Self::BLSSigVerificationFailed(_) => {
11156 <BLSSigVerificationFailed as alloy_sol_types::SolError>::SELECTOR
11157 }
11158 Self::BLSVKIsInfinity(_) => {
11159 <BLSVKIsInfinity as alloy_sol_types::SolError>::SELECTOR
11160 }
11161 Self::BN254PairingProdFailed(_) => {
11162 <BN254PairingProdFailed as alloy_sol_types::SolError>::SELECTOR
11163 }
11164 Self::BlsKeyAlreadyUsed(_) => {
11165 <BlsKeyAlreadyUsed as alloy_sol_types::SolError>::SELECTOR
11166 }
11167 Self::ERC1967InvalidImplementation(_) => {
11168 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::SELECTOR
11169 }
11170 Self::ERC1967NonPayable(_) => {
11171 <ERC1967NonPayable as alloy_sol_types::SolError>::SELECTOR
11172 }
11173 Self::ExitEscrowPeriodInvalid(_) => {
11174 <ExitEscrowPeriodInvalid as alloy_sol_types::SolError>::SELECTOR
11175 }
11176 Self::FailedInnerCall(_) => {
11177 <FailedInnerCall as alloy_sol_types::SolError>::SELECTOR
11178 }
11179 Self::InsufficientAllowance(_) => {
11180 <InsufficientAllowance as alloy_sol_types::SolError>::SELECTOR
11181 }
11182 Self::InsufficientBalance(_) => {
11183 <InsufficientBalance as alloy_sol_types::SolError>::SELECTOR
11184 }
11185 Self::InvalidCommission(_) => {
11186 <InvalidCommission as alloy_sol_types::SolError>::SELECTOR
11187 }
11188 Self::InvalidG1(_) => <InvalidG1 as alloy_sol_types::SolError>::SELECTOR,
11189 Self::InvalidInitialization(_) => {
11190 <InvalidInitialization as alloy_sol_types::SolError>::SELECTOR
11191 }
11192 Self::InvalidSchnorrVK(_) => {
11193 <InvalidSchnorrVK as alloy_sol_types::SolError>::SELECTOR
11194 }
11195 Self::NotInitializing(_) => {
11196 <NotInitializing as alloy_sol_types::SolError>::SELECTOR
11197 }
11198 Self::NothingToWithdraw(_) => {
11199 <NothingToWithdraw as alloy_sol_types::SolError>::SELECTOR
11200 }
11201 Self::OwnableInvalidOwner(_) => {
11202 <OwnableInvalidOwner as alloy_sol_types::SolError>::SELECTOR
11203 }
11204 Self::OwnableUnauthorizedAccount(_) => {
11205 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::SELECTOR
11206 }
11207 Self::OwnershipCannotBeRenounced(_) => {
11208 <OwnershipCannotBeRenounced as alloy_sol_types::SolError>::SELECTOR
11209 }
11210 Self::PowPrecompileFailed(_) => {
11211 <PowPrecompileFailed as alloy_sol_types::SolError>::SELECTOR
11212 }
11213 Self::PrematureWithdrawal(_) => {
11214 <PrematureWithdrawal as alloy_sol_types::SolError>::SELECTOR
11215 }
11216 Self::UUPSUnauthorizedCallContext(_) => {
11217 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::SELECTOR
11218 }
11219 Self::UUPSUnsupportedProxiableUUID(_) => {
11220 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::SELECTOR
11221 }
11222 Self::UndelegationAlreadyExists(_) => {
11223 <UndelegationAlreadyExists as alloy_sol_types::SolError>::SELECTOR
11224 }
11225 Self::ValidatorAlreadyExited(_) => {
11226 <ValidatorAlreadyExited as alloy_sol_types::SolError>::SELECTOR
11227 }
11228 Self::ValidatorAlreadyRegistered(_) => {
11229 <ValidatorAlreadyRegistered as alloy_sol_types::SolError>::SELECTOR
11230 }
11231 Self::ValidatorInactive(_) => {
11232 <ValidatorInactive as alloy_sol_types::SolError>::SELECTOR
11233 }
11234 Self::ValidatorNotExited(_) => {
11235 <ValidatorNotExited as alloy_sol_types::SolError>::SELECTOR
11236 }
11237 Self::ZeroAddress(_) => {
11238 <ZeroAddress as alloy_sol_types::SolError>::SELECTOR
11239 }
11240 Self::ZeroAmount(_) => {
11241 <ZeroAmount as alloy_sol_types::SolError>::SELECTOR
11242 }
11243 }
11244 }
11245 #[inline]
11246 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
11247 Self::SELECTORS.get(i).copied()
11248 }
11249 #[inline]
11250 fn valid_selector(selector: [u8; 4]) -> bool {
11251 Self::SELECTORS.binary_search(&selector).is_ok()
11252 }
11253 #[inline]
11254 #[allow(non_snake_case)]
11255 fn abi_decode_raw(
11256 selector: [u8; 4],
11257 data: &[u8],
11258 ) -> alloy_sol_types::Result<Self> {
11259 static DECODE_SHIMS: &[fn(
11260 &[u8],
11261 ) -> alloy_sol_types::Result<StakeTableErrors>] = &[
11262 {
11263 fn BlsKeyAlreadyUsed(
11264 data: &[u8],
11265 ) -> alloy_sol_types::Result<StakeTableErrors> {
11266 <BlsKeyAlreadyUsed as alloy_sol_types::SolError>::abi_decode_raw(
11267 data,
11268 )
11269 .map(StakeTableErrors::BlsKeyAlreadyUsed)
11270 }
11271 BlsKeyAlreadyUsed
11272 },
11273 {
11274 fn InvalidSchnorrVK(
11275 data: &[u8],
11276 ) -> alloy_sol_types::Result<StakeTableErrors> {
11277 <InvalidSchnorrVK as alloy_sol_types::SolError>::abi_decode_raw(
11278 data,
11279 )
11280 .map(StakeTableErrors::InvalidSchnorrVK)
11281 }
11282 InvalidSchnorrVK
11283 },
11284 {
11285 fn BLSSigVerificationFailed(
11286 data: &[u8],
11287 ) -> alloy_sol_types::Result<StakeTableErrors> {
11288 <BLSSigVerificationFailed as alloy_sol_types::SolError>::abi_decode_raw(
11289 data,
11290 )
11291 .map(StakeTableErrors::BLSSigVerificationFailed)
11292 }
11293 BLSSigVerificationFailed
11294 },
11295 {
11296 fn OwnableUnauthorizedAccount(
11297 data: &[u8],
11298 ) -> alloy_sol_types::Result<StakeTableErrors> {
11299 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_decode_raw(
11300 data,
11301 )
11302 .map(StakeTableErrors::OwnableUnauthorizedAccount)
11303 }
11304 OwnableUnauthorizedAccount
11305 },
11306 {
11307 fn FailedInnerCall(
11308 data: &[u8],
11309 ) -> alloy_sol_types::Result<StakeTableErrors> {
11310 <FailedInnerCall as alloy_sol_types::SolError>::abi_decode_raw(
11311 data,
11312 )
11313 .map(StakeTableErrors::FailedInnerCall)
11314 }
11315 FailedInnerCall
11316 },
11317 {
11318 fn OwnableInvalidOwner(
11319 data: &[u8],
11320 ) -> alloy_sol_types::Result<StakeTableErrors> {
11321 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_decode_raw(
11322 data,
11323 )
11324 .map(StakeTableErrors::OwnableInvalidOwner)
11325 }
11326 OwnableInvalidOwner
11327 },
11328 {
11329 fn ZeroAmount(
11330 data: &[u8],
11331 ) -> alloy_sol_types::Result<StakeTableErrors> {
11332 <ZeroAmount as alloy_sol_types::SolError>::abi_decode_raw(data)
11333 .map(StakeTableErrors::ZeroAmount)
11334 }
11335 ZeroAmount
11336 },
11337 {
11338 fn InsufficientAllowance(
11339 data: &[u8],
11340 ) -> alloy_sol_types::Result<StakeTableErrors> {
11341 <InsufficientAllowance as alloy_sol_types::SolError>::abi_decode_raw(
11342 data,
11343 )
11344 .map(StakeTableErrors::InsufficientAllowance)
11345 }
11346 InsufficientAllowance
11347 },
11348 {
11349 fn OwnershipCannotBeRenounced(
11350 data: &[u8],
11351 ) -> alloy_sol_types::Result<StakeTableErrors> {
11352 <OwnershipCannotBeRenounced as alloy_sol_types::SolError>::abi_decode_raw(
11353 data,
11354 )
11355 .map(StakeTableErrors::OwnershipCannotBeRenounced)
11356 }
11357 OwnershipCannotBeRenounced
11358 },
11359 {
11360 fn PowPrecompileFailed(
11361 data: &[u8],
11362 ) -> alloy_sol_types::Result<StakeTableErrors> {
11363 <PowPrecompileFailed as alloy_sol_types::SolError>::abi_decode_raw(
11364 data,
11365 )
11366 .map(StakeTableErrors::PowPrecompileFailed)
11367 }
11368 PowPrecompileFailed
11369 },
11370 {
11371 fn ERC1967InvalidImplementation(
11372 data: &[u8],
11373 ) -> alloy_sol_types::Result<StakeTableErrors> {
11374 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_decode_raw(
11375 data,
11376 )
11377 .map(StakeTableErrors::ERC1967InvalidImplementation)
11378 }
11379 ERC1967InvalidImplementation
11380 },
11381 {
11382 fn ValidatorInactive(
11383 data: &[u8],
11384 ) -> alloy_sol_types::Result<StakeTableErrors> {
11385 <ValidatorInactive as alloy_sol_types::SolError>::abi_decode_raw(
11386 data,
11387 )
11388 .map(StakeTableErrors::ValidatorInactive)
11389 }
11390 ValidatorInactive
11391 },
11392 {
11393 fn PrematureWithdrawal(
11394 data: &[u8],
11395 ) -> alloy_sol_types::Result<StakeTableErrors> {
11396 <PrematureWithdrawal as alloy_sol_types::SolError>::abi_decode_raw(
11397 data,
11398 )
11399 .map(StakeTableErrors::PrematureWithdrawal)
11400 }
11401 PrematureWithdrawal
11402 },
11403 {
11404 fn BLSSigIsInfinity(
11405 data: &[u8],
11406 ) -> alloy_sol_types::Result<StakeTableErrors> {
11407 <BLSSigIsInfinity as alloy_sol_types::SolError>::abi_decode_raw(
11408 data,
11409 )
11410 .map(StakeTableErrors::BLSSigIsInfinity)
11411 }
11412 BLSSigIsInfinity
11413 },
11414 {
11415 fn InsufficientBalance(
11416 data: &[u8],
11417 ) -> alloy_sol_types::Result<StakeTableErrors> {
11418 <InsufficientBalance as alloy_sol_types::SolError>::abi_decode_raw(
11419 data,
11420 )
11421 .map(StakeTableErrors::InsufficientBalance)
11422 }
11423 InsufficientBalance
11424 },
11425 {
11426 fn ValidatorAlreadyRegistered(
11427 data: &[u8],
11428 ) -> alloy_sol_types::Result<StakeTableErrors> {
11429 <ValidatorAlreadyRegistered as alloy_sol_types::SolError>::abi_decode_raw(
11430 data,
11431 )
11432 .map(StakeTableErrors::ValidatorAlreadyRegistered)
11433 }
11434 ValidatorAlreadyRegistered
11435 },
11436 {
11437 fn AddressEmptyCode(
11438 data: &[u8],
11439 ) -> alloy_sol_types::Result<StakeTableErrors> {
11440 <AddressEmptyCode as alloy_sol_types::SolError>::abi_decode_raw(
11441 data,
11442 )
11443 .map(StakeTableErrors::AddressEmptyCode)
11444 }
11445 AddressEmptyCode
11446 },
11447 {
11448 fn InvalidG1(
11449 data: &[u8],
11450 ) -> alloy_sol_types::Result<StakeTableErrors> {
11451 <InvalidG1 as alloy_sol_types::SolError>::abi_decode_raw(data)
11452 .map(StakeTableErrors::InvalidG1)
11453 }
11454 InvalidG1
11455 },
11456 {
11457 fn UUPSUnsupportedProxiableUUID(
11458 data: &[u8],
11459 ) -> alloy_sol_types::Result<StakeTableErrors> {
11460 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_decode_raw(
11461 data,
11462 )
11463 .map(StakeTableErrors::UUPSUnsupportedProxiableUUID)
11464 }
11465 UUPSUnsupportedProxiableUUID
11466 },
11467 {
11468 fn ERC1967NonPayable(
11469 data: &[u8],
11470 ) -> alloy_sol_types::Result<StakeTableErrors> {
11471 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_decode_raw(
11472 data,
11473 )
11474 .map(StakeTableErrors::ERC1967NonPayable)
11475 }
11476 ERC1967NonPayable
11477 },
11478 {
11479 fn ExitEscrowPeriodInvalid(
11480 data: &[u8],
11481 ) -> alloy_sol_types::Result<StakeTableErrors> {
11482 <ExitEscrowPeriodInvalid as alloy_sol_types::SolError>::abi_decode_raw(
11483 data,
11484 )
11485 .map(StakeTableErrors::ExitEscrowPeriodInvalid)
11486 }
11487 ExitEscrowPeriodInvalid
11488 },
11489 {
11490 fn BLSVKIsInfinity(
11491 data: &[u8],
11492 ) -> alloy_sol_types::Result<StakeTableErrors> {
11493 <BLSVKIsInfinity as alloy_sol_types::SolError>::abi_decode_raw(
11494 data,
11495 )
11496 .map(StakeTableErrors::BLSVKIsInfinity)
11497 }
11498 BLSVKIsInfinity
11499 },
11500 {
11501 fn BN254PairingProdFailed(
11502 data: &[u8],
11503 ) -> alloy_sol_types::Result<StakeTableErrors> {
11504 <BN254PairingProdFailed as alloy_sol_types::SolError>::abi_decode_raw(
11505 data,
11506 )
11507 .map(StakeTableErrors::BN254PairingProdFailed)
11508 }
11509 BN254PairingProdFailed
11510 },
11511 {
11512 fn NothingToWithdraw(
11513 data: &[u8],
11514 ) -> alloy_sol_types::Result<StakeTableErrors> {
11515 <NothingToWithdraw as alloy_sol_types::SolError>::abi_decode_raw(
11516 data,
11517 )
11518 .map(StakeTableErrors::NothingToWithdraw)
11519 }
11520 NothingToWithdraw
11521 },
11522 {
11523 fn UndelegationAlreadyExists(
11524 data: &[u8],
11525 ) -> alloy_sol_types::Result<StakeTableErrors> {
11526 <UndelegationAlreadyExists as alloy_sol_types::SolError>::abi_decode_raw(
11527 data,
11528 )
11529 .map(StakeTableErrors::UndelegationAlreadyExists)
11530 }
11531 UndelegationAlreadyExists
11532 },
11533 {
11534 fn NotInitializing(
11535 data: &[u8],
11536 ) -> alloy_sol_types::Result<StakeTableErrors> {
11537 <NotInitializing as alloy_sol_types::SolError>::abi_decode_raw(
11538 data,
11539 )
11540 .map(StakeTableErrors::NotInitializing)
11541 }
11542 NotInitializing
11543 },
11544 {
11545 fn ZeroAddress(
11546 data: &[u8],
11547 ) -> alloy_sol_types::Result<StakeTableErrors> {
11548 <ZeroAddress as alloy_sol_types::SolError>::abi_decode_raw(data)
11549 .map(StakeTableErrors::ZeroAddress)
11550 }
11551 ZeroAddress
11552 },
11553 {
11554 fn InvalidCommission(
11555 data: &[u8],
11556 ) -> alloy_sol_types::Result<StakeTableErrors> {
11557 <InvalidCommission as alloy_sol_types::SolError>::abi_decode_raw(
11558 data,
11559 )
11560 .map(StakeTableErrors::InvalidCommission)
11561 }
11562 InvalidCommission
11563 },
11564 {
11565 fn UUPSUnauthorizedCallContext(
11566 data: &[u8],
11567 ) -> alloy_sol_types::Result<StakeTableErrors> {
11568 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_decode_raw(
11569 data,
11570 )
11571 .map(StakeTableErrors::UUPSUnauthorizedCallContext)
11572 }
11573 UUPSUnauthorizedCallContext
11574 },
11575 {
11576 fn ValidatorAlreadyExited(
11577 data: &[u8],
11578 ) -> alloy_sol_types::Result<StakeTableErrors> {
11579 <ValidatorAlreadyExited as alloy_sol_types::SolError>::abi_decode_raw(
11580 data,
11581 )
11582 .map(StakeTableErrors::ValidatorAlreadyExited)
11583 }
11584 ValidatorAlreadyExited
11585 },
11586 {
11587 fn ValidatorNotExited(
11588 data: &[u8],
11589 ) -> alloy_sol_types::Result<StakeTableErrors> {
11590 <ValidatorNotExited as alloy_sol_types::SolError>::abi_decode_raw(
11591 data,
11592 )
11593 .map(StakeTableErrors::ValidatorNotExited)
11594 }
11595 ValidatorNotExited
11596 },
11597 {
11598 fn InvalidInitialization(
11599 data: &[u8],
11600 ) -> alloy_sol_types::Result<StakeTableErrors> {
11601 <InvalidInitialization as alloy_sol_types::SolError>::abi_decode_raw(
11602 data,
11603 )
11604 .map(StakeTableErrors::InvalidInitialization)
11605 }
11606 InvalidInitialization
11607 },
11608 ];
11609 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
11610 return Err(
11611 alloy_sol_types::Error::unknown_selector(
11612 <Self as alloy_sol_types::SolInterface>::NAME,
11613 selector,
11614 ),
11615 );
11616 };
11617 DECODE_SHIMS[idx](data)
11618 }
11619 #[inline]
11620 #[allow(non_snake_case)]
11621 fn abi_decode_raw_validate(
11622 selector: [u8; 4],
11623 data: &[u8],
11624 ) -> alloy_sol_types::Result<Self> {
11625 static DECODE_VALIDATE_SHIMS: &[fn(
11626 &[u8],
11627 ) -> alloy_sol_types::Result<StakeTableErrors>] = &[
11628 {
11629 fn BlsKeyAlreadyUsed(
11630 data: &[u8],
11631 ) -> alloy_sol_types::Result<StakeTableErrors> {
11632 <BlsKeyAlreadyUsed as alloy_sol_types::SolError>::abi_decode_raw_validate(
11633 data,
11634 )
11635 .map(StakeTableErrors::BlsKeyAlreadyUsed)
11636 }
11637 BlsKeyAlreadyUsed
11638 },
11639 {
11640 fn InvalidSchnorrVK(
11641 data: &[u8],
11642 ) -> alloy_sol_types::Result<StakeTableErrors> {
11643 <InvalidSchnorrVK as alloy_sol_types::SolError>::abi_decode_raw_validate(
11644 data,
11645 )
11646 .map(StakeTableErrors::InvalidSchnorrVK)
11647 }
11648 InvalidSchnorrVK
11649 },
11650 {
11651 fn BLSSigVerificationFailed(
11652 data: &[u8],
11653 ) -> alloy_sol_types::Result<StakeTableErrors> {
11654 <BLSSigVerificationFailed as alloy_sol_types::SolError>::abi_decode_raw_validate(
11655 data,
11656 )
11657 .map(StakeTableErrors::BLSSigVerificationFailed)
11658 }
11659 BLSSigVerificationFailed
11660 },
11661 {
11662 fn OwnableUnauthorizedAccount(
11663 data: &[u8],
11664 ) -> alloy_sol_types::Result<StakeTableErrors> {
11665 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_decode_raw_validate(
11666 data,
11667 )
11668 .map(StakeTableErrors::OwnableUnauthorizedAccount)
11669 }
11670 OwnableUnauthorizedAccount
11671 },
11672 {
11673 fn FailedInnerCall(
11674 data: &[u8],
11675 ) -> alloy_sol_types::Result<StakeTableErrors> {
11676 <FailedInnerCall as alloy_sol_types::SolError>::abi_decode_raw_validate(
11677 data,
11678 )
11679 .map(StakeTableErrors::FailedInnerCall)
11680 }
11681 FailedInnerCall
11682 },
11683 {
11684 fn OwnableInvalidOwner(
11685 data: &[u8],
11686 ) -> alloy_sol_types::Result<StakeTableErrors> {
11687 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_decode_raw_validate(
11688 data,
11689 )
11690 .map(StakeTableErrors::OwnableInvalidOwner)
11691 }
11692 OwnableInvalidOwner
11693 },
11694 {
11695 fn ZeroAmount(
11696 data: &[u8],
11697 ) -> alloy_sol_types::Result<StakeTableErrors> {
11698 <ZeroAmount as alloy_sol_types::SolError>::abi_decode_raw_validate(
11699 data,
11700 )
11701 .map(StakeTableErrors::ZeroAmount)
11702 }
11703 ZeroAmount
11704 },
11705 {
11706 fn InsufficientAllowance(
11707 data: &[u8],
11708 ) -> alloy_sol_types::Result<StakeTableErrors> {
11709 <InsufficientAllowance as alloy_sol_types::SolError>::abi_decode_raw_validate(
11710 data,
11711 )
11712 .map(StakeTableErrors::InsufficientAllowance)
11713 }
11714 InsufficientAllowance
11715 },
11716 {
11717 fn OwnershipCannotBeRenounced(
11718 data: &[u8],
11719 ) -> alloy_sol_types::Result<StakeTableErrors> {
11720 <OwnershipCannotBeRenounced as alloy_sol_types::SolError>::abi_decode_raw_validate(
11721 data,
11722 )
11723 .map(StakeTableErrors::OwnershipCannotBeRenounced)
11724 }
11725 OwnershipCannotBeRenounced
11726 },
11727 {
11728 fn PowPrecompileFailed(
11729 data: &[u8],
11730 ) -> alloy_sol_types::Result<StakeTableErrors> {
11731 <PowPrecompileFailed as alloy_sol_types::SolError>::abi_decode_raw_validate(
11732 data,
11733 )
11734 .map(StakeTableErrors::PowPrecompileFailed)
11735 }
11736 PowPrecompileFailed
11737 },
11738 {
11739 fn ERC1967InvalidImplementation(
11740 data: &[u8],
11741 ) -> alloy_sol_types::Result<StakeTableErrors> {
11742 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_decode_raw_validate(
11743 data,
11744 )
11745 .map(StakeTableErrors::ERC1967InvalidImplementation)
11746 }
11747 ERC1967InvalidImplementation
11748 },
11749 {
11750 fn ValidatorInactive(
11751 data: &[u8],
11752 ) -> alloy_sol_types::Result<StakeTableErrors> {
11753 <ValidatorInactive as alloy_sol_types::SolError>::abi_decode_raw_validate(
11754 data,
11755 )
11756 .map(StakeTableErrors::ValidatorInactive)
11757 }
11758 ValidatorInactive
11759 },
11760 {
11761 fn PrematureWithdrawal(
11762 data: &[u8],
11763 ) -> alloy_sol_types::Result<StakeTableErrors> {
11764 <PrematureWithdrawal as alloy_sol_types::SolError>::abi_decode_raw_validate(
11765 data,
11766 )
11767 .map(StakeTableErrors::PrematureWithdrawal)
11768 }
11769 PrematureWithdrawal
11770 },
11771 {
11772 fn BLSSigIsInfinity(
11773 data: &[u8],
11774 ) -> alloy_sol_types::Result<StakeTableErrors> {
11775 <BLSSigIsInfinity as alloy_sol_types::SolError>::abi_decode_raw_validate(
11776 data,
11777 )
11778 .map(StakeTableErrors::BLSSigIsInfinity)
11779 }
11780 BLSSigIsInfinity
11781 },
11782 {
11783 fn InsufficientBalance(
11784 data: &[u8],
11785 ) -> alloy_sol_types::Result<StakeTableErrors> {
11786 <InsufficientBalance as alloy_sol_types::SolError>::abi_decode_raw_validate(
11787 data,
11788 )
11789 .map(StakeTableErrors::InsufficientBalance)
11790 }
11791 InsufficientBalance
11792 },
11793 {
11794 fn ValidatorAlreadyRegistered(
11795 data: &[u8],
11796 ) -> alloy_sol_types::Result<StakeTableErrors> {
11797 <ValidatorAlreadyRegistered as alloy_sol_types::SolError>::abi_decode_raw_validate(
11798 data,
11799 )
11800 .map(StakeTableErrors::ValidatorAlreadyRegistered)
11801 }
11802 ValidatorAlreadyRegistered
11803 },
11804 {
11805 fn AddressEmptyCode(
11806 data: &[u8],
11807 ) -> alloy_sol_types::Result<StakeTableErrors> {
11808 <AddressEmptyCode as alloy_sol_types::SolError>::abi_decode_raw_validate(
11809 data,
11810 )
11811 .map(StakeTableErrors::AddressEmptyCode)
11812 }
11813 AddressEmptyCode
11814 },
11815 {
11816 fn InvalidG1(
11817 data: &[u8],
11818 ) -> alloy_sol_types::Result<StakeTableErrors> {
11819 <InvalidG1 as alloy_sol_types::SolError>::abi_decode_raw_validate(
11820 data,
11821 )
11822 .map(StakeTableErrors::InvalidG1)
11823 }
11824 InvalidG1
11825 },
11826 {
11827 fn UUPSUnsupportedProxiableUUID(
11828 data: &[u8],
11829 ) -> alloy_sol_types::Result<StakeTableErrors> {
11830 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_decode_raw_validate(
11831 data,
11832 )
11833 .map(StakeTableErrors::UUPSUnsupportedProxiableUUID)
11834 }
11835 UUPSUnsupportedProxiableUUID
11836 },
11837 {
11838 fn ERC1967NonPayable(
11839 data: &[u8],
11840 ) -> alloy_sol_types::Result<StakeTableErrors> {
11841 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_decode_raw_validate(
11842 data,
11843 )
11844 .map(StakeTableErrors::ERC1967NonPayable)
11845 }
11846 ERC1967NonPayable
11847 },
11848 {
11849 fn ExitEscrowPeriodInvalid(
11850 data: &[u8],
11851 ) -> alloy_sol_types::Result<StakeTableErrors> {
11852 <ExitEscrowPeriodInvalid as alloy_sol_types::SolError>::abi_decode_raw_validate(
11853 data,
11854 )
11855 .map(StakeTableErrors::ExitEscrowPeriodInvalid)
11856 }
11857 ExitEscrowPeriodInvalid
11858 },
11859 {
11860 fn BLSVKIsInfinity(
11861 data: &[u8],
11862 ) -> alloy_sol_types::Result<StakeTableErrors> {
11863 <BLSVKIsInfinity as alloy_sol_types::SolError>::abi_decode_raw_validate(
11864 data,
11865 )
11866 .map(StakeTableErrors::BLSVKIsInfinity)
11867 }
11868 BLSVKIsInfinity
11869 },
11870 {
11871 fn BN254PairingProdFailed(
11872 data: &[u8],
11873 ) -> alloy_sol_types::Result<StakeTableErrors> {
11874 <BN254PairingProdFailed as alloy_sol_types::SolError>::abi_decode_raw_validate(
11875 data,
11876 )
11877 .map(StakeTableErrors::BN254PairingProdFailed)
11878 }
11879 BN254PairingProdFailed
11880 },
11881 {
11882 fn NothingToWithdraw(
11883 data: &[u8],
11884 ) -> alloy_sol_types::Result<StakeTableErrors> {
11885 <NothingToWithdraw as alloy_sol_types::SolError>::abi_decode_raw_validate(
11886 data,
11887 )
11888 .map(StakeTableErrors::NothingToWithdraw)
11889 }
11890 NothingToWithdraw
11891 },
11892 {
11893 fn UndelegationAlreadyExists(
11894 data: &[u8],
11895 ) -> alloy_sol_types::Result<StakeTableErrors> {
11896 <UndelegationAlreadyExists as alloy_sol_types::SolError>::abi_decode_raw_validate(
11897 data,
11898 )
11899 .map(StakeTableErrors::UndelegationAlreadyExists)
11900 }
11901 UndelegationAlreadyExists
11902 },
11903 {
11904 fn NotInitializing(
11905 data: &[u8],
11906 ) -> alloy_sol_types::Result<StakeTableErrors> {
11907 <NotInitializing as alloy_sol_types::SolError>::abi_decode_raw_validate(
11908 data,
11909 )
11910 .map(StakeTableErrors::NotInitializing)
11911 }
11912 NotInitializing
11913 },
11914 {
11915 fn ZeroAddress(
11916 data: &[u8],
11917 ) -> alloy_sol_types::Result<StakeTableErrors> {
11918 <ZeroAddress as alloy_sol_types::SolError>::abi_decode_raw_validate(
11919 data,
11920 )
11921 .map(StakeTableErrors::ZeroAddress)
11922 }
11923 ZeroAddress
11924 },
11925 {
11926 fn InvalidCommission(
11927 data: &[u8],
11928 ) -> alloy_sol_types::Result<StakeTableErrors> {
11929 <InvalidCommission as alloy_sol_types::SolError>::abi_decode_raw_validate(
11930 data,
11931 )
11932 .map(StakeTableErrors::InvalidCommission)
11933 }
11934 InvalidCommission
11935 },
11936 {
11937 fn UUPSUnauthorizedCallContext(
11938 data: &[u8],
11939 ) -> alloy_sol_types::Result<StakeTableErrors> {
11940 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_decode_raw_validate(
11941 data,
11942 )
11943 .map(StakeTableErrors::UUPSUnauthorizedCallContext)
11944 }
11945 UUPSUnauthorizedCallContext
11946 },
11947 {
11948 fn ValidatorAlreadyExited(
11949 data: &[u8],
11950 ) -> alloy_sol_types::Result<StakeTableErrors> {
11951 <ValidatorAlreadyExited as alloy_sol_types::SolError>::abi_decode_raw_validate(
11952 data,
11953 )
11954 .map(StakeTableErrors::ValidatorAlreadyExited)
11955 }
11956 ValidatorAlreadyExited
11957 },
11958 {
11959 fn ValidatorNotExited(
11960 data: &[u8],
11961 ) -> alloy_sol_types::Result<StakeTableErrors> {
11962 <ValidatorNotExited as alloy_sol_types::SolError>::abi_decode_raw_validate(
11963 data,
11964 )
11965 .map(StakeTableErrors::ValidatorNotExited)
11966 }
11967 ValidatorNotExited
11968 },
11969 {
11970 fn InvalidInitialization(
11971 data: &[u8],
11972 ) -> alloy_sol_types::Result<StakeTableErrors> {
11973 <InvalidInitialization as alloy_sol_types::SolError>::abi_decode_raw_validate(
11974 data,
11975 )
11976 .map(StakeTableErrors::InvalidInitialization)
11977 }
11978 InvalidInitialization
11979 },
11980 ];
11981 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
11982 return Err(
11983 alloy_sol_types::Error::unknown_selector(
11984 <Self as alloy_sol_types::SolInterface>::NAME,
11985 selector,
11986 ),
11987 );
11988 };
11989 DECODE_VALIDATE_SHIMS[idx](data)
11990 }
11991 #[inline]
11992 fn abi_encoded_size(&self) -> usize {
11993 match self {
11994 Self::AddressEmptyCode(inner) => {
11995 <AddressEmptyCode as alloy_sol_types::SolError>::abi_encoded_size(
11996 inner,
11997 )
11998 }
11999 Self::BLSSigIsInfinity(inner) => {
12000 <BLSSigIsInfinity as alloy_sol_types::SolError>::abi_encoded_size(
12001 inner,
12002 )
12003 }
12004 Self::BLSSigVerificationFailed(inner) => {
12005 <BLSSigVerificationFailed as alloy_sol_types::SolError>::abi_encoded_size(
12006 inner,
12007 )
12008 }
12009 Self::BLSVKIsInfinity(inner) => {
12010 <BLSVKIsInfinity as alloy_sol_types::SolError>::abi_encoded_size(
12011 inner,
12012 )
12013 }
12014 Self::BN254PairingProdFailed(inner) => {
12015 <BN254PairingProdFailed as alloy_sol_types::SolError>::abi_encoded_size(
12016 inner,
12017 )
12018 }
12019 Self::BlsKeyAlreadyUsed(inner) => {
12020 <BlsKeyAlreadyUsed as alloy_sol_types::SolError>::abi_encoded_size(
12021 inner,
12022 )
12023 }
12024 Self::ERC1967InvalidImplementation(inner) => {
12025 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_encoded_size(
12026 inner,
12027 )
12028 }
12029 Self::ERC1967NonPayable(inner) => {
12030 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_encoded_size(
12031 inner,
12032 )
12033 }
12034 Self::ExitEscrowPeriodInvalid(inner) => {
12035 <ExitEscrowPeriodInvalid as alloy_sol_types::SolError>::abi_encoded_size(
12036 inner,
12037 )
12038 }
12039 Self::FailedInnerCall(inner) => {
12040 <FailedInnerCall as alloy_sol_types::SolError>::abi_encoded_size(
12041 inner,
12042 )
12043 }
12044 Self::InsufficientAllowance(inner) => {
12045 <InsufficientAllowance as alloy_sol_types::SolError>::abi_encoded_size(
12046 inner,
12047 )
12048 }
12049 Self::InsufficientBalance(inner) => {
12050 <InsufficientBalance as alloy_sol_types::SolError>::abi_encoded_size(
12051 inner,
12052 )
12053 }
12054 Self::InvalidCommission(inner) => {
12055 <InvalidCommission as alloy_sol_types::SolError>::abi_encoded_size(
12056 inner,
12057 )
12058 }
12059 Self::InvalidG1(inner) => {
12060 <InvalidG1 as alloy_sol_types::SolError>::abi_encoded_size(inner)
12061 }
12062 Self::InvalidInitialization(inner) => {
12063 <InvalidInitialization as alloy_sol_types::SolError>::abi_encoded_size(
12064 inner,
12065 )
12066 }
12067 Self::InvalidSchnorrVK(inner) => {
12068 <InvalidSchnorrVK as alloy_sol_types::SolError>::abi_encoded_size(
12069 inner,
12070 )
12071 }
12072 Self::NotInitializing(inner) => {
12073 <NotInitializing as alloy_sol_types::SolError>::abi_encoded_size(
12074 inner,
12075 )
12076 }
12077 Self::NothingToWithdraw(inner) => {
12078 <NothingToWithdraw as alloy_sol_types::SolError>::abi_encoded_size(
12079 inner,
12080 )
12081 }
12082 Self::OwnableInvalidOwner(inner) => {
12083 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_encoded_size(
12084 inner,
12085 )
12086 }
12087 Self::OwnableUnauthorizedAccount(inner) => {
12088 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_encoded_size(
12089 inner,
12090 )
12091 }
12092 Self::OwnershipCannotBeRenounced(inner) => {
12093 <OwnershipCannotBeRenounced as alloy_sol_types::SolError>::abi_encoded_size(
12094 inner,
12095 )
12096 }
12097 Self::PowPrecompileFailed(inner) => {
12098 <PowPrecompileFailed as alloy_sol_types::SolError>::abi_encoded_size(
12099 inner,
12100 )
12101 }
12102 Self::PrematureWithdrawal(inner) => {
12103 <PrematureWithdrawal as alloy_sol_types::SolError>::abi_encoded_size(
12104 inner,
12105 )
12106 }
12107 Self::UUPSUnauthorizedCallContext(inner) => {
12108 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_encoded_size(
12109 inner,
12110 )
12111 }
12112 Self::UUPSUnsupportedProxiableUUID(inner) => {
12113 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_encoded_size(
12114 inner,
12115 )
12116 }
12117 Self::UndelegationAlreadyExists(inner) => {
12118 <UndelegationAlreadyExists as alloy_sol_types::SolError>::abi_encoded_size(
12119 inner,
12120 )
12121 }
12122 Self::ValidatorAlreadyExited(inner) => {
12123 <ValidatorAlreadyExited as alloy_sol_types::SolError>::abi_encoded_size(
12124 inner,
12125 )
12126 }
12127 Self::ValidatorAlreadyRegistered(inner) => {
12128 <ValidatorAlreadyRegistered as alloy_sol_types::SolError>::abi_encoded_size(
12129 inner,
12130 )
12131 }
12132 Self::ValidatorInactive(inner) => {
12133 <ValidatorInactive as alloy_sol_types::SolError>::abi_encoded_size(
12134 inner,
12135 )
12136 }
12137 Self::ValidatorNotExited(inner) => {
12138 <ValidatorNotExited as alloy_sol_types::SolError>::abi_encoded_size(
12139 inner,
12140 )
12141 }
12142 Self::ZeroAddress(inner) => {
12143 <ZeroAddress as alloy_sol_types::SolError>::abi_encoded_size(inner)
12144 }
12145 Self::ZeroAmount(inner) => {
12146 <ZeroAmount as alloy_sol_types::SolError>::abi_encoded_size(inner)
12147 }
12148 }
12149 }
12150 #[inline]
12151 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
12152 match self {
12153 Self::AddressEmptyCode(inner) => {
12154 <AddressEmptyCode as alloy_sol_types::SolError>::abi_encode_raw(
12155 inner,
12156 out,
12157 )
12158 }
12159 Self::BLSSigIsInfinity(inner) => {
12160 <BLSSigIsInfinity as alloy_sol_types::SolError>::abi_encode_raw(
12161 inner,
12162 out,
12163 )
12164 }
12165 Self::BLSSigVerificationFailed(inner) => {
12166 <BLSSigVerificationFailed as alloy_sol_types::SolError>::abi_encode_raw(
12167 inner,
12168 out,
12169 )
12170 }
12171 Self::BLSVKIsInfinity(inner) => {
12172 <BLSVKIsInfinity as alloy_sol_types::SolError>::abi_encode_raw(
12173 inner,
12174 out,
12175 )
12176 }
12177 Self::BN254PairingProdFailed(inner) => {
12178 <BN254PairingProdFailed as alloy_sol_types::SolError>::abi_encode_raw(
12179 inner,
12180 out,
12181 )
12182 }
12183 Self::BlsKeyAlreadyUsed(inner) => {
12184 <BlsKeyAlreadyUsed as alloy_sol_types::SolError>::abi_encode_raw(
12185 inner,
12186 out,
12187 )
12188 }
12189 Self::ERC1967InvalidImplementation(inner) => {
12190 <ERC1967InvalidImplementation as alloy_sol_types::SolError>::abi_encode_raw(
12191 inner,
12192 out,
12193 )
12194 }
12195 Self::ERC1967NonPayable(inner) => {
12196 <ERC1967NonPayable as alloy_sol_types::SolError>::abi_encode_raw(
12197 inner,
12198 out,
12199 )
12200 }
12201 Self::ExitEscrowPeriodInvalid(inner) => {
12202 <ExitEscrowPeriodInvalid as alloy_sol_types::SolError>::abi_encode_raw(
12203 inner,
12204 out,
12205 )
12206 }
12207 Self::FailedInnerCall(inner) => {
12208 <FailedInnerCall as alloy_sol_types::SolError>::abi_encode_raw(
12209 inner,
12210 out,
12211 )
12212 }
12213 Self::InsufficientAllowance(inner) => {
12214 <InsufficientAllowance as alloy_sol_types::SolError>::abi_encode_raw(
12215 inner,
12216 out,
12217 )
12218 }
12219 Self::InsufficientBalance(inner) => {
12220 <InsufficientBalance as alloy_sol_types::SolError>::abi_encode_raw(
12221 inner,
12222 out,
12223 )
12224 }
12225 Self::InvalidCommission(inner) => {
12226 <InvalidCommission as alloy_sol_types::SolError>::abi_encode_raw(
12227 inner,
12228 out,
12229 )
12230 }
12231 Self::InvalidG1(inner) => {
12232 <InvalidG1 as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
12233 }
12234 Self::InvalidInitialization(inner) => {
12235 <InvalidInitialization as alloy_sol_types::SolError>::abi_encode_raw(
12236 inner,
12237 out,
12238 )
12239 }
12240 Self::InvalidSchnorrVK(inner) => {
12241 <InvalidSchnorrVK as alloy_sol_types::SolError>::abi_encode_raw(
12242 inner,
12243 out,
12244 )
12245 }
12246 Self::NotInitializing(inner) => {
12247 <NotInitializing as alloy_sol_types::SolError>::abi_encode_raw(
12248 inner,
12249 out,
12250 )
12251 }
12252 Self::NothingToWithdraw(inner) => {
12253 <NothingToWithdraw as alloy_sol_types::SolError>::abi_encode_raw(
12254 inner,
12255 out,
12256 )
12257 }
12258 Self::OwnableInvalidOwner(inner) => {
12259 <OwnableInvalidOwner as alloy_sol_types::SolError>::abi_encode_raw(
12260 inner,
12261 out,
12262 )
12263 }
12264 Self::OwnableUnauthorizedAccount(inner) => {
12265 <OwnableUnauthorizedAccount as alloy_sol_types::SolError>::abi_encode_raw(
12266 inner,
12267 out,
12268 )
12269 }
12270 Self::OwnershipCannotBeRenounced(inner) => {
12271 <OwnershipCannotBeRenounced as alloy_sol_types::SolError>::abi_encode_raw(
12272 inner,
12273 out,
12274 )
12275 }
12276 Self::PowPrecompileFailed(inner) => {
12277 <PowPrecompileFailed as alloy_sol_types::SolError>::abi_encode_raw(
12278 inner,
12279 out,
12280 )
12281 }
12282 Self::PrematureWithdrawal(inner) => {
12283 <PrematureWithdrawal as alloy_sol_types::SolError>::abi_encode_raw(
12284 inner,
12285 out,
12286 )
12287 }
12288 Self::UUPSUnauthorizedCallContext(inner) => {
12289 <UUPSUnauthorizedCallContext as alloy_sol_types::SolError>::abi_encode_raw(
12290 inner,
12291 out,
12292 )
12293 }
12294 Self::UUPSUnsupportedProxiableUUID(inner) => {
12295 <UUPSUnsupportedProxiableUUID as alloy_sol_types::SolError>::abi_encode_raw(
12296 inner,
12297 out,
12298 )
12299 }
12300 Self::UndelegationAlreadyExists(inner) => {
12301 <UndelegationAlreadyExists as alloy_sol_types::SolError>::abi_encode_raw(
12302 inner,
12303 out,
12304 )
12305 }
12306 Self::ValidatorAlreadyExited(inner) => {
12307 <ValidatorAlreadyExited as alloy_sol_types::SolError>::abi_encode_raw(
12308 inner,
12309 out,
12310 )
12311 }
12312 Self::ValidatorAlreadyRegistered(inner) => {
12313 <ValidatorAlreadyRegistered as alloy_sol_types::SolError>::abi_encode_raw(
12314 inner,
12315 out,
12316 )
12317 }
12318 Self::ValidatorInactive(inner) => {
12319 <ValidatorInactive as alloy_sol_types::SolError>::abi_encode_raw(
12320 inner,
12321 out,
12322 )
12323 }
12324 Self::ValidatorNotExited(inner) => {
12325 <ValidatorNotExited as alloy_sol_types::SolError>::abi_encode_raw(
12326 inner,
12327 out,
12328 )
12329 }
12330 Self::ZeroAddress(inner) => {
12331 <ZeroAddress as alloy_sol_types::SolError>::abi_encode_raw(
12332 inner,
12333 out,
12334 )
12335 }
12336 Self::ZeroAmount(inner) => {
12337 <ZeroAmount as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
12338 }
12339 }
12340 }
12341 }
12342 #[derive(Clone)]
12344 #[derive(serde::Serialize, serde::Deserialize)]
12345 #[derive()]
12346 pub enum StakeTableEvents {
12347 #[allow(missing_docs)]
12348 ConsensusKeysUpdated(ConsensusKeysUpdated),
12349 #[allow(missing_docs)]
12350 Delegated(Delegated),
12351 #[allow(missing_docs)]
12352 Initialized(Initialized),
12353 #[allow(missing_docs)]
12354 OwnershipTransferred(OwnershipTransferred),
12355 #[allow(missing_docs)]
12356 Undelegated(Undelegated),
12357 #[allow(missing_docs)]
12358 Upgraded(Upgraded),
12359 #[allow(missing_docs)]
12360 ValidatorExit(ValidatorExit),
12361 #[allow(missing_docs)]
12362 ValidatorRegistered(ValidatorRegistered),
12363 #[allow(missing_docs)]
12364 Withdrawal(Withdrawal),
12365 }
12366 impl StakeTableEvents {
12367 pub const SELECTORS: &'static [[u8; 32usize]] = &[
12374 [
12375 77u8, 16u8, 189u8, 4u8, 151u8, 117u8, 199u8, 123u8, 215u8, 242u8, 85u8,
12376 25u8, 90u8, 251u8, 165u8, 8u8, 128u8, 40u8, 236u8, 179u8, 199u8, 194u8,
12377 119u8, 211u8, 147u8, 204u8, 255u8, 121u8, 52u8, 242u8, 249u8, 44u8,
12378 ],
12379 [
12380 127u8, 207u8, 83u8, 44u8, 21u8, 240u8, 166u8, 219u8, 11u8, 214u8, 208u8,
12381 224u8, 56u8, 190u8, 167u8, 29u8, 48u8, 216u8, 8u8, 199u8, 217u8, 140u8,
12382 179u8, 191u8, 114u8, 104u8, 169u8, 91u8, 245u8, 8u8, 27u8, 101u8,
12383 ],
12384 [
12385 128u8, 216u8, 164u8, 161u8, 102u8, 51u8, 40u8, 169u8, 152u8, 212u8, 85u8,
12386 91u8, 162u8, 29u8, 139u8, 186u8, 110u8, 241u8, 87u8, 106u8, 140u8, 94u8,
12387 157u8, 39u8, 249u8, 197u8, 69u8, 241u8, 163u8, 213u8, 43u8, 29u8,
12388 ],
12389 [
12390 139u8, 224u8, 7u8, 156u8, 83u8, 22u8, 89u8, 20u8, 19u8, 68u8, 205u8,
12391 31u8, 208u8, 164u8, 242u8, 132u8, 25u8, 73u8, 127u8, 151u8, 34u8, 163u8,
12392 218u8, 175u8, 227u8, 180u8, 24u8, 111u8, 107u8, 100u8, 87u8, 224u8,
12393 ],
12394 [
12395 188u8, 124u8, 215u8, 90u8, 32u8, 238u8, 39u8, 253u8, 154u8, 222u8, 186u8,
12396 179u8, 32u8, 65u8, 247u8, 85u8, 33u8, 77u8, 188u8, 107u8, 255u8, 169u8,
12397 12u8, 192u8, 34u8, 91u8, 57u8, 218u8, 46u8, 92u8, 45u8, 59u8,
12398 ],
12399 [
12400 199u8, 245u8, 5u8, 178u8, 243u8, 113u8, 174u8, 33u8, 117u8, 238u8, 73u8,
12401 19u8, 244u8, 73u8, 158u8, 31u8, 38u8, 51u8, 167u8, 181u8, 147u8, 99u8,
12402 33u8, 238u8, 209u8, 205u8, 174u8, 182u8, 17u8, 81u8, 129u8, 210u8,
12403 ],
12404 [
12405 229u8, 84u8, 26u8, 107u8, 97u8, 3u8, 212u8, 250u8, 126u8, 2u8, 30u8,
12406 213u8, 79u8, 173u8, 57u8, 198u8, 111u8, 39u8, 167u8, 107u8, 209u8, 61u8,
12407 55u8, 76u8, 246u8, 36u8, 10u8, 230u8, 189u8, 11u8, 183u8, 43u8,
12408 ],
12409 [
12410 246u8, 232u8, 53u8, 156u8, 87u8, 82u8, 11u8, 70u8, 150u8, 52u8, 115u8,
12411 107u8, 252u8, 59u8, 183u8, 236u8, 92u8, 189u8, 26u8, 11u8, 210u8, 139u8,
12412 16u8, 168u8, 39u8, 87u8, 147u8, 187u8, 115u8, 11u8, 121u8, 127u8,
12413 ],
12414 [
12415 251u8, 36u8, 48u8, 83u8, 84u8, 200u8, 119u8, 98u8, 213u8, 87u8, 72u8,
12416 122u8, 228u8, 165u8, 100u8, 232u8, 208u8, 62u8, 203u8, 185u8, 169u8,
12417 125u8, 216u8, 175u8, 255u8, 142u8, 31u8, 111u8, 202u8, 240u8, 221u8, 22u8,
12418 ],
12419 ];
12420 pub const VARIANT_NAMES: &'static [&'static str] = &[
12422 ::core::stringify!(Undelegated),
12423 ::core::stringify!(Withdrawal),
12424 ::core::stringify!(ConsensusKeysUpdated),
12425 ::core::stringify!(OwnershipTransferred),
12426 ::core::stringify!(Upgraded),
12427 ::core::stringify!(Initialized),
12428 ::core::stringify!(Delegated),
12429 ::core::stringify!(ValidatorRegistered),
12430 ::core::stringify!(ValidatorExit),
12431 ];
12432 pub const SIGNATURES: &'static [&'static str] = &[
12434 <Undelegated as alloy_sol_types::SolEvent>::SIGNATURE,
12435 <Withdrawal as alloy_sol_types::SolEvent>::SIGNATURE,
12436 <ConsensusKeysUpdated as alloy_sol_types::SolEvent>::SIGNATURE,
12437 <OwnershipTransferred as alloy_sol_types::SolEvent>::SIGNATURE,
12438 <Upgraded as alloy_sol_types::SolEvent>::SIGNATURE,
12439 <Initialized as alloy_sol_types::SolEvent>::SIGNATURE,
12440 <Delegated as alloy_sol_types::SolEvent>::SIGNATURE,
12441 <ValidatorRegistered as alloy_sol_types::SolEvent>::SIGNATURE,
12442 <ValidatorExit as alloy_sol_types::SolEvent>::SIGNATURE,
12443 ];
12444 #[inline]
12446 pub fn signature_by_selector(
12447 selector: [u8; 32usize],
12448 ) -> ::core::option::Option<&'static str> {
12449 match Self::SELECTORS.binary_search(&selector) {
12450 ::core::result::Result::Ok(idx) => {
12451 ::core::option::Option::Some(Self::SIGNATURES[idx])
12452 }
12453 ::core::result::Result::Err(_) => ::core::option::Option::None,
12454 }
12455 }
12456 #[inline]
12458 pub fn name_by_selector(
12459 selector: [u8; 32usize],
12460 ) -> ::core::option::Option<&'static str> {
12461 let sig = Self::signature_by_selector(selector)?;
12462 sig.split_once('(').map(|(name, _)| name)
12463 }
12464 }
12465 #[automatically_derived]
12466 impl alloy_sol_types::SolEventInterface for StakeTableEvents {
12467 const NAME: &'static str = "StakeTableEvents";
12468 const COUNT: usize = 9usize;
12469 fn decode_raw_log(
12470 topics: &[alloy_sol_types::Word],
12471 data: &[u8],
12472 ) -> alloy_sol_types::Result<Self> {
12473 match topics.first().copied() {
12474 Some(
12475 <ConsensusKeysUpdated as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
12476 ) => {
12477 <ConsensusKeysUpdated as alloy_sol_types::SolEvent>::decode_raw_log(
12478 topics,
12479 data,
12480 )
12481 .map(Self::ConsensusKeysUpdated)
12482 }
12483 Some(<Delegated as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
12484 <Delegated as alloy_sol_types::SolEvent>::decode_raw_log(
12485 topics,
12486 data,
12487 )
12488 .map(Self::Delegated)
12489 }
12490 Some(<Initialized as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
12491 <Initialized as alloy_sol_types::SolEvent>::decode_raw_log(
12492 topics,
12493 data,
12494 )
12495 .map(Self::Initialized)
12496 }
12497 Some(
12498 <OwnershipTransferred as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
12499 ) => {
12500 <OwnershipTransferred as alloy_sol_types::SolEvent>::decode_raw_log(
12501 topics,
12502 data,
12503 )
12504 .map(Self::OwnershipTransferred)
12505 }
12506 Some(<Undelegated as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
12507 <Undelegated as alloy_sol_types::SolEvent>::decode_raw_log(
12508 topics,
12509 data,
12510 )
12511 .map(Self::Undelegated)
12512 }
12513 Some(<Upgraded as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
12514 <Upgraded as alloy_sol_types::SolEvent>::decode_raw_log(topics, data)
12515 .map(Self::Upgraded)
12516 }
12517 Some(<ValidatorExit as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
12518 <ValidatorExit as alloy_sol_types::SolEvent>::decode_raw_log(
12519 topics,
12520 data,
12521 )
12522 .map(Self::ValidatorExit)
12523 }
12524 Some(
12525 <ValidatorRegistered as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
12526 ) => {
12527 <ValidatorRegistered as alloy_sol_types::SolEvent>::decode_raw_log(
12528 topics,
12529 data,
12530 )
12531 .map(Self::ValidatorRegistered)
12532 }
12533 Some(<Withdrawal as alloy_sol_types::SolEvent>::SIGNATURE_HASH) => {
12534 <Withdrawal as alloy_sol_types::SolEvent>::decode_raw_log(
12535 topics,
12536 data,
12537 )
12538 .map(Self::Withdrawal)
12539 }
12540 _ => {
12541 alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog {
12542 name: <Self as alloy_sol_types::SolEventInterface>::NAME,
12543 log: alloy_sol_types::private::Box::new(
12544 alloy_sol_types::private::LogData::new_unchecked(
12545 topics.to_vec(),
12546 data.to_vec().into(),
12547 ),
12548 ),
12549 })
12550 }
12551 }
12552 }
12553 }
12554 #[automatically_derived]
12555 impl alloy_sol_types::private::IntoLogData for StakeTableEvents {
12556 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
12557 match self {
12558 Self::ConsensusKeysUpdated(inner) => {
12559 alloy_sol_types::private::IntoLogData::to_log_data(inner)
12560 }
12561 Self::Delegated(inner) => {
12562 alloy_sol_types::private::IntoLogData::to_log_data(inner)
12563 }
12564 Self::Initialized(inner) => {
12565 alloy_sol_types::private::IntoLogData::to_log_data(inner)
12566 }
12567 Self::OwnershipTransferred(inner) => {
12568 alloy_sol_types::private::IntoLogData::to_log_data(inner)
12569 }
12570 Self::Undelegated(inner) => {
12571 alloy_sol_types::private::IntoLogData::to_log_data(inner)
12572 }
12573 Self::Upgraded(inner) => {
12574 alloy_sol_types::private::IntoLogData::to_log_data(inner)
12575 }
12576 Self::ValidatorExit(inner) => {
12577 alloy_sol_types::private::IntoLogData::to_log_data(inner)
12578 }
12579 Self::ValidatorRegistered(inner) => {
12580 alloy_sol_types::private::IntoLogData::to_log_data(inner)
12581 }
12582 Self::Withdrawal(inner) => {
12583 alloy_sol_types::private::IntoLogData::to_log_data(inner)
12584 }
12585 }
12586 }
12587 fn into_log_data(self) -> alloy_sol_types::private::LogData {
12588 match self {
12589 Self::ConsensusKeysUpdated(inner) => {
12590 alloy_sol_types::private::IntoLogData::into_log_data(inner)
12591 }
12592 Self::Delegated(inner) => {
12593 alloy_sol_types::private::IntoLogData::into_log_data(inner)
12594 }
12595 Self::Initialized(inner) => {
12596 alloy_sol_types::private::IntoLogData::into_log_data(inner)
12597 }
12598 Self::OwnershipTransferred(inner) => {
12599 alloy_sol_types::private::IntoLogData::into_log_data(inner)
12600 }
12601 Self::Undelegated(inner) => {
12602 alloy_sol_types::private::IntoLogData::into_log_data(inner)
12603 }
12604 Self::Upgraded(inner) => {
12605 alloy_sol_types::private::IntoLogData::into_log_data(inner)
12606 }
12607 Self::ValidatorExit(inner) => {
12608 alloy_sol_types::private::IntoLogData::into_log_data(inner)
12609 }
12610 Self::ValidatorRegistered(inner) => {
12611 alloy_sol_types::private::IntoLogData::into_log_data(inner)
12612 }
12613 Self::Withdrawal(inner) => {
12614 alloy_sol_types::private::IntoLogData::into_log_data(inner)
12615 }
12616 }
12617 }
12618 }
12619 use alloy::contract as alloy_contract;
12620 #[inline]
12624 pub const fn new<
12625 P: alloy_contract::private::Provider<N>,
12626 N: alloy_contract::private::Network,
12627 >(
12628 address: alloy_sol_types::private::Address,
12629 __provider: P,
12630 ) -> StakeTableInstance<P, N> {
12631 StakeTableInstance::<P, N>::new(address, __provider)
12632 }
12633 #[inline]
12639 pub fn deploy<
12640 P: alloy_contract::private::Provider<N>,
12641 N: alloy_contract::private::Network,
12642 >(
12643 __provider: P,
12644 ) -> impl ::core::future::Future<
12645 Output = alloy_contract::Result<StakeTableInstance<P, N>>,
12646 > {
12647 StakeTableInstance::<P, N>::deploy(__provider)
12648 }
12649 #[inline]
12655 pub fn deploy_builder<
12656 P: alloy_contract::private::Provider<N>,
12657 N: alloy_contract::private::Network,
12658 >(__provider: P) -> alloy_contract::RawCallBuilder<P, N> {
12659 StakeTableInstance::<P, N>::deploy_builder(__provider)
12660 }
12661 #[derive(Clone)]
12673 pub struct StakeTableInstance<P, N = alloy_contract::private::Ethereum> {
12674 address: alloy_sol_types::private::Address,
12675 provider: P,
12676 _network: ::core::marker::PhantomData<N>,
12677 }
12678 #[automatically_derived]
12679 impl<P, N> ::core::fmt::Debug for StakeTableInstance<P, N> {
12680 #[inline]
12681 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
12682 f.debug_tuple("StakeTableInstance").field(&self.address).finish()
12683 }
12684 }
12685 impl<
12687 P: alloy_contract::private::Provider<N>,
12688 N: alloy_contract::private::Network,
12689 > StakeTableInstance<P, N> {
12690 #[inline]
12694 pub const fn new(
12695 address: alloy_sol_types::private::Address,
12696 __provider: P,
12697 ) -> Self {
12698 Self {
12699 address,
12700 provider: __provider,
12701 _network: ::core::marker::PhantomData,
12702 }
12703 }
12704 #[inline]
12710 pub async fn deploy(
12711 __provider: P,
12712 ) -> alloy_contract::Result<StakeTableInstance<P, N>> {
12713 let call_builder = Self::deploy_builder(__provider);
12714 let contract_address = call_builder.deploy().await?;
12715 Ok(Self::new(contract_address, call_builder.provider))
12716 }
12717 #[inline]
12723 pub fn deploy_builder(__provider: P) -> alloy_contract::RawCallBuilder<P, N> {
12724 alloy_contract::RawCallBuilder::new_raw_deploy(
12725 __provider,
12726 ::core::clone::Clone::clone(&BYTECODE),
12727 )
12728 }
12729 #[inline]
12731 pub const fn address(&self) -> &alloy_sol_types::private::Address {
12732 &self.address
12733 }
12734 #[inline]
12736 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
12737 self.address = address;
12738 }
12739 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
12741 self.set_address(address);
12742 self
12743 }
12744 #[inline]
12746 pub const fn provider(&self) -> &P {
12747 &self.provider
12748 }
12749 }
12750 impl<P: ::core::clone::Clone, N> StakeTableInstance<&P, N> {
12751 #[inline]
12753 pub fn with_cloned_provider(self) -> StakeTableInstance<P, N> {
12754 StakeTableInstance {
12755 address: self.address,
12756 provider: ::core::clone::Clone::clone(&self.provider),
12757 _network: ::core::marker::PhantomData,
12758 }
12759 }
12760 }
12761 impl<
12763 P: alloy_contract::private::Provider<N>,
12764 N: alloy_contract::private::Network,
12765 > StakeTableInstance<P, N> {
12766 pub fn call_builder<C: alloy_sol_types::SolCall>(
12771 &self,
12772 call: &C,
12773 ) -> alloy_contract::SolCallBuilder<&P, C, N> {
12774 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
12775 }
12776 pub fn UPGRADE_INTERFACE_VERSION(
12778 &self,
12779 ) -> alloy_contract::SolCallBuilder<&P, UPGRADE_INTERFACE_VERSIONCall, N> {
12780 self.call_builder(&UPGRADE_INTERFACE_VERSIONCall)
12781 }
12782 pub fn _hashBlsKey(
12784 &self,
12785 blsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
12786 ) -> alloy_contract::SolCallBuilder<&P, _hashBlsKeyCall, N> {
12787 self.call_builder(&_hashBlsKeyCall { blsVK })
12788 }
12789 pub fn blsKeys(
12791 &self,
12792 blsKeyHash: alloy::sol_types::private::FixedBytes<32>,
12793 ) -> alloy_contract::SolCallBuilder<&P, blsKeysCall, N> {
12794 self.call_builder(&blsKeysCall { blsKeyHash })
12795 }
12796 pub fn claimValidatorExit(
12798 &self,
12799 validator: alloy::sol_types::private::Address,
12800 ) -> alloy_contract::SolCallBuilder<&P, claimValidatorExitCall, N> {
12801 self.call_builder(
12802 &claimValidatorExitCall {
12803 validator,
12804 },
12805 )
12806 }
12807 pub fn claimWithdrawal(
12809 &self,
12810 validator: alloy::sol_types::private::Address,
12811 ) -> alloy_contract::SolCallBuilder<&P, claimWithdrawalCall, N> {
12812 self.call_builder(&claimWithdrawalCall { validator })
12813 }
12814 pub fn delegate(
12816 &self,
12817 validator: alloy::sol_types::private::Address,
12818 amount: alloy::sol_types::private::primitives::aliases::U256,
12819 ) -> alloy_contract::SolCallBuilder<&P, delegateCall, N> {
12820 self.call_builder(&delegateCall { validator, amount })
12821 }
12822 pub fn delegations(
12824 &self,
12825 validator: alloy::sol_types::private::Address,
12826 delegator: alloy::sol_types::private::Address,
12827 ) -> alloy_contract::SolCallBuilder<&P, delegationsCall, N> {
12828 self.call_builder(
12829 &delegationsCall {
12830 validator,
12831 delegator,
12832 },
12833 )
12834 }
12835 pub fn deregisterValidator(
12837 &self,
12838 ) -> alloy_contract::SolCallBuilder<&P, deregisterValidatorCall, N> {
12839 self.call_builder(&deregisterValidatorCall)
12840 }
12841 pub fn exitEscrowPeriod(
12843 &self,
12844 ) -> alloy_contract::SolCallBuilder<&P, exitEscrowPeriodCall, N> {
12845 self.call_builder(&exitEscrowPeriodCall)
12846 }
12847 pub fn getVersion(
12849 &self,
12850 ) -> alloy_contract::SolCallBuilder<&P, getVersionCall, N> {
12851 self.call_builder(&getVersionCall)
12852 }
12853 pub fn initialize(
12855 &self,
12856 _tokenAddress: alloy::sol_types::private::Address,
12857 _lightClientAddress: alloy::sol_types::private::Address,
12858 _exitEscrowPeriod: alloy::sol_types::private::primitives::aliases::U256,
12859 _timelock: alloy::sol_types::private::Address,
12860 ) -> alloy_contract::SolCallBuilder<&P, initializeCall, N> {
12861 self.call_builder(
12862 &initializeCall {
12863 _tokenAddress,
12864 _lightClientAddress,
12865 _exitEscrowPeriod,
12866 _timelock,
12867 },
12868 )
12869 }
12870 pub fn initializedAtBlock(
12872 &self,
12873 ) -> alloy_contract::SolCallBuilder<&P, initializedAtBlockCall, N> {
12874 self.call_builder(&initializedAtBlockCall)
12875 }
12876 pub fn lightClient(
12878 &self,
12879 ) -> alloy_contract::SolCallBuilder<&P, lightClientCall, N> {
12880 self.call_builder(&lightClientCall)
12881 }
12882 pub fn owner(&self) -> alloy_contract::SolCallBuilder<&P, ownerCall, N> {
12884 self.call_builder(&ownerCall)
12885 }
12886 pub fn proxiableUUID(
12888 &self,
12889 ) -> alloy_contract::SolCallBuilder<&P, proxiableUUIDCall, N> {
12890 self.call_builder(&proxiableUUIDCall)
12891 }
12892 pub fn registerValidator(
12894 &self,
12895 blsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
12896 schnorrVK: <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
12897 blsSig: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
12898 commission: u16,
12899 ) -> alloy_contract::SolCallBuilder<&P, registerValidatorCall, N> {
12900 self.call_builder(
12901 ®isterValidatorCall {
12902 blsVK,
12903 schnorrVK,
12904 blsSig,
12905 commission,
12906 },
12907 )
12908 }
12909 pub fn renounceOwnership(
12911 &self,
12912 ) -> alloy_contract::SolCallBuilder<&P, renounceOwnershipCall, N> {
12913 self.call_builder(&renounceOwnershipCall)
12914 }
12915 pub fn token(&self) -> alloy_contract::SolCallBuilder<&P, tokenCall, N> {
12917 self.call_builder(&tokenCall)
12918 }
12919 pub fn transferOwnership(
12921 &self,
12922 newOwner: alloy::sol_types::private::Address,
12923 ) -> alloy_contract::SolCallBuilder<&P, transferOwnershipCall, N> {
12924 self.call_builder(&transferOwnershipCall { newOwner })
12925 }
12926 pub fn undelegate(
12928 &self,
12929 validator: alloy::sol_types::private::Address,
12930 amount: alloy::sol_types::private::primitives::aliases::U256,
12931 ) -> alloy_contract::SolCallBuilder<&P, undelegateCall, N> {
12932 self.call_builder(
12933 &undelegateCall {
12934 validator,
12935 amount,
12936 },
12937 )
12938 }
12939 pub fn undelegations(
12941 &self,
12942 validator: alloy::sol_types::private::Address,
12943 delegator: alloy::sol_types::private::Address,
12944 ) -> alloy_contract::SolCallBuilder<&P, undelegationsCall, N> {
12945 self.call_builder(
12946 &undelegationsCall {
12947 validator,
12948 delegator,
12949 },
12950 )
12951 }
12952 pub fn updateConsensusKeys(
12954 &self,
12955 newBlsVK: <BN254::G2Point as alloy::sol_types::SolType>::RustType,
12956 newSchnorrVK: <EdOnBN254::EdOnBN254Point as alloy::sol_types::SolType>::RustType,
12957 newBlsSig: <BN254::G1Point as alloy::sol_types::SolType>::RustType,
12958 ) -> alloy_contract::SolCallBuilder<&P, updateConsensusKeysCall, N> {
12959 self.call_builder(
12960 &updateConsensusKeysCall {
12961 newBlsVK,
12962 newSchnorrVK,
12963 newBlsSig,
12964 },
12965 )
12966 }
12967 pub fn upgradeToAndCall(
12969 &self,
12970 newImplementation: alloy::sol_types::private::Address,
12971 data: alloy::sol_types::private::Bytes,
12972 ) -> alloy_contract::SolCallBuilder<&P, upgradeToAndCallCall, N> {
12973 self.call_builder(
12974 &upgradeToAndCallCall {
12975 newImplementation,
12976 data,
12977 },
12978 )
12979 }
12980 pub fn validatorExits(
12982 &self,
12983 validator: alloy::sol_types::private::Address,
12984 ) -> alloy_contract::SolCallBuilder<&P, validatorExitsCall, N> {
12985 self.call_builder(&validatorExitsCall { validator })
12986 }
12987 pub fn validators(
12989 &self,
12990 account: alloy::sol_types::private::Address,
12991 ) -> alloy_contract::SolCallBuilder<&P, validatorsCall, N> {
12992 self.call_builder(&validatorsCall { account })
12993 }
12994 }
12995 impl<
12997 P: alloy_contract::private::Provider<N>,
12998 N: alloy_contract::private::Network,
12999 > StakeTableInstance<P, N> {
13000 pub fn event_filter<E: alloy_sol_types::SolEvent>(
13005 &self,
13006 ) -> alloy_contract::Event<&P, E, N> {
13007 alloy_contract::Event::new_sol(&self.provider, &self.address)
13008 }
13009 pub fn ConsensusKeysUpdated_filter(
13011 &self,
13012 ) -> alloy_contract::Event<&P, ConsensusKeysUpdated, N> {
13013 self.event_filter::<ConsensusKeysUpdated>()
13014 }
13015 pub fn Delegated_filter(&self) -> alloy_contract::Event<&P, Delegated, N> {
13017 self.event_filter::<Delegated>()
13018 }
13019 pub fn Initialized_filter(&self) -> alloy_contract::Event<&P, Initialized, N> {
13021 self.event_filter::<Initialized>()
13022 }
13023 pub fn OwnershipTransferred_filter(
13025 &self,
13026 ) -> alloy_contract::Event<&P, OwnershipTransferred, N> {
13027 self.event_filter::<OwnershipTransferred>()
13028 }
13029 pub fn Undelegated_filter(&self) -> alloy_contract::Event<&P, Undelegated, N> {
13031 self.event_filter::<Undelegated>()
13032 }
13033 pub fn Upgraded_filter(&self) -> alloy_contract::Event<&P, Upgraded, N> {
13035 self.event_filter::<Upgraded>()
13036 }
13037 pub fn ValidatorExit_filter(
13039 &self,
13040 ) -> alloy_contract::Event<&P, ValidatorExit, N> {
13041 self.event_filter::<ValidatorExit>()
13042 }
13043 pub fn ValidatorRegistered_filter(
13045 &self,
13046 ) -> alloy_contract::Event<&P, ValidatorRegistered, N> {
13047 self.event_filter::<ValidatorRegistered>()
13048 }
13049 pub fn Withdrawal_filter(&self) -> alloy_contract::Event<&P, Withdrawal, N> {
13051 self.event_filter::<Withdrawal>()
13052 }
13053 }
13054}